0
我在使用權限機制強制限制調用者的Android上編寫了兩個應用程序。使用Eclair 2.1 IntentService的權限
它們在Froyo 2.2或更高版本上完美工作,但不適用於Eclair 2.1。
第一個應用程序(調用者)在清單<uses-permission ... />
中有第二個(稱爲)用<permission .... />
定義新的權限。
有人對Eclair 2.1有同樣的問題嗎?
我用於測試2.1只模擬器(2.1-update1和2.1update1與谷歌API)。
這是錯誤的logcat的:
W/ActivityManager( 52): Permission Denial: Accessing service ComponentInfo{xy.android.myapp.pkg2/xy.android.myapp.pkg2.Service} from pid=52, uid=1000 requires xy.android.myapp.ACCESS_SERVICE
W/System.err( 499): java.lang.SecurityException: Not allowed to start service Intent { act=xy.android.myapp.pkg2.REMOTE_LIST cmp=xy.android.myapp.pkg2/.Service (has extras) } without permission xy.android.myapp.ACCESS_SERVICE
W/System.err( 499): at android.app.ApplicationContext.startService(ApplicationContext.java:765)
W/System.err( 499): at android.content.ContextWrapper.startService(ContextWrapper.java:326)
W/System.err( 499): at xy.android.myapp.pkg1.MainActivity$6.run(MainActivity.java:711)
W/System.err( 499): at java.lang.Thread.run(Thread.java:1096)
當我安裝的APK,不像升級Froyo,有沒有記錄有關新的權限。
應用程序的清單是:
PKG1(主叫)
<uses-permission android:name="xy.android.myapp.ACCESS_SERVICE" />
PKG2
<permission android:name="xy.android.myapp.ACCESS_SERVICE"
android:label="@string/label"
android:description="@string/desc"
android:protectionLevel="signature" />
而且在服務定義:
<service ... android:permission="xy.android.myapp.ACCESS_SERVICE" ... />
我已經經過保護測試速度值:正常,簽名和危險。謝謝。
請提供您正在經歷的更精確的症狀。 – CommonsWare