Android demo Android Android READ

Configuration:

  • Studio 1.3
  • API 23

I am learning Android and started working on an SMS reading of a simple project.

I added permissions to SMS_READ in AndroidManifest.xml. However, when the emulator starts, it refuses to allow error permission for SMS_READ.

I'm not sure if there is a problem with the emulator or a change in resolution at API level 23?

Mistake:

Caused by: java.lang.SecurityException: Permission Denial: reading com.android.providers.telephony.SmsProvider uri content://sms/inbox from pid=1900, uid=10058 requires android.permission.READ_SMS, or grantUriPermission() at android.os.Parcel.readException(Parcel.java:1599) at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:183) at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:135) at android.content.ContentProviderProxy.query(ContentProviderNative.java:421) at android.content.ContentResolver.query(ContentResolver.java:491) at android.content.ContentResolver.query(ContentResolver.java:434) at com.example.gunda.mysmsreadapp.MainActivity.fetchInbox(MainActivity.java:68) at com.example.gunda.mysmsreadapp.MainActivity.onCreate(MainActivity.java:36) at android.app.Activity.performCreate(Activity.java:6237) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)             at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)             at android.app.ActivityThread.-wrap11(ActivityThread.java)             at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)             at android.os.Handler.dispatchMessage(Handler.java:102)             at android.os.Looper.loop(Looper.java:148)             at android.app.ActivityThread.main(ActivityThread.java:5417)             at java.lang.reflect.Method.invoke(Native Method)             at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)             at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

Here is the xml manifest

 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.gunda.mysmsreadapp" > <uses-permission android:name="android.permission.READ_SMS"/> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > android:exported="true" <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <!--<action android:name="android.provider.Telephony.READ_SMS" />--> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest> 
+7
android
source share
2 answers

finally I found the answer: API 23 (android 6.o) required a different type of permission .....

http://inthecheesefactory.com/blog/things-you-need-to-know-about-android-m-permission-developer-edition/en

+3
source share

The permission name is READ_SMS, it looks like you are using SMS_READ.

0
source share

All Articles