在 Android 應用程式中使用位置相關功能時,請求使用者存取其裝置位置的權限至關重要。本文將引導您完成請求所需權限的必要步驟:
在AndroidManifest.xml 檔案中,聲明以下權限:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
在您的Activity 或Fragment中,在運行時請求權限。您可以透過呼叫 requestPermissions 方法來完成此操作:
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, MY_PERMISSIONS_REQUEST_LOCATION);
將“MY_PERMISSIONS_REQUEST_LOCATION”替換為唯一的請求代碼。
覆蓋onRequestPermissionsResult處理權限結果的方法請求:
@Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { switch (requestCode) { case MY_PERMISSIONS_REQUEST_LOCATION: { if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) { // Permission granted. // Proceed with your location-based tasks. } else { // Permission denied. // Handle the lack of permission. } break; } } }
取得權限後,您可以使用對應的位置API來存取設備的位置資訊。
如果遇到問題,請檢查以下:
附加說明:
以上是如何在Android運行時請求位置權限?的詳細內容。更多資訊請關注PHP中文網其他相關文章!