精华内容
下载资源
问答
  • 怎样打开手机系统权限
    千次阅读
    2020-12-19 20:57:28

    展开全部

    在2.x的版本中,在manifest中配e69da5e887aa3231313335323631343130323136353331333365633962置的权限android.permission.WRITE_EXTERNAL_STORAGE确实是用来使得sd卡获得写的权限。而在4.0开发的源码当中,由于有了内外置sd卡的区分,android.permission.WRITE_EXTERNAL_STORAGE的权限用来设置了内置sd卡的写权限,如果在manifest中只是配置了这个权限,那个应用只能在内置sd卡中进行写操作,还是无法在外置sd卡中进行写操作。

    需要写外置sd卡的话,需要配置另一个权限android.permission.WRITE_MEDIA_STORAGE,这样就可以在外置sd卡中进行写入操作了。

    这两个权限都被定义在 android源码目录\frameworks\base\data\etc\platform.xml中:

    使用到的类主要是framework/base/core/java/android/os/storage/StorageVolume.java及相同目录下的StorageManager.java文件。

    StorageManager类可以获得所有的存储媒体列表,及StorageVolume类型的数组,从而可以获得对应存储是否可读写一类的信息。

    如果是安卓6.0的外置SD卡的话可以先打开设置,然后应用程序——应用程序管理器,再打开某个软件——存储——选择已使用的存储空间,然后点更改,选择SD卡,这样就可以了。

    更多相关内容
  • 当我们的用户使用App时不小心拒绝了某项必要权限,而导致无法正常使用。这时候希望重新去打开权限,那么问题来了,Android厂家定制的room...经过一番研究,整理出了大部分国产手机直接打开权限管理界面的方法...
  • Linux文件权限管理实验SEC-L01-002.1 Linux操作系统Linux ,是一类Unix计算机操作系统的统称 Linux操作系统的内核的名 字也是Linux Linux操作系统也是自由软件和开放源代码发展中最著名的例子 严格来讲Linux这个词...
  • 怎样使用手机ROOT精灵一键root获取系统权限.docx
  • 相信做过Android的都知道,现在的手机系统五花八门,当我们去请求用户的权限的时候,总是会弹出是否允许的对话框。 而且用户一旦不小心点了拒绝,下次就不再询问了,而很多小白用户也不知道怎么去设置。这就导致了...

    相信做过Android的都知道,现在的手机系统五花八门,当我们去请求用户的权限的时候,总是会弹出是否允许的对话框。
    而且用户一旦不小心点了拒绝,下次就不再询问了,而很多小白用户也不知道怎么去设置。这就导致了很不好的用户体验。
    经过研究,我发现像小米,魅族,这些满大街的系统,都是可以通过隐式意图打开权限设置页面的。
    这里指的是自身app的权限管理页面
    之前已经有人写过类似的文章,不过都比较分散,我这里把这些方法总结了一下。
    不多说,直接上代码。
    首先是最蛋疼的小米,百度了很多前辈留下的方法,发现都不能打开,没有办法,只能通过 adb dumpsys activity activities 命令去查看
    经过一番研究终于打开了。

    /** 
     * 跳转到miui的权限管理页面 
     */  
    private void gotoMiuiPermission() {  
        Intent i = new Intent("miui.intent.action.APP_PERM_EDITOR");  
        ComponentName componentName = new ComponentName("com.miui.securitycenter", "com.miui.permcenter.permissions.AppPermissionsEditorActivity");  
        i.setComponent(componentName);  
        i.putExtra("extra_pkgname", getPackageName());  
        try {  
            startActivity(i);  
        } catch (Exception e) {  
            e.printStackTrace();  
            gotoMeizuPermission();  
        }  
    }  

    接下来上魅族的代码

    /** 
     * 跳转到魅族的权限管理系统 
     */  
    private void gotoMeizuPermission() {  
        Intent intent = new Intent("com.meizu.safe.security.SHOW_APPSEC");  
        intent.addCategory(Intent.CATEGORY_DEFAULT);  
        intent.putExtra("packageName", BuildConfig.APPLICATION_ID);  
        try {  
            startActivity(intent);  
        } catch (Exception e) {  
            e.printStackTrace();  
            gotoHuaweiPermission();  
        }  
    }  

    华为的系统由于不太一样,有些系统是华为自己的权限管理,而6.0的是用的原生的权限管理页面,目前手上只有一台6.0的华为手机,
    暂时没有研究到打开的方法,如果有知道的大神麻烦告知一下
    不过打不开没关系,我们可以退而求其次,打开所用应用的权限管理页面

    /** 
     * 华为的权限管理页面 
     */  
    private void gotoHuaweiPermission() {  
        try {  
            Intent intent = new Intent();  
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
            ComponentName comp = new ComponentName("com.huawei.systemmanager", "com.huawei.permissionmanager.ui.MainActivity");//华为权限管理  
            intent.setComponent(comp);  
            startActivity(intent);  
        } catch (Exception e) {  
            e.printStackTrace();  
            startActivity(getAppDetailSettingIntent());  
        }  
    
    }  

    目前也就研究了这三大系统,对于原生系统,和其他系统,如果找不到方法,也可以先把用户引导到系统设置页面

    /** 
     * 打开应用详情页面intent 
     */  
    private Intent gotoAppDetailSettingIntent() {  
        Intent localIntent = new Intent();  
        localIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
        if (Build.VERSION.SDK_INT >= 9) {  
            localIntent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");  
            localIntent.setData(Uri.fromParts("package", getPackageName(), null));  
        } else if (Build.VERSION.SDK_INT <= 8) {  
            localIntent.setAction(Intent.ACTION_VIEW);  
            localIntent.setClassName("com.android.settings", "com.android.settings.InstalledAppDetails");  
            localIntent.putExtra("com.android.settings.ApplicationPkgName", getPackageName());  
        }  
        startActivity(localIntent); 
    } 
    展开全文
  • 现在的手机系统五花八门,当我们去请求用户的权限的时候,总是会弹出是否允许的对话框。 而且用户一旦不小心点了拒绝,下次就不再询问了,而很多小白用户也不知道怎么去设置。这就导致了很不好的用户体验。 经过...

    现在的手机系统五花八门,当我们去请求用户的权限的时候,总是会弹出是否允许的对话框。

    而且用户一旦不小心点了拒绝,下次就不再询问了,而很多小白用户也不知道怎么去设置。这就导致了很不好的用户体验。

    经过研究,我发现像小米,魅族,这些满大街的系统,都是可以通过隐式意图打开权限设置页面的。

    这里指的是自身app的权限管理页面

    之前已经有人写过类似的文章,不过都比较分散,我这里把这些方法总结了一下。

    不多说,直接上代码。

    首先是最蛋疼的小米,百度了很多前辈留下的方法,发现都不能打开,没有办法,只能通过 adb dumpsys activity activities 命令去查看

    经过一番研究终于打开了。

    /** 
     * 跳转到miui的权限管理页面 
     */  
    private void gotoMiuiPermission() {  
        Intent i = new Intent("miui.intent.action.APP_PERM_EDITOR");  
        //ComponentName componentName = new ComponentName("com.miui.securitycenter", "com.miui.permcenter.permissions.AppPermissionsEditorActivity");  
        //i.setComponent(componentName);  
        i.putExtra("extra_pkgname", getPackageName());  
        try {  
            startActivity(i);  
        } catch (Exception e) {  
            e.printStackTrace();  
            gotoMeizuPermission();  
        }  
    }  
    接下来上魅族的代码

    /** 
     * 跳转到魅族的权限管理系统 
     */  
    private void gotoMeizuPermission() {  
        Intent intent = new Intent("com.meizu.safe.security.SHOW_APPSEC");  
        intent.addCategory(Intent.CATEGORY_DEFAULT);  
        intent.putExtra("packageName", BuildConfig.APPLICATION_ID);  
        try {  
            startActivity(intent);  
        } catch (Exception e) {  
            e.printStackTrace();  
            gotoHuaweiPermission();  
        }  
    }  
    华为的系统由于不太一样,有些系统是华为自己的权限管理,而6.0的是用的原生的权限管理页面,目前手上只有一台6.0的华为手机,

    暂时没有研究到打开的方法,如果有知道的大神麻烦告知一下

    不过打不开没关系,我们可以退而求其次,打开所用应用的权限管理页面

    /** 
     * 华为的权限管理页面 
     */  
    private void gotoHuaweiPermission() {  
        try {  
            Intent intent = new Intent();  
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
            ComponentName comp = new ComponentName("com.huawei.systemmanager", "com.huawei.permissionmanager.ui.MainActivity");//华为权限管理  
            intent.setComponent(comp);  
            startActivity(intent);  
        } catch (Exception e) {  
            e.printStackTrace();  
            startActivity(getAppDetailSettingIntent());  
        }  
      
    }  
    
    

    目前也就研究了这三大系统,对于原生系统,和其他系统,如果找不到方法,也可以先把用户引导到系统设置页面

    /** 
     * 获取应用详情页面intent 
     * 
     * @return 
     */  
    private Intent getAppDetailSettingIntent() {  
        Intent localIntent = new Intent();  
        localIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
        if (Build.VERSION.SDK_INT >= 9) {  
            localIntent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");  
            localIntent.setData(Uri.fromParts("package", getPackageName(), null));  
        } else if (Build.VERSION.SDK_INT <= 8) {  
            localIntent.setAction(Intent.ACTION_VIEW);  
            localIntent.setClassName("com.android.settings", "com.android.settings.InstalledAppDetails");  
            localIntent.putExtra("com.android.settings.ApplicationPkgName", getPackageName());  
        }  
        return localIntent;  
    }  


    转自:http://blog.csdn.net/syusikoku/article/details/52886971






    展开全文
  • 本人使用小米手机打开qq或者微信的时候,某个权限拒绝的话,会提示你开启,点击开启会跳转到app的权限设置界面,当然了,这是国内系统深层定制的原因,也就是说这个界面原声的android没有的!这里以小米和魅族作为...
  • Android 最简单实用的打开手机通知权限设置

    千次阅读 热门讨论 2021-09-16 00:10:25
    最近做离线的消息推送,发现oppo、vivo、小米等有些机型通知权限默认是关闭的,需要手动打开,网上有很多介绍怎么设置和打开的,但是发现都要适配各种版本和各大机型,太麻烦和繁琐,不是我想要的效果,于是自己整理...

    最近做离线的消息推送,发现oppo、vivo、小米等有些手机机型通知权限默认是关闭的,需要手动打开,网上有很多介绍怎么设置和打开的,但是发现都要适配各种版本和各大机型,太麻烦和繁琐,不是我想要的效果,于是自己整理了一个简单方便实用的方法,不多说,直接上代码:

    1.封装的方法如下:
    /**
     * 打开通知权限
     *
     * @param context
     */
    public static void openNotificationSettingsForApp(Context context) {
        // Links to this app's notification settings.
        Intent intent = new Intent();
        intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
        intent.putExtra("app_package", context.getPackageName());
        intent.putExtra("app_uid", context.getApplicationInfo().uid);
        // for Android 8 and above
        intent.putExtra("android.provider.extra.APP_PACKAGE", context.getPackageName());
        context.startActivity(intent);
    }

    2.在MainActivity使用:

    NotificationManagerCompat notification = NotificationManagerCompat.from(mContext);
    boolean isEnabled = notification.areNotificationsEnabled();
    if (!isEnabled) {
        toTipDialog();
    }

    3.完整的工具类代码如下:
    /**
     * @auth: njb
     * @date: 2021/7/28 10:54
     * @desc: 手机通知设置工具类
     */
    public class NotifyManagerUtils {
        static long[] vibrate = {100, 200, 300, 400, 500, 400, 300, 200, 400};
    
        /**
         * 打开通知权限
         *
         * @param context
         */
        public static void openNotificationSettingsForApp(Context context) {
            // Links to this app's notification settings.
            Intent intent = new Intent();
            intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
            intent.putExtra("app_package", context.getPackageName());
            intent.putExtra("app_uid", context.getApplicationInfo().uid);
            // for Android 8 and above
            intent.putExtra("android.provider.extra.APP_PACKAGE", context.getPackageName());
            context.startActivity(intent);
        }
    
        public static void notificationActions(Context context,String content,String title) {
            NotificationManager notificationManager = (NotificationManager) context.getSystemService(NOTIFICATION_SERVICE);
            RemoteViews remoteViews = new RemoteViews(CommentUtils.getPackageName(context), R.layout.layout_notify);
            remoteViews.setTextViewText(R.id.tv_title, title);
            Intent intent = new Intent(context, MainActivity.class);
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED | Intent.FLAG_ACTIVITY_CLEAR_TOP);
            PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
            NotificationCompat.Builder builder = new NotificationCompat.Builder(context);
            builder.setSmallIcon(R.mipmap.app_icon_round_connor);
            builder.setColor(ContextCompat.getColor(context, R.color.colorPrimaryDark));
            builder.setLargeIcon(BitmapFactory.decodeResource(context.getResources(), R.mipmap.app_icon_round_connor));
            builder.setContentTitle(title);
            builder.setContentText(content);
            builder.setContent(remoteViews);
            builder.setWhen(System.currentTimeMillis());
            builder.setAutoCancel(true);
            builder.setContentIntent(pendingIntent);
            // 用户可以看到的通知渠道的名字.
            CharSequence name = "notification channel";
            // 用户可以看到的通知渠道的描述
            NotificationChannel mChannel = null;
            if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
                mChannel = new NotificationChannel("1", name, NotificationManager.IMPORTANCE_HIGH);
                // 配置通知渠道的属性
                mChannel.setDescription(content);
                // 设置通知出现时的闪灯(如果 android 设备支持的话)
                mChannel.enableLights(true);
                mChannel.setLightColor(Color.RED);
                // 设置通知出现时的震动(如果 android 设备支持的话)
                mChannel.enableVibration(true);
                mChannel.setVibrationPattern(vibrate);
                //最后在notificationmanager中创建该通知渠道
                notificationManager.createNotificationChannel(mChannel);
            }
            notificationManager.notify(1, builder.build());
        }
    }
    

    4.是不是发现很简单有没有,一个方法就搞定,而且是适配了各大厂商机型,目前亲自测试了小米、华为、oppo、Vivo、三星、google、一加等多款机型都可以正常跳转到本应用的通知设置界面,没有那么多版本判断和机型适配代码,去掉繁琐的使用,如果大家觉得有用可以自己去试试,亲自体验一下,毕竟说再多再好没有实战数据说明来得真实。因为源码中有判断版本,明天会放出运行效果,好了,今天先到这里,本菜鸡准备休息了~~

    关键系统源码如下:

    展开全文
  • 如何开启获取手机信息权限

    千次阅读 2021-06-08 02:36:11
    以安卓手机获取通讯录为例,开启获取手机信息权限的方法:1、打开【安全中心】,进入【授权管理】。2、选择【应用权限管理】。3、选择【应用管理】。4、在应用列表中找到想要开通权限的应用,点击进入。5、在权限...
  • oppo手机获取root权限

    2021-09-04 20:47:48
    oppo root oppo 系列 OPPO R7 Plus 亲测成功 但注意手机会刷有root权限系统, 在手机中安装后, 打开点玩机, 获取root权限.
  • 在不刷root权限的情况下,如果想在应用层修改系统时间是比较复杂的。本资源是通过android:sharedUserId="android.uid.system",先打包apk,然后用压缩文件打开apk,删除META-INF文件夹下的CERT.SF和CERT.RSA,然后运行...
  • Android Studio打开手机权限

    千次阅读 2020-10-06 00:29:41
    解决方法 最主要的自己手动动态打开权限,就像是下载一个APP,安装好,手机提示是否允许APP打开读取设备照片,文件权限,然后自己调试下运行代码,已经解决,手机响起《第十套广播体操》,目前的问题就算解决了,...
  • 到网上查了下解决方法,说是在配置文件加uid.system这个属性,然后再用系统的platform密钥文件对应用签名,这样得到的apk就可以调用系统权限了,可是搞了好久都不知道系统的platform文件怎么获取到,有哪位大神可以...
  • uniapp获取手机App权限

    千次阅读 热门讨论 2022-05-11 17:07:51
    uniapp中有些获取权限的方法是不适用于APP和WEB端的,这个时候就需要用其他方法来实现
  • 这个问题在8.0系统手机上不是必现的,这可能和手机厂商的系统处理有关,但是有一点是确定的:Google从Android8.0系统开始,关闭了未知应用安装权限,需要用户手动点开。 第一步:当APK下载完毕之后,正常来说要...
  • 今天小编就为大家分享一篇Android判断某个权限是否开启的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 手机麦克风权限怎么设置

    千次阅读 2020-12-21 07:49:04
    进入手机主界面32313133353236313431303231363533e59b9ee7ad9431333366303133,选择“设置”。2. 进入设置界面,选择“隐私”。3. 进入隐私设置后,选择“麦克风”。4. 在麦克风设置中,即可看到部分请求使用麦克风...
  • Android 小米手机权限问题

    千次阅读 2021-05-26 12:40:01
    前面的那些权限相关的概念和6.0之后的权限申请的变更就不一一复述了,这里针对小米手机权限问题做一下详细的说明和找一下解决方案:// 代码片段1:跳转到本应用的设置详情页面public static void toSelfSetting...
  • Android 打开消息通知权限

    千次阅读 2021-06-07 11:49:10
    转载自https://blog.csdn.net/rocrocflying/article/details/78333256?locationNum=8&fps=1和 ...很多人或系统会关闭消息通知权限来组织手机天天就知道“叮咚叮...
  • 华为手机中微信的定位权限怎么设置开启今天给大家介绍一下华为手机中微信的定位权限怎么设置开启的具体操作步骤。1. 解锁手机后,找到桌面上的设置图标,打开。2. 进入设置页面后,找到应用和通知选项,打开。3. 在...
  • Android系统完整的权限列表

    千次阅读 2021-02-08 23:10:26
    访问登记属性 android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限 获取错略位置 android.permission.ACCESS_COARSE_LOCATION,通过WiFi或移动基站的方式获取用户...
  • content: '请先打开APP通知权限', showCancel: false, success: function (res) { if (res.confirm) { var UIApplication = plus.ios.import("UIApplication"); var NSURL = plus.ios.import("NSURL"); var ...
  • 手机权限设置在哪里?平时,我们使用手机安装程序时,会要求读取电话、录音和设备信息等等,这样让APP获取了我们的软件权限后,大家是不是觉得自己的手机都变得不安全了,所以我们有必要在安装软件之后,再对这一些...
  • 平时我们用小米9 se第一次打开软件时,会遇到要打开麦克风权限的提示,如果第一次拒绝了这个麦克风权限的话,后面要打开,就需要来进行设置一下了,今天新机汇小编为大家分享一下详细的小米9 SE怎么设置麦克风权限的...
  • uniapp打开手机通知权限设置

    千次阅读 2021-08-10 15:45:53
    * 设置手机通知权限 */ function setPermissions() { // #ifdef APP-PLUS if (plus.os.name == 'Android') { // 判断是Android var main = plus.android.runtimeMainActivity(); var pkName = main....
  • root权限,系统权限的一种,也叫根权限,与SYSTEM权限可以理解成一个概念,但高于Administrator权限,root是Linux和unix系统中的超级管理员用户帐户,该帐户拥有整个系统至高无上的权力,所有对象他都可以操作。...
  • 在应用开发时经常会有这样的...好了,现在就让我们一起来实现一个利用系统权限实现手机重启的示例吧。 一、实现 我们实现很简单,就是给界面一个按钮,然后设置按钮的点击事情,在点击事件里完成手机重启操作。 1、布局

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 165,614
精华内容 66,245
热门标签
关键字:

怎样打开手机系统权限