ตั้งแต่วันที่ 27 มีนาคม 2025 เป็นต้นไป เราขอแนะนำให้ใช้ android-latest-release
แทน aosp-main
เพื่อสร้างและมีส่วนร่วมใน AOSP โปรดดูข้อมูลเพิ่มเติมที่หัวข้อการเปลี่ยนแปลงใน AOSP
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
การอ้างอิง Struct GpsGeofencingInterface
#include <
gps.h
>
อินเทอร์เฟซแบบขยายสำหรับการรองรับ GPS_Geofencing
คําจํากัดความที่บรรทัด
1361
ของไฟล์
gps.h
.
void(* add_geofence_area)(int32_t geofence_id, double latitude, double longitude, double radius_meters, int last_transition, int monitor_transitions, int notification_responsiveness_ms, int unknown_timer_ms)
|
เพิ่มพื้นที่เขตพื้นที่เสมือน ปัจจุบัน API นี้รองรับการกำหนดเขตพื้นที่เสมือนแบบวงกลม พารามิเตอร์: geofence_id - รหัสของเขตพื้นที่เสมือน หากมีการกำหนดเขตพื้นที่เสมือนที่มีรหัสนี้แล้ว ระบบจะแสดงค่าข้อผิดพลาด (GPS_GEOFENCE_ERROR_ID_EXISTS) latitude, longtitude, radius_meters - ละติจูด ลองจิจูด และรัศมี (เป็นเมตร) ของเขตพื้นที่เสมือน last_transition - สถานะปัจจุบันของเขตพื้นที่เสมือน ตัวอย่างเช่น หากระบบทราบว่าผู้ใช้อยู่ภายในเขตพื้นที่เสมือนอยู่แล้ว ระบบจะตั้งค่าเป็น GPS_GEOFENCE_ENTERED ในกรณีส่วนใหญ่จะเป็น GPS_GEOFENCE_UNCERTAIN monitor_transition - การเปลี่ยนสถานะที่จะตรวจสอบ OR แบบบิตของ GPS_GEOFENCE_ENTERED, GPS_GEOFENCE_EXITED และ GPS_GEOFENCE_UNCERTAIN notification_responsiveness_ms - กําหนดคําอธิบายแบบพยายามอย่างเต็มที่เกี่ยวกับความรวดเร็วที่ควรเรียกใช้การเรียกกลับเมื่อทริกเกอร์การเปลี่ยนสถานะที่เชื่อมโยงกับ
เขตพื้นที่เสมือน (Geofence)
เช่น หากตั้งค่าเป็น 1, 000 มิลลิวินาทีด้วย GPS_GEOFENCE_ENTERED ระบบจะเรียกใช้การเรียกกลับ 1, 000 มิลลิวินาทีภายในการเข้าสู่เขตพื้นที่เสมือน พารามิเตอร์นี้กำหนดเป็นมิลลิวินาที หมายเหตุ: อย่าสับสนกับอัตราที่ระบบโพล GPS คุณสามารถเปลี่ยนแปลงอัตราการสุ่มตัวอย่าง GPS แบบไดนามิกเพื่อประหยัดพลังงานได้ ดังนั้นอัตราการสุ่มตัวอย่างจึงอาจเร็วหรือช้ากว่านี้ unknown_timer_ms - ขีดจํากัดเวลาหลังจากที่ควรทริกเกอร์การเปลี่ยนสถานะเป็น UNCERTAIN พารามิเตอร์นี้กำหนดเป็นมิลลิวินาที โปรดดูคำอธิบายโดยละเอียดด้านบน
คําจํากัดความที่บรรทัด
1400
ของไฟล์
gps.h
.
เปิดอินเทอร์เฟซเขตพื้นที่เสมือนและระบุกิจวัตรการเรียกกลับเพื่อการติดตั้งใช้งานอินเทอร์เฟซนี้
คําจํากัดความที่บรรทัด
1369
ของไฟล์
gps.h
.
void(* pause_geofence)(int32_t geofence_id)
|
หยุดตรวจสอบเขตพื้นที่เสมือนที่เฉพาะเจาะจงชั่วคราว พารามิเตอร์: geofence_id - รหัสของเขตพื้นที่เสมือน
คําจํากัดความที่บรรทัด
1409
ของไฟล์
gps.h
.
void(* remove_geofence_area)(int32_t geofence_id)
|
นำพื้นที่เขตพื้นที่เสมือนออก หลังจากฟังก์ชันแสดงผลแล้ว ระบบจะไม่ส่งการแจ้งเตือน พารามิเตอร์: geofence_id - รหัสของเขตพื้นที่เสมือน
คําจํากัดความที่บรรทัด
1429
ของไฟล์
gps.h
.
void(* resume_geofence)(int32_t geofence_id, int monitor_transitions)
|
ตรวจสอบเขตพื้นที่เสมือนที่เฉพาะเจาะจงต่อ พารามิเตอร์: geofence_id - รหัสของเขตพื้นที่เสมือน monitor_transitions - การเปลี่ยนสถานะที่จะตรวจสอบ OR แบบบิตไวส์ของ GPS_GEOFENCE_ENTERED, GPS_GEOFENCE_EXITED และ GPS_GEOFENCE_UNCERTAIN ค่านี้จะลบล้างค่าที่เชื่อมโยงซึ่งระบุไว้ในการเรียก add_geofence_area
คําจํากัดความที่บรรทัด
1421
ของไฟล์
gps.h
.
ตั้งค่าเป็น sizeof(GpsGeofencingInterface)
คําจํากัดความที่บรรทัด
1363
ของไฟล์
gps.h
.
เอกสารประกอบสำหรับโครงสร้างนี้สร้างขึ้นจากไฟล์ต่อไปนี้
-
hardware/libhardware/include/hardware/
gps.h
ตัวอย่างเนื้อหาและโค้ดในหน้าเว็บนี้ขึ้นอยู่กับใบอนุญาตที่อธิบายไว้ในใบอนุญาตการใช้เนื้อหา Java และ OpenJDK เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2025-07-27 UTC
[[["เข้าใจง่าย","easyToUnderstand","thumb-up"],["แก้ปัญหาของฉันได้","solvedMyProblem","thumb-up"],["อื่นๆ","otherUp","thumb-up"]],[["ไม่มีข้อมูลที่ฉันต้องการ","missingTheInformationINeed","thumb-down"],["ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป","tooComplicatedTooManySteps","thumb-down"],["ล้าสมัย","outOfDate","thumb-down"],["ปัญหาเกี่ยวกับการแปล","translationIssue","thumb-down"],["ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด","samplesCodeIssue","thumb-down"],["อื่นๆ","otherDown","thumb-down"]],["อัปเดตล่าสุด 2025-07-27 UTC"],[],[],null,["# Android Hardware Abstraction Layer: GpsGeofencingInterface Struct Reference\n\nGpsGeofencingInterface Struct Reference\n=======================================\n\n[Data Fields](#pub-attribs) \nGpsGeofencingInterface Struct Reference \n\n`\n#include \u003c\n`[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)`\n\u003e\n`\n\n|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Data Fields ----------- ||\n| size_t | [size](/reference/hal/struct_gps_geofencing_interface#a854352f53b148adc24983a58a1866d66) |\n| ||\n| void(\\* | [init](/reference/hal/struct_gps_geofencing_interface#a4504d0e82b1d377fa32d56ec5004774f) )( [GpsGeofenceCallbacks](/reference/hal/struct_gps_geofence_callbacks) \\*callbacks) |\n| ||\n| void(\\* | [add_geofence_area](/reference/hal/struct_gps_geofencing_interface#add2c5bdb0d1496ac9ee6a2460fb12a08) )(int32_t geofence_id, double latitude, double longitude, double radius_meters, int last_transition, int monitor_transitions, int notification_responsiveness_ms, int unknown_timer_ms) |\n| ||\n| void(\\* | [pause_geofence](/reference/hal/struct_gps_geofencing_interface#a850b900b8eabf9328ec853978936ed4f) )(int32_t geofence_id) |\n| ||\n| void(\\* | [resume_geofence](/reference/hal/struct_gps_geofencing_interface#af409f9b64a5b9b42a5417ae381fabc88) )(int32_t geofence_id, int monitor_transitions) |\n| ||\n| void(\\* | [remove_geofence_area](/reference/hal/struct_gps_geofencing_interface#a4cff265eb49bb5d94d9be5a4c55ceea7) )(int32_t geofence_id) |\n| ||\n\n\nDetailed Description\n--------------------\n\n\nExtended interface for GPS_Geofencing support\n\n\nDefinition at line\n[1361](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\nof file\n[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\n.\n\nField Documentation\n-------------------\n\n\n|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| void(\\* add_geofence_area)(int32_t geofence_id, double latitude, double longitude, double radius_meters, int last_transition, int monitor_transitions, int notification_responsiveness_ms, int unknown_timer_ms) |\n\n\nAdd a geofence area. This api currently supports circular geofences. Parameters: geofence_id - The id for the geofence. If a geofence with this id already exists, an error value (GPS_GEOFENCE_ERROR_ID_EXISTS) should be returned. latitude, longtitude, radius_meters - The lat, long and radius (in meters) for the geofence last_transition - The current state of the geofence. For example, if the system already knows that the user is inside the geofence, this will be set to GPS_GEOFENCE_ENTERED. In most cases, it will be GPS_GEOFENCE_UNCERTAIN. monitor_transition - Which transitions to monitor. Bitwise OR of GPS_GEOFENCE_ENTERED, GPS_GEOFENCE_EXITED and GPS_GEOFENCE_UNCERTAIN. notification_responsiveness_ms - Defines the best-effort description of how soon should the callback be called when the transition associated with the\n[Geofence](/reference/hal/struct_geofence)\nis triggered. For instance, if set to 1000 millseconds with GPS_GEOFENCE_ENTERED, the callback should be called 1000 milliseconds within entering the geofence. This parameter is defined in milliseconds. NOTE: This is not to be confused with the rate that the GPS is polled at. It is acceptable to dynamically vary the rate of sampling the GPS for power-saving reasons; thus the rate of sampling may be faster or slower than this. unknown_timer_ms - The time limit after which the UNCERTAIN transition should be triggered. This parameter is defined in milliseconds. See above for a detailed explanation.\n\n\nDefinition at line\n[1400](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\nof file\n[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\n.\n\n|--------------------------------------------------------------------------------------------------|\n| void(\\* init)( [GpsGeofenceCallbacks](/reference/hal/struct_gps_geofence_callbacks) \\*callbacks) |\n\n\nOpens the geofence interface and provides the callback routines to the implementation of this interface.\n\n\nDefinition at line\n[1369](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\nof file\n[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\n.\n\n|----------------------------------------------|\n| void(\\* pause_geofence)(int32_t geofence_id) |\n\n\nPause monitoring a particular geofence. Parameters: geofence_id - The id for the geofence.\n\n\nDefinition at line\n[1409](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\nof file\n[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\n.\n\n|----------------------------------------------------|\n| void(\\* remove_geofence_area)(int32_t geofence_id) |\n\n\nRemove a geofence area. After the function returns, no notifications should be sent. Parameter: geofence_id - The id for the geofence.\n\n\nDefinition at line\n[1429](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\nof file\n[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\n.\n\n|------------------------------------------------------------------------|\n| void(\\* resume_geofence)(int32_t geofence_id, int monitor_transitions) |\n\n\nResume monitoring a particular geofence. Parameters: geofence_id - The id for the geofence. monitor_transitions - Which transitions to monitor. Bitwise OR of GPS_GEOFENCE_ENTERED, GPS_GEOFENCE_EXITED and GPS_GEOFENCE_UNCERTAIN. This supersedes the value associated provided in the add_geofence_area call.\n\n\nDefinition at line\n[1421](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\nof file\n[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\n.\n\n|-------------|\n| size_t size |\n\n\nset to sizeof(GpsGeofencingInterface)\n\n\nDefinition at line\n[1363](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\nof file\n[gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)\n.\n\n*** ** * ** ***\n\nThe documentation for this struct was generated from the following file:\n\n- hardware/libhardware/include/hardware/ [gps.h](https://android.googlesource.com/platform/hardware/libhardware/+/master/include/hardware/gps.h)"]]