2017-07-28 60 views
0

我有一个android应用程序,通过android studio部署时工作完美,但是当我从输出文件夹(app \ build \ outputs \ apk)复制生成的apk并安装它时在同一部手机上,应用程序在加载时崩溃。从android工作室运行的Android应用程序,但未安装应用程序

即使是安装时的OS说,应用程序不需要任何特殊权限,即使我在清单文件中有这些:

<uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
<uses-permission android:name="android.permission.READ_PROFILE" /> 
<uses-permission android:name="android.permission.READ_CONTACTS" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.WAKE_LOCK" /> 
<uses-permission android:name="android.permission.VIBRATE" /> 
+1

“的应用程序崩溃了上载” - 使用logcat的检查与碰撞相关的Java堆栈跟踪:https://stackoverflow.com/questions/23353173/unfortunately-myapp-has-stopped-how -can-i-solve-this – CommonsWare

+0

从应用程序\ build \ outputs \ apk,转到构建>构建APK然后尝试在设备上安装 –

+0

从apk中获取运行时权限是否包含其中一些?我知道你至少需要'READ_CONTACTS'的运行时权限 – cjnash

回答

1

你需要明确要求用户提供权限访问的位置和联系人。这是添加到棒棒糖/棉花糖的更新。你可能不得不这样做。

@Override 
    public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, 
              @NonNull int[] grantResults) { 
     if (requestCode == PERMISSIONS_REQUEST_CODE_ACCESS_COARSE_LOCATION 
       && grantResults[0] == PackageManager.PERMISSION_GRANTED) { 
      // The user has granted permission to access location 
     } else { 
      // The user has not granted permission(notify the user that certain features will not work for the app if the permission is not granted) 
     } 
    } 
+0

你能解释更多,请举例如果你可以 –

+0

@HananShouman我已更新我的回答 –

+0

感谢您的努力,但在我的情况下,我需要从Build> Build APK构建应用程序... –