ถ้าฉันมี ACCESS_FINE_LOCATION อยู่แล้วฉันสามารถละ ACCESS_COARSE_LOCATION ได้หรือไม่


89

ฉันมีแอปพลิเคจีพีเอสที่มีอยู่แล้วขอACCESS_FINE_LOCATIONได้รับอนุญาตอย่างชัดแจ้งในตอนนี้ฉันต้องการเพิ่มห้องสมุด (MoPub) ACCESS_COARSE_LOCATIONที่ต้องใช้

ฉันถูกต้องหรือไม่โดยถือว่าACCESS_FINE_LOCATIONเพียงพอแล้วและฉันสามารถละทิ้งACCESS_COARSE_LOCATIONรายการของฉันได้หรือไม่?

คำตอบ:


155

https://developer.android.com/guide/topics/location/strategies.html#Permission

หมายเหตุ: หากคุณใช้ทั้ง NETWORK_PROVIDER และ GPS_PROVIDER คุณจะต้องขอสิทธิ์ ACCESS_FINE_LOCATION เท่านั้นเนื่องจากมีการอนุญาตสำหรับผู้ให้บริการทั้งสองราย (สิทธิ์สำหรับ ACCESS_COARSE_LOCATION รวมถึงสิทธิ์สำหรับ NETWORK_PROVIDER เท่านั้น)

ในระยะสั้น: ใช่คุณไม่จำเป็นถ้าคุณได้กำหนดไว้แล้วACCESS_COARSE_LOCATIONACCESS_FINE_LOCATION


13
+1 แต่น่าแปลกที่ Google Maps doc แนะนำให้ใช้ทั้งสองอย่าง: developers.google.com/maps/documentation/android/…
alex

3
บางทีสำหรับโทรศัพท์ที่มีความสามารถของเครือข่าย แต่ไม่มี GPS?
Nicklas อ.

2
@NicklasA. ตามเหตุผลแล้วนั่นไม่ควรส่งผลต่อความจริงที่ว่า "ดี" รวมถึง "หยาบ" - ผู้ให้บริการที่ขาดหายไปก็จะหายไป นอกจากนี้หากจำเป็นสำหรับกรณีนั้นฉันคาดหวังว่า Google เอกสารจะพูดเช่นนั้น
ToolmakerSteve

10
อัปเดตเกี่ยวกับความคิดเห็นของ @ alex: ขณะนี้ Google Maps ระบุอย่างชัดเจนว่าคุณต้องขออนุญาตเพียงครั้งเดียว Developers.google.com/maps/documentation/android-api/location
Klox

17

ขึ้นอยู่กับความต้องการของคุณ

การอนุญาตฉลาดรวมถึงACCESS_FINE_LOCATION ACCESS_COARSE_LOCATIONอย่างไรก็ตามมีสิ่งที่จับได้:

ACCESS_COARSE_LOCATIONช่วยให้คุณทราบตำแหน่งล่าสุดซึ่งเป็นมิตรกับแบตเตอรี่ https://developer.android.com/training/location/retrieve-current.html#setup
ตัวอย่างเช่นหากแอปของคุณทำบางอย่างเช่นคำแนะนำตามตำแหน่งตำแหน่งที่ทราบล่าสุดคือ ดีพอแล้ว.
สิ่งนี้ขึ้นอยู่กับบริการ Google Play

อย่างไรก็ตามหากคุณต้องการบางสิ่งบางอย่างเช่นตำแหน่งสด / เรียลไทม์เช่น Pokemon Go ให้ใช้ACCESS_FINE_LOCATION
มันให้ตำแหน่งสด / เรียลไทม์ คุณจะต้องใช้LocationListener
ครั้งสุดท้ายที่ฉันตรวจสอบซึ่งไม่จำเป็นต้องใช้บริการ Google Play


การอนุญาตนี้จะเป็นประโยชน์สำหรับการสแกน Bluetooth LE หรือไม่
IgorGanapolsky

@ericn คุณสามารถช่วยฉันเกี่ยวกับปัญหาสถานที่ได้หรือไม่ stackoverflow.com/questions/63917764/…ฉันมีพฤติกรรมแปลก ๆ มากเมื่อฟังประโยค NMEA
Viktor Apoyan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.