java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.test1/com.example.test1.InboxActivity}: java.lang.SecurityException: Permission Denial: opening provider com.android.providers.contacts.ContactsProvider2 from ProcessRecord{9d7cdbd 18018:com.example.test1/u0a133} (pid=18018, uid=10133) requires android.permission.READ_CONTACTS or android.permission.WRITE_CONTACTS
时间: 2023-12-19 21:04:27 浏览: 156
这个错误是因为你的应用程序没有被授予读取或写入联系人的权限。你需要在你的AndroidManifest.xml文件中添加以下代码:
```
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
```
这将请求用户授予你的应用程序读取和写入联系人的权限。确保在运行时请求这些权限,以便在用户同意之前不会访问联系人。同时,你需要确保在代码中请求这些权限,可以使用以下代码:
```
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_CONTACTS, Manifest.permission.WRITE_CONTACTS}, 0);
```
这将请求用户授予你的应用程序读取和写入联系人的权限。在用户同意之前,你的应用程序将无法访问联系人。
相关问题
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.androideight/com.example.androideight.MainActivity}: java.lang.RuntimeException: java.io.IOException: Cleartext HTTP traffic to localhost not permitted
这个错误是因为在Android 9 (API level 28)及以上版本中,默认禁止应用程序通过明文HTTP协议访问网络。如果您尝试通过HTTP访问网络,就会收到这样的错误。
为了解决这个问题,有两种方法:
1. 使用加密的HTTPS协议进行网络通信,这是安全的方式,也是推荐的方式。您可以在服务器上启用HTTPS,并在Android应用程序中使用HTTPS协议来访问它。您可以使用OkHttp等库来实现HTTPS协议的访问。
2. 如果您仍然想使用HTTP协议进行网络通信,可以在AndroidManifest.xml文件中添加一个`usesCleartextTraffic`标记来允许明文HTTP流量。例如:
```xml
<application
...
android:usesCleartextTraffic="true">
...
</application>
```
这个标记会允许您的应用程序在Android 9及以上版本中使用明文HTTP协议进行网络通信。但是请注意,这并不是推荐的方式,因为明文HTTP通信是不安全的,可能会泄漏敏感信息。如果您使用此方法,请确保您的应用程序只使用受信任的网络,并且不要从网络上获取任何敏感信息。
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.bigwork/com.example.bigwork.good}: java.lang.RuntimeException: com.example.bigwork.good@6fba3ef must implement OnFragmentInteractionListener
这个错误通常发生在 Android 应用程序中,它表示你的 Activity 中包含一个 Fragment,该 Fragment 没有正确地实现与 Activity 之间的通信接口 OnFragmentInteractionListener。要解决这个问题,你需要在 Fragment 中实现 OnFragmentInteractionListener 接口,并在 Activity 中重写该接口的方法,以便 Fragment 与 Activity 之间可以正确地进行通信。同时,确保在 Activity 中正确地加载 Fragment,避免出现错误的 Fragment 实例。
阅读全文