在android 手机odm开发过程中,可能会遇到定制的launcer的问题。同时也需要修改默认launcher的权限问题,具体修改方法如下:
在framework层中的 DefaultPermissionGrantPolicy.java 修改grantDefaultSystemHandlerPermissions接口:
synchronized (mService.mPackages) {
// Installer
PackageParser.Package installerPackage = getSystemPackageLPr(
mService.mRequiredInstallerPackage);
if (installerPackage != null
&& doesPackageSupportRuntimePermissions(installerPackage)) {
grantRuntimePermissionsLPw(installerPackage, STORAGE_PERMISSIONS, true, userId);
}
/*SUN:jicongw.ang add for HWD FreemeLauncer {@*/
//freeme luancher
if (OptConfig.SUN_HWD_FREEMELAUCHER){
PackageParser.Package freemeosPackage = getSystemPackageLPr("com.custom.default_launcher.dem");
if (freemeosPackage != null && doesPackageSupportRuntimePermissions(freemeosPackage)) {
grantRuntimePermissionsLPw(freemeosPackage,CONTACTS_PERMISSIONS, userId);
grantRuntimePermissionsLPw(freemeosPackage, CALENDAR_PERMISSIONS,userId);
grantRuntimePermissionsLPw(freemeosPackage, PHONE_PERMISSIONS, userId);
grantRuntimePermissionsLPw(freemeosPackage, SMS_PERMISSIONS, userId);
grantRuntimePermissionsLPw(freemeosPackage, LOCATION_PERMISSIONS,true, userId);
grantRuntimePermissionsLPw(freemeosPackage, CAMERA_PERMISSIONS, userId);
grantRuntimePermissionsLPw(freemeosPackage, STORAGE_PERMISSIONS, userId);
}
}
/*SUN:jicong.wang add for HWD FreemeLauncher @}*/
// Verifier