调试时不会在Android Studio中捕获异常

时间:2018-10-24 07:59:38

标签: android android-studio

我已经将在Eclipse上开发的项目导入了Android Studio。 从我的设备上的Eclipse运行\调试该项目时,该项目可以正常运行。

从我的设备上的Android Studio调试时,应用程序崩溃,并且在Android Studio上未捕获任何异常。

当我放置断点时,它们工作正常,所以我知道我正在调试正确的代码:)

编辑:

我再次运行它,并在logcat中收到以下异常(调试器是否应该在代码中某处停止显示异常?就像在尝试访问文件的行中一样?):

2018-10-24 11:25:26.027 25903-25903/? E/libpersona: Couldn't open the File - /data/system/users/0/personalist.xml - No such file or directory
2018-10-24 11:25:31.735 23290-23301/? E/DatabaseUtils: Writing exception to parcel
    java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/images/media from pid=25858, uid=10314 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
        at android.content.ContentProvider.enforceReadPermissionInner(ContentProvider.java:639)
        at android.content.ContentProvider$Transport.enforceReadPermission(ContentProvider.java:505)
        at android.content.ContentProvider$Transport.query(ContentProvider.java:217)
        at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:102)
        at android.os.Binder.execTransact(Binder.java:682)

尽管我确实在AndroidMenifest.xml中设置了权限:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.eibimalul.smartgallery"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_SOCIAL_STREAM"/>
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

编辑2:解决方案:

显然,我错过了两件事:

    我知道使用此链接here并在@Pier Giorgio Misley的评论的帮助下理解的
  1. 运行时权限
  2. 我缺少对AndroidManifest.xml的权限:

    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    

1 个答案:

答案 0 :(得分:0)

解决方案:

显然我错过了两件事:

    我使用此链接here了解了
  1. 运行时权限,并且 @Pier Giorgio Misley的评论的帮助下
  2. 我缺少对AndroidManifest.xml的权限:

    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    

我不确定这是否是正确的方法(回答我自己的问题),因为我仅在评论中得到了少数开发商(尤其是@Pier Giorgio Misley)的帮助,但我认为这是正确的重要的是将问题标记为已回答。