如何在棒棒糖上使用系统权限的应用程序

时间:2015-03-04 04:21:56

标签: android permissions android-5.0-lollipop

我想使用权限android.permission.DEVICE_POWER,它需要系统或签名,我搜索了很多,似乎/ system / priv-app中的apk可能有权限,但我的Nexus 4 5.0失败了0.2。

我把apk放到了/ system / priv-app,但是logcat显示了

不授予android.permission.DEVICE_POWER权限以打包xxxx

我做错了吗?或者还有其他方法可以获得许可吗?

3 个答案:

答案 0 :(得分:1)

请参阅documentationandroid:protectionLevel上的文档。

如果应用程序包含在/system/priv-app文件夹中,则仅在安装时分配具有signatureOrSystem保护级别的权限。 android.permission.DEVICE_POWER不是其中之一。请参阅清单定义in the source

以下是摘录:

   <!-- Allows low-level access to power management.
   <p>Not for use by third-party applications. -->
    <permission android:name="android.permission.DEVICE_POWER"
        android:label="@string/permlab_devicePower"
        android:description="@string/permdesc_devicePower"
        android:protectionLevel="signature" />

因此,应用程序必须是ROM / system / AOSP-build的signed with the platform key才能获得此许可。

答案 1 :(得分:0)

要获得此权限,必须使用用于对平台进行签名的密钥对应用程序进行签名。这可能与制造商不同。因此,实际上不可能将这些权限授予用户应用程序。

以下是可能未授予用户应用程序的一些权限:

android.permission.ACCESS_CHECKIN_PROPERTIES
android.permission.ACCESS_SURFACE_FLINGER
android.permission.ACCOUNT_MANAGER
android.permission.BIND_APPWIDGET
android.permission.BIND_DEVICE_ADMIN
android.permission.BIND_INPUT_METHOD
android.permission.BIND_WALLPAPER
android.permission.BRICK
android.permission.BROADCAST_PACKAGE_REMOVED
android.permission.BROADCAST_SMS
android.permission.BROADCAST_WAP_PUSH
android.permission.CALL_PRIVILEGED
android.permission.CHANGE_COMPONENT_ENABLED_STATE
android.permission.CLEAR_APP_USER_DATA
android.permission.CONTROL_LOCATION_UPDATES
android.permission.DELETE_CACHE_FILES
android.permission.DELETE_PACKAGES
android.permission.DEVICE_POWER
android.permission.DIAGNOSTIC
android.permission.FACTORY_TEST
android.permission.FORCE_BACK
android.permission.GLOBAL_SEARCH
android.permission.HARDWARE_TEST
android.permission.INJECT_EVENTS
android.permission.INSTALL_LOCATION_PROVIDER
android.permission.INSTALL_PACKAGES
android.permission.INTERNAL_SYSTEM_WINDOW
android.permission.MANAGE_APP_TOKENS
android.permission.MASTER_CLEAR
android.permission.READ_FRAME_BUFFER
android.permission.READ_INPUT_STATE
android.permission.REBOOT
android.permission.SET_ACTIVITY_WATCHER
android.permission.SET_ORIENTATION
android.permission.SET_PREFERRED_APPLICATIONS
android.permission.SET_TIME
android.permission.STATUS_BAR
android.permission.UPDATE_DEVICE_STATS
android.permission.WRITE_GSERVICES
android.permission.WRITE_SECURE_SETTINGS

答案 2 :(得分:0)

清理你的项目它会像这样:

项目 - &gt;清洁

愿这对您有用

How can i gain android.permission.DEVICE_POWER