我有一個Android系統服務(而不是應用程序),它被android應用程序使用。我想爲此係統服務添加定製權限,然後應用程序必須擁有此權限才能訪問我的服務。 現在,我已經在/frameworks/base/core/res/AndroidManifest.xml中添加了一個驗證,例如com.test.testpermission。 但是我還應該怎麼做才能在系統服務中使用此權限?如何在Android框架中使用定製權限?
1
A
回答
0
在服務代碼中,您需要將權限檢查添加到服務公開的所有公共API中。要檢查的權限,你可以使用這種方法:
private boolean checkPermission() {
if (getContext().checkCallingOrSelfPermission("com.test.testpermission") == PackageManager.PERMISSION_GRANTED) {
return true;
}
return false;
}
因此,客戶端應用程序必須有您的許可,在其清單中列出。
我從來沒有嘗試過,但我可以看到它被TelephonyRegistry服務使用爲例。
對於原生代碼,我可以在相機維修看到這一點:對於〔實施例
if (!checkCallingPermission(
String16("android.permission.CAMERA"))) {
const int uid = getCallingUid();
LOGE("Permission Denial: "
"can't use the camera pid=%d, uid=%d", pid, uid);
return PERMISSION_DENIED;
}
相關問題
- 1. 如何使用android框架內的權限?
- 2. 在manifest.xml文件中使用權限與android權限的權限
- 3. 如何在Android中自定義權限對話框?
- 4. 如何在Android中使用自定義權限?
- 5. Django網站框架權限
- 6. Django Rest框架和權限
- 7. 是否可以在Android框架(庫)中封裝權限
- 8. 如何在android中限制SDK的權限?
- 9. 如何在Django Rest框架中管理角色和權限mongoengine
- 10. 如何在Django REST框架中爲POST請求設置權限?
- 11. 如何獲得在agavi框架中創建文件的權限?
- 12. 使用權限android
- 13. Android SU權限:如何使用它們?
- 14. Django Rest框架中CreateAPIView的權限
- 15. .NET中的權限/角色框架
- 16. 限制與JOIN使用Zend框架
- 17. 如何限制uilabel僅在特定框架內拖動?
- 18. 如何使用Windows權限機制?
- 19. Android如何強制執行權限?
- 20. 如何在android中聲明用戶定義的權限
- 21. 在Android中使用權限組M
- 22. 在Android中的權限使用
- 23. ASP.NET應用程序控制權限框架
- 24. 如何在android中設置權限WRITE_SECURE_SETTINGS?
- 25. 實體框架,WCF和用戶權限:如何實現它
- 26. Gradle:如何自定義Android Manifest權限?
- 27. 在android中指定多個權限:活動上的權限
- 28. 限制用戶在GitLab中的權限?
- 29. 如何使用twitter框架在iOS 5.0中使用bitly框架?
- 30. 當用戶保存在Django Rest框架中時添加權限
採取CameraService,我不知道該怎麼Android框架允許在AndroidManifest.xml與服務相關聯。 – Jessie