修改系統 Contacts 應用,已在 Manifest 宣告 android.permission.CALL_PRIVILEGED,執行撥號仍拋出 SecurityException: Permission Denial,提示需要該權限。
CALL_PRIVILEGED 為 簽名權限,僅授予與系統相同簽名的應用。自行編譯的 Contacts 若未使用系統平台簽名,系統不會授予該權限。
/system/app/Contacts/ 或 /system/priv-app/Contacts/。# 簽名範例
java -jar signapk.jar platform.x509.pem platform.pk8 Contacts.apk Contacts_signed.apk
# 推送
adb root
adb remount
adb push Contacts_signed.apk /system/priv-app/Contacts/Contacts.apk
adb shell chmod 644 /system/priv-app/Contacts/Contacts.apk
adb reboot
ACTION_DIAL 或申請 CALL_PHONE 並引導用戶授權。