Reputation: 11326
this isn't really a big problem. I've got an Android App that stores user's passwords on a SQLite Database. So last week I launched an update that allows the user to export those passwords to their Google Drive. To do this, I've used the Google Drive Android API. I didn't add any special permission to the Application Manifest (AndroidManifest.xml) and it works fine (tested on KitKat4.4). But one of my friends told me that it might not work on Android 6.0+, because I should always ask for permissions. But I checked some samples and none of them had those permissions on the Manifest. Do you guys think it's necessary to add permissions? Perhaps INTERNET or GET_ACCOUNTS?
Upvotes: 4
Views: 3990
Reputation: 21
According to the Google Maps API documentation, INTERNET
and ACCESS_NETWORK_STATE
permissions will be automatically merged to project's manifest, meaning you don't have to specify them by yourself as long as calling API over Google Play services.
Couldn't find the same description for Google Drive API, though.
Upvotes: 0
Reputation: 170
If you are using the Google Drive Android API you don't need INTERNET
or GET_ACCOUNTS
permissions.
The API automatically handles previously complex tasks such as offline access and syncing files. This allows you to read and write files as if Drive were a local file system.
Check the official Quickstart and the demos sample on GitHub. None of them is having special permissions in the AndroidManifest.xml.
BUT if you are using the Google Drive REST API for Android then you need INTERNET
permission for sure.
Upvotes: 4
Reputation: 7751
If you follow the tutorials on Drive API using Android, you will see in the Step 4:Prepare the project that you need to add the permissions below in your code.
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
The permission "android.permission.INTERNET"
is used if you want your application to connect/perform network operation.
For the "android.permission.GET_ACCOUNTS"
, it's stated in this documentation that:
Note: Beginning with Android 6.0 (API level 23), if an app shares the signature of the authenticator that manages an account, it does not need
"GET_ACCOUNTS"
permission to read information about that account. On Android 5.1 and lower, all apps need"GET_ACCOUNTS"
permission to read information about any account.
For more information about different meaning/uses of android permission, check this page.
Upvotes: 0