Please provide the following:
- SDK Version: 45
- Platforms(Android/iOS/web/all): Android
- Add the appropriate “Tag” based on what Expo library you have a question on.
I have an issue with my app, upon building an apk, I see "android.permission.ACCESS_BACKGROUND_LOCATION" upon running aapt2 d permissions 'path_to_apk'
My app doesn’t need user’s location
Upon reading couple of articles, I have added the permission to blockedPermissions in app.json
"blockedPermissions": ["ACCESS_BACKGROUND_LOCATION", "android.permission.ACCESS_BACKGROUND_LOCATION"]
Below is my package.json
{
"name": "My-App",
"version": "1.2.0",
"main": "index.js",
"scripts": {
"start": "expo start --dev-client",
"android": "expo run:android",
"ios": "expo run:ios",
"web": "expo start --web"
},
"dependencies": {
"@expo/vector-icons": "^13.0.0",
"@fortawesome/fontawesome-svg-core": "^6.1.1",
"@fortawesome/free-brands-svg-icons": "^6.1.1",
"@fortawesome/free-regular-svg-icons": "^6.1.1",
"@fortawesome/free-solid-svg-icons": "^6.1.1",
"@fortawesome/react-fontawesome": "^0.1.18",
"@react-native-async-storage/async-storage": "~1.17.3",
"@react-navigation/material-top-tabs": "^6.2.1",
"@react-navigation/native": "^6.0.10",
"@react-navigation/stack": "^6.2.1",
"directory": "^0.1.0",
"expo": "^45.0.5",
"expo-ads-admob": "~13.0.0",
"expo-asset": "^8.4.6",
"expo-checkbox": "~2.1.0",
"expo-clipboard": "3.0.1",
"expo-file-system": "~14.0.0",
"expo-splash-screen": "~0.15.1",
"expo-status-bar": "~1.3.0",
"react": "17.0.2",
"react-dom": "17.0.2",
"react-native": "0.68.2",
"react-native-gesture-handler": "~2.2.1",
"react-native-pager-view": "5.4.15",
"react-native-reanimated": "~2.8.0",
"react-native-safe-area-context": "4.2.4",
"react-native-safe-area-view": "^1.1.1",
"react-native-screens": "~3.11.1",
"react-redux": "^7.2.6",
"redux": "^4.1.2",
"redux-thunk": "^2.4.1"
},
"devDependencies": {
"@babel/core": "^7.12.9",
"prettier": "2.6.2"
},
"private": true
}
Below is appt2 output
permission: com.msholodev.my_app.permission.C2D_MESSAGE
uses-permission: name='com.msholodev.my_app.permission.C2D_MESSAGE'
uses-permission: name='com.google.android.c2dm.permission.RECEIVE'
uses-permission: name='android.permission.ACCESS_NETWORK_STATE'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.SYSTEM_ALERT_WINDOW'
uses-permission: name='android.permission.WAKE_LOCK'
uses-permission: name='android.permission.MANAGE_DOCUMENTS'
uses-permission: name='android.permission.READ_INTERNAL_STORAGE'
uses-permission: name='android.permission.READ_PHONE_STATE'
uses-permission: name='android.permission.USE_FINGERPRINT'
uses-permission: name='android.permission.VIBRATE'
uses-permission: name='com.android.launcher.permission.INSTALL_SHORTCUT'
uses-permission: name='android.permission.MODIFY_AUDIO_SETTINGS'
uses-permission: name='android.permission.HIGH_SAMPLING_RATE_SENSORS'
uses-permission: name='android.permission.SCHEDULE_EXACT_ALARM'
uses-permission: name='android.permission.ACCESS_COARSE_LOCATION'
uses-permission: name='android.permission.ACCESS_FINE_LOCATION'
uses-permission: name='android.permission.CAMERA'
uses-permission: name='android.permission.READ_CONTACTS'
uses-permission: name='android.permission.READ_CALENDAR'
uses-permission: name='android.permission.WRITE_CALENDAR'
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'
uses-permission: name='android.permission.RECORD_AUDIO'
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission: name='android.permission.WRITE_SETTINGS'
uses-permission: name='host.exp.exponent.permission.C2D_MESSAGE'
uses-permission: name='android.permission.ACCESS_WIFI_STATE'
uses-permission: name='android.permission.ACCESS_BACKGROUND_LOCATION'
uses-permission: name='android.permission.ACCESS_MEDIA_LOCATION'
uses-permission: name='android.permission.RECEIVE_BOOT_COMPLETED'
uses-permission: name='android.permission.USE_BIOMETRIC'
uses-permission: name='android.permission.FOREGROUND_SERVICE'
uses-permission: name='com.sec.android.provider.badge.permission.READ'
uses-permission: name='com.sec.android.provider.badge.permission.WRITE'
uses-permission: name='com.htc.launcher.permission.READ_SETTINGS'
uses-permission: name='com.htc.launcher.permission.UPDATE_SHORTCUT'
uses-permission: name='com.sonyericsson.home.permission.BROADCAST_BADGE'
uses-permission: name='com.sonymobile.home.permission.PROVIDER_INSERT_BADGE'
uses-permission: name='com.anddoes.launcher.permission.UPDATE_COUNT'
uses-permission: name='com.majeur.launcher.permission.UPDATE_BADGE'
uses-permission: name='com.huawei.android.launcher.permission.CHANGE_BADGE'
uses-permission: name='com.huawei.android.launcher.permission.READ_SETTINGS'
uses-permission: name='com.huawei.android.launcher.permission.WRITE_SETTINGS'
uses-permission: name='android.permission.READ_APP_BADGE'
uses-permission: name='com.oppo.launcher.permission.READ_SETTINGS'
uses-permission: name='com.oppo.launcher.permission.WRITE_SETTINGS'
uses-permission: name='me.everything.badger.permission.BADGE_COUNT_READ'
uses-permission: name='me.everything.badger.permission.BADGE_COUNT_WRITE'
uses-permission: name='com.google.android.providers.gsf.permission.READ_GSERVICES'
uses-permission: name='com.google.android.gms.permission.ACTIVITY_RECOGNITION'
uses-permission: name='com.google.android.gms.permission.AD_ID'
uses-permission: name='com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE'
app.json file:
{
"expo": {
"name": "My App",
"slug": "My App",
"version": "1.2.0",
"icon":"./assets/ic_launcher.png",
"assetBundlePatterns": [
"**/*"
],
"splash": {
"image": "./assets/splash-final.png"
},
"android": {
"package": "com.msholodev.myapp",
"adaptiveIcon": {
"foregroundImage": "./assets/ic_launcher.png",
"backgroundColor": "#FFFFFF"
},
"versionCode": 1,
"config": {
"googleMobileAdsAppId": "ca-app-pub-xx-xx"
},
"blockedPermissions": ["ACCESS_BACKGROUND_LOCATION", "android.permission.ACCESS_BACKGROUND_LOCATION"]
}
}
}
I was looking at my build.gradle file and noticed this, just curious if these versions have something to do with permissions
buildscript {
ext {
buildToolsVersion = "29.0.3"
minSdkVersion = 21
compileSdkVersion = 30
targetSdkVersion = 30
}