当前位置: 首页 > news >正文

摄影师个人网站制作我想建设一个网站

摄影师个人网站制作,我想建设一个网站,网站建设教程免费,阿树 wordpress需求 CTA入网认证#xff0c;要求低版本比如Android6以下的应用#xff0c;运行时#xff0c;也需要有运行时权限(Runtime Permission)功能#xff0c;不能默认就取到权限#xff0c;必须人工在设置中打开才可。 环境 Android 8 实现 frameworks 修改思路是所有APP都…需求 CTA入网认证要求低版本比如Android6以下的应用运行时也需要有运行时权限(Runtime Permission)功能不能默认就取到权限必须人工在设置中打开才可。 环境 Android 8 实现 frameworks 修改思路是所有APP都统一处理支持运行时权限 把所有版本相关的判断去掉检测是否支持运行时权限的判断去掉。 diff --git a/base/services/core/java/com/android/server/pm/PackageInstallerService.java b/base/services/core/java/com/android/server/pm/PackageInstallerService.java index 1fa37b91..3a3433c9 100644 --- a/base/services/core/java/com/android/server/pm/PackageInstallerService.javab/base/services/core/java/com/android/server/pm/PackageInstallerService.java-436,6 436,7 public class PackageInstallerService extends IPackageInstaller.Stub {params.installFlags | PackageManager.INSTALL_FROM_ADB;} else {mAppOps mContext.getSystemService(AppOpsManager.class);mAppOps.checkPackage(callingUid, installerPackageName);params.installFlags ~PackageManager.INSTALL_FROM_ADB;-705,6 706,7 public class PackageInstallerService extends IPackageInstaller.Stub {Overridepublic ParceledListSliceSessionInfo getMySessions(String installerPackageName, int userId) {mPm.enforceCrossUserPermission(Binder.getCallingUid(), userId, true, false, getMySessions);mAppOps mContext.getSystemService(AppOpsManager.class);mAppOps.checkPackage(Binder.getCallingUid(), installerPackageName);final ListSessionInfo result new ArrayList(); diff --git a/base/services/core/java/com/android/server/pm/PackageManagerService.java b/base/services/core/java/com/android/server/pm/PackageManagerService.java index aa43008b..5f0f66a4 100644 --- a/base/services/core/java/com/android/server/pm/PackageManagerService.javab/base/services/core/java/com/android/server/pm/PackageManagerService.java-2279,8 2279,9 public class PackageManagerService extends PackageManagerServiceExAbsfinal int immutableFlags PackageManager.FLAG_PERMISSION_SYSTEM_FIXED| PackageManager.FLAG_PERMISSION_POLICY_FIXED;- final boolean supportsRuntimePermissions pkg.applicationInfo.targetSdkVersion - Build.VERSION_CODES.M;//final boolean supportsRuntimePermissions pkg.applicationInfo.targetSdkVersion// Build.VERSION_CODES.M;final boolean supportsRuntimePermissions false;final boolean instantApp isInstantApp(pkg.packageName, userId); -5884,7 5885,6 public class PackageManagerService extends PackageManagerServiceExAbs// to keep the review required permission flag per user while an// install permissions state is shared across all users.if (mPermissionReviewRequired - pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M bp.isRuntime()) {return;}-5918,10 5918,10 public class PackageManagerService extends PackageManagerServiceExAbs name for package packageName);}- if (pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M) { - Slog.w(TAG, Cannot grant runtime permission to a legacy app); - return; - }//if (pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M) {//Slog.w(TAG, Cannot grant runtime permission to a legacy app);//return;//}final int result permissionsState.grantRuntimePermission(bp, userId);switch (result) {-6021,7 6021,7 public class PackageManagerService extends PackageManagerServiceExAbs// to keep the review required permission flag per user while an// install permissions state is shared across all users.if (mPermissionReviewRequired - pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M// pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M bp.isRuntime()) {return;}-13615,8 13615,7 public class PackageManagerService extends PackageManagerServiceExAbsfor (int i0; iN; i) {final String name pkg.requestedPermissions.get(i);final BasePermission bp mSettings.mPermissions.get(name); - final boolean appSupportsRuntimePermissions pkg.applicationInfo.targetSdkVersion - Build.VERSION_CODES.M;final boolean appSupportsRuntimePermissions false;if (DEBUG_INSTALL) {Log.i(TAG, Package pkg.packageName checking name : bp);-13676,10 13675,7 public class PackageManagerService extends PackageManagerServiceExAbs// their permissions as always granted runtime ones since we need// to keep the review required permission flag per user while an// install permissions state is shared across all users. - if (!appSupportsRuntimePermissions !mPermissionReviewRequired) { - // For legacy apps dangerous permissions are install time ones. - grant GRANT_INSTALL; - } else if (origPermissions.hasInstallPermission(bp.name)) {if (origPermissions.hasInstallPermission(bp.name)) {// For legacy apps that became modern, install becomes runtime.grant GRANT_UPGRADE;} else if (mPromoteSystemApps-14023,14 14019,6 public class PackageManagerService extends PackageManagerServiceExAbs}}if (!allowed) { - if (!allowed (bp.protectionLevel - PermissionInfo.PROTECTION_FLAG_PRE23) ! 0 - pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M) { - // If this was a previously normal/dangerous permission that got moved - // to a system permission as part of the runtime permission redesign, then - // we still want to blindly grant it to old apps. - allowed true; - }if (!allowed (bp.protectionLevel PermissionInfo.PROTECTION_FLAG_INSTALLER) ! 0 pkg.packageName.equals(mRequiredInstallerPackage)) {// If this permission is to be granted to the system installer and-21325,8 21313,7 public class PackageManagerService extends PackageManagerServiceExAbs// If permission review is enabled and this is a legacy app, mark the// permission as requiring a review as this is the initial state.int flags 0; - if (mPermissionReviewRequired - ps.pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M) {if (mPermissionReviewRequired) {flags | FLAG_PERMISSION_REVIEW_REQUIRED;}if (permissionsState.updatePermissionFlags(bp, userId, userSettableMask, flags)) {-26124,9 26111,9 Slog.v(TAG, :: stepped forward, applying functor at tag parser.getName());}// Permission review applies only to apps not supporting the new permission model. - if (packageSetting.pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M) { - return false; - }//if (packageSetting.pkg.applicationInfo.targetSdkVersion Build.VERSION_CODES.M) {//return false;//}// Legacy apps have the permission and get user consent on launch.PermissionsState permissionsState packageSetting.getPermissionsState(); 作者帅得不敢出门 原创文章谢绝转载
http://wiki.neutronadmin.com/news/209562/

相关文章:

  • 湘潭网站建设 找磐石网络一流wordpress降低sql查询
  • 公司网站制作的费用一键建设网站
  • 外贸网站模板大全网页设计欣赏作品
  • 模板网站的弊端在哪ui设计师要学什么
  • 35互联做的网站34线城市做网站推广
  • 深圳龙岗网站建设培训学校现在学什么行业和技术前景好
  • 千库网网页版登录官网seo系统优化
  • 网站制作推广方案云主机安装多个网站
  • 免费淘宝网站建设襄阳市住房和城乡建设局官方网站
  • 老渔哥网站建设公司wordpress客户端linux
  • 淘宝客建立网站推广怎么做俄语网站模板
  • 网站用什么技术做的简单的手机网站模板下载安装
  • 外贸平台网站手机网站系统
  • 江苏省建设档案网站做网站来联盟怎么样
  • 做网站要什么资料建设银行信用卡在网站激活后如何设置密码
  • 如何判断网站做的关键词天津企朋做网站的公司
  • 做数据的网站有哪些内容给wordpress插件添加po文件
  • 不用代码做网站html湖南营销型网站建设
  • 咸阳做网站的公司电话WordPress用AFC制作主题
  • 企业网站服务网站建设代理多少钱
  • 致力于做服务更好的网站建设公司什么网站允许搭建
  • 厦门网站建设方案策划建设网站企业网上银行登录官方
  • 网络销售的工作内容热狗seo外包
  • 营销展示型网站模板c2c网站建设需求分析
  • 个人网站下载推广计划和推广单元什么区别
  • wordpress的教程智推seo
  • 河南省建设教育协会网站程序源代码下载网站
  • 网站开发 印花税网站建设工作汇报
  • 新开发网站松江建网站
  • 国际公司湛江seo推广外包