Android使用权限未得到尊重

时间:2015-10-25 23:21:45

标签: android

我尝试读取短信内容,但未通过PermissionDenial异常。我相信我的语法正确,但可能缺少我的清单中的必要元素而不是权限(我创建它使用的是Android Studio&#39的新项目向导)。

我的AndroidManifest.xml文件是(请注意,我已经在xml中移动了应用程序上方和下方的使用权限):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="mytests.testapp" >

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    <uses-permission android:name="android.permission.READ_SMS" />

</manifest>

并且正在读取短信的功能是:

public void loadMessages(){
    Uri allMessages = Telephony.Sms.CONTENT_URI;
    Cursor cursor = this.getContentResolver().query(allMessages, null, null, null, null);
    while (cursor.moveToNext()){
        for (int i = 0; i < cursor.getColumnCount(); i++){
            Log.d(cursor.getColumnName(i) + "", cursor.getString(i) + "");
        }
        Log.d("one row finished", "*********");
    }
}

1 个答案:

答案 0 :(得分:0)

StudentTest.java:27: error: cannot find symbol System.out.println(" compare as (should be +ve) " + si.compareTo(si2)); ^ symbol: method compareTo(StudentInterface) location: variable si of type StudentInterface 1 error 代码必须位于uses-permission代码上方。不确定原因 - 很可能只是在设备上进行清晰解析的工件。