本篇文章给大家谈谈android–如果用户拒绝在Oppo棒棒糖版本中使用permision,如何再次询问OPPO中的权限?,同时本文还将给你拓展Android6.0动态权限获取:一个EasyPermi
本篇文章给大家谈谈android – 如果用户拒绝在Oppo棒棒糖版本中使用permision,如何再次询问OPPO中的权限?,同时本文还将给你拓展Android 6.0动态权限获取:一个EasyPermission的权限管理库、Android lollipop java.lang.SecurityException:用户和当前进程都没有android.permission.BLUETOOTH_PRIVILEGED、Android Lollipop (棒棒糖)使用份额终排第一、Android permission 访问权限列表等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- android – 如果用户拒绝在Oppo棒棒糖版本中使用permision,如何再次询问OPPO中的权限?
- Android 6.0动态权限获取:一个EasyPermission的权限管理库
- Android lollipop java.lang.SecurityException:用户和当前进程都没有android.permission.BLUETOOTH_PRIVILEGED
- Android Lollipop (棒棒糖)使用份额终排第一
- Android permission 访问权限列表
android – 如果用户拒绝在Oppo棒棒糖版本中使用permision,如何再次询问OPPO中的权限?
我需要在我的应用中写入联系人权限.
但在oppo棒棒糖中,它要求oppo自己的安全许可.
如果我拒绝该权限而不是应用程序在打开该屏幕时崩溃.
所以我想知道如何在Oppo Lollipop版本中查看此权限.
在另一台设备和所有操作系统它工作正常但我在OPPO棒棒糖版本面临问题.
如果我们打开安全权限On就会发生这种情况.如果我们将其关闭而不是它将起作用.
我想以编程方式请求权限,而不是进入设置
解决方法
我认为你能做的最好的事情就是抓住异常并向用户弹出一个解释.然后,当用户单击“确定”时,您可以将其重定向到应用程序设置.参见这里:How to open application permission window in app settings programmatically
Android 6.0动态权限获取:一个EasyPermission的权限管理库
EasyPermission
README: 中文 | English
EasyPermission简介
这个是一个方便Android中权限管理的库,它使得申请权限和业务代码逻辑简单分离,不去关心权限的申请和回调。 源码地址:https://github.com/githubZYQ/easypermission
初衷
以前你是怎么管理Android的权限的?<br>
先判断有没有权限,再申请权限,最后onRequestPermissionsResult中检查一个个结果,再执行自己的业务逻辑?<br>
有一个打电话的权限,好多地方都要用,你每次使用打电话都要写一遍权限的判断申请和结果处理?<br>
那现在有一个好消息:<br>
这儿有一个方便Android中权限管理的库,你告诉它你需要的权限,然后再告诉它你想要执行什么,就可以了。
解释
1.module-easypermissionlib是EasyPermission 的核心源码code;<br>
2.module-app是EasyPermission的一个使用demo;<br>
集成方法
第一步. 添加JitPack 将其添加到根build.gradle中.
allprojects {
repositories {
...
maven { url ''https://jitpack.io'' }
}
}
第二步. 添加依赖
dependencies {
implementation ''com.github.githubZYQ:easypermission:v1.0.0''
}
第三步.调用 onRequestPermissionsResult()。 将要使用EasyPermission的Activity中的onRequestPermissionsResult,调用EasyPermissionHelper.getInstance().onRequestPermissionsResult即可;<br>
如果你有BaseActivity,那么只需要在BaseActivity中设置一次即可。
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
//使用EasyPermissionHelper注入回调
EasyPermissionHelper.getInstance().onRequestPermissionsResult(requestCode, permissions, grantResults, this);
}
功能使用
接下来看下怎么使用。
1.检测权限
只需要调用EasyPermission的hasPermission方法,支持多个权限同时传入。
EasyPermission.build().hasPermission(this, Manifest.permission.CALL_PHONE);
2.申请权限
如果你在应用启动时需要申请权限,而且并不关注权限的结果,<br>
只需要调用EasyPermission的requestPermission方法,支持多个权限传入。<br>
EasyPermission.build().requestPermission(MainActivity.this, Manifest.permission.CALL_PHONE);
3.需要权限的结果
如果你需要知道申请权限后用户的选择结果,同时去执行自己的方法myVoid(),<br>
那么在onPermissionsAccess中去做就可以了,<br>
在onPermissionsDismiss是用户拒绝了权限的反馈。
EasyPermission.build()
.mRequestCode(RC_CODE_CALLPHONE)
.mContext(NeedReslutActivity.this)
.mPerms(Manifest.permission.CALL_PHONE)
.mResult(new EasyPermissionResult() {
@Override
public void onPermissionsAccess(int requestCode) {
super.onPermissionsAccess(requestCode);
//做你想做的
}
@Override
public void onPermissionsDismiss(int requestCode, @NonNull List<String> permissions) {
super.onPermissionsDismiss(requestCode, permissions);
//你的权限被用户拒绝了你怎么办
}
}).requestPermission();
4.有时用户拒绝了权限,而且禁止了弹出询问,我该怎么办?
同上,只要在onDismissAsk中,就可以得到被禁止的结果,同时你要注意onDismissAsk默认返回false,<br>
如果你自己修改return true,将视为已经处理了禁止结果,将不再回调onPermissionsDismiss这个方法,<br>
调用openAppDetails方法,可以弹窗引导用户去设置界面设置权限,在onActivityResult中检查结果。
EasyPermission easyPermission = EasyPermission.build()
.mRequestCode(RC_CODE_CALLPHONE)
.mContext(DismissAskActivity.this)
.mPerms(Manifest.permission.CALL_PHONE)
.mResult(new EasyPermissionResult() {
@Override
public void onPermissionsAccess(int requestCode) {
super.onPermissionsAccess(requestCode);
//做你想做的
}
@Override
public void onPermissionsDismiss(int requestCode, @NonNull List<String> permissions) {
super.onPermissionsDismiss(requestCode, permissions);
//你的权限被用户拒绝了你怎么办
}
@Override
public boolean onDismissAsk(int requestCode, @NonNull List<String> permissions) {
//你的权限被用户禁止了并且不能请求了你怎么办
easyPermission.openAppDetails(DismissAskActivity.this, "Call Phone - Give me the permission to dial the number for you");
return true;
}
});
easyPermission.requestPermission();
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (EasyPermission.APP_SETTINGS_RC == requestCode) {
//设置界面返回
//Result from system setting
if (easyPermission.hasPermission(DismissAskActivity.this)) {
//做你想做的
} else {
//从设置回来还是没给你权限
}
}
}
拓展
仔细看了Android的权限使用过程,其实内心觉得,关于需要申请的权限的地方,都是使用的系统的API,<br>
那么Android系统为何不能在APP使用某项权限时自己拦截咨询用户,<br>
用户允许了就继续执行,不允许给开发者一个反馈,这样岂不是好? 我真心觉得权限管理、申请、判断都应该是系统完成的,让开发者去注册声明需要哪些权限可以理解,<br>
但是动态的每次使用都要去判断、申请、回调等等真的对开发者不友好,希望后续系统能有所改进,<br>
如果有能直接反馈给Google的Android团队的,希望将此声音带过去。<br>
如果你有更好的方案,比如HOOK技术跳过系统的权限检测等等,欢迎评论交流。
最后
祝所有人平安幸福、家庭和睦、身体健康。<br>
愿世界和平,不再被战争所累。<br>
有任何疑问,可以及时反馈给我;<br>
如果你觉得还不错,请点赞o( ̄▽ ̄)d。
Android lollipop java.lang.SecurityException:用户和当前进程都没有android.permission.BLUETOOTH_PRIVILEGED
表现:
<uses-permission android:name="android.permission.BLUetoOTH" /> <uses-permission android:name="android.permission.BLUetoOTH_ADMIN" /> <uses-permission android:name="android.permission.BLUetoOTH_PRIVILEGED" /> <uses-feature android:name="android.hardware.bluetooth_le" android:required="false" />
码:
mBleScanner.startScan(filters,scanSettings,mLeScanCallback); private ScanCallback mLeScanCallback = new ScanCallback() { @Override public void onScanResult(int callbackType,ScanResult result) { BluetoothDevice device = result.getDevice(); if(device.getName() != null) { if(device.getName().toupperCase().contains("MyDevice")) { mBleScanner.stopScan(mLeScanCallback); if (device.getBondState() == BluetoothDevice.BOND_BONDED) { Connect(device.getAddress().toString()); } else { // pair device device.setPairingConfirmation(true); device.createBond(); } } } } }; ... .. . private void BondDevice(BluetoothGattCharacteristic bgc,boolean pnEnable) { boolean bool = gatt.setCharacteristicNotification(bgc,true); // this line throw security exception BluetoothGattDescriptor bgd=bgc.getDescriptor(UUID.fromString(BLE_DESCRIPTOR_NOTIFY)); byte[] arrayOfByte = pnEnable ? BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE: BluetoothGattDescriptor.disABLE_NOTIFICATION_VALUE; gattDescriptor.setValue(arrayOfByte); mBluetoothGatt.writeDescriptor(bgd); }
堆栈跟踪:
04-27 12:36:24.559: W/BluetoothGatt(17764): Unhandled exception in callback 04-27 12:36:24.559: W/BluetoothGatt(17764): java.lang.SecurityException: Need BLUetoOTH_PRIVILEGED permission: Neither user 10215 nor current process has android.permission.BLUetoOTH_PRIVILEGED. 04-27 12:36:24.559: W/BluetoothGatt(17764): at android.os.Parcel.readException(Parcel.java:1540) 04-27 12:36:24.559: W/BluetoothGatt(17764): at android.os.Parcel.readException(Parcel.java:1493) 04-27 12:36:24.559: W/BluetoothGatt(17764): at android.bluetooth.IBluetoothGatt$Stub$Proxy.registerForNotification(IBluetoothGatt.java:1163) 04-27 12:36:24.559: W/BluetoothGatt(17764): at android.bluetooth.BluetoothGatt.setCharacteristicNotification(BluetoothGatt.java:1239) 04-27 12:36:24.559: W/BluetoothGatt(17764): at com.vibease.ap3.service.ServiceBLE.BondDevice(ServiceBLE.java:568) 04-27 12:36:24.559: W/BluetoothGatt(17764): at com.vibease.ap3.service.ServiceBLE.CheckDevice(ServiceBLE.java:518) 04-27 12:36:24.559: W/BluetoothGatt(17764): at com.vibease.ap3.service.ServiceBLE.access$7(ServiceBLE.java:493) 04-27 12:36:24.559: W/BluetoothGatt(17764): at com.vibease.ap3.service.ServiceBLE$2.onServicesdiscovered(ServiceBLE.java:373) 04-27 12:36:24.559: W/BluetoothGatt(17764): at android.bluetooth.BluetoothGatt$1.onSearchComplete(BluetoothGatt.java:309) 04-27 12:36:24.559: W/BluetoothGatt(17764): at android.bluetooth.IBluetoothGattCallback$Stub.onTransact(IBluetoothGattCallback.java:217) 04-27 12:36:24.559: W/BluetoothGatt(17764): at android.os.Binder.execTransact(Binder.java:446)
解决方法
04-27 12:36:24.559: W/BluetoothGatt(17764): java.lang.SecurityException: Need
BLUetoOTH_PRIVILEGED@H_301_21@ permission: Neither user 10215 nor current process has
android.permission.BLUetoOTH_PRIVILEGED@H_301_21@.
只需添加它要求的权限:
<uses-permission android:name="android.permission.BLUetoOTH_PRIVILEGED" />
Android Lollipop (棒棒糖)使用份额终排第一
网易科技讯 3月9日消息,据科技博客VentureBeat报道,谷歌今天更新了Android平台版本页面,公布了Android各系统版本的最新使用份额情况。数据显示,3月,2月位居前两位的系统版本排位互换。
在推出16个月后,Android Lollipop(棒棒糖)在份额上终于完成了对KitKat(奇巧)的超越。谷歌是在2014年11月发布Nexus 9时推出该系统版本的。
业内人士称,对于Android系统的采用问题,让人觉得遗憾的是,新版本往往要在推出多个月后才最终超越前一代的系统版本。换言之,被最多人使用的Android版本一直都是过时的版本。
以下是2月和3月Android各个版本的一些份额数据变动:
·Android 6.0“棉花糖”(2015年10月):2.3%,增长0.1个百分点;
·Android 5.0/5.1“棒棒糖”(2014年11月,2015年3月):36.1%,增长2.0个百分点;
·Android 4.4“奇巧”(2013年10月):34.3%,下降1.2个百分点;
·Android 4.1/4.2/4.3“果冻豆”(2012年7月,2012年11月,2013年7月):22.3%,下降1.6个百分点;
·Android 4.0“冰淇淋三明治”(2011年12月):2.3%,下降0.2个百分点;
·Android 2.3“姜饼”(2011年2月):2.6%,下降0.1个百分点;
·Android 2.2“冻酸奶”(2010年5月):0.1%,与上月持平
要 指出的是,上述数据采集自需要采用Android 2.2或更高系统版本的谷歌应用商店Google Play Store应用。这意味着搭载更旧版本的设备以及没安装Google Play的设备(包括中国的众多手机和平板电脑、亚马逊Fire系列设备等等)不在数据统计范围内。另外,使用份额不到0.1%的Android版本在谷 歌的报告中并没有列举出来,如Android 3.0“蜂巢”。
上 图是2月份的Android各系统版本的使用份额情况。而现在,最新的排名是:“棒棒糖”第一,“奇巧”第二,“果冻豆”第三,“姜饼”第四,“冰淇淋三 明治”和“棉花糖”并列第五,“冻酸奶”位居末席。接下来,业界的关注焦点将会是普及缓慢但有望稳步增长的“棉花糖”。
Android permission 访问权限列表
在 androidmanifest.xml 中声明相关权限请求,完整列表如下:
android.permission.ACCESS_CHECKIN_PROPERTIES
允许读写访问”properties” 表在 checkin 数据库中,改值可以修改上传 (Allows read/write access to the “properties” table in the checkin database, to change values that get uploaded)
android.permission.ACCESS_COARSE_LOCATION
允许一个程序访问 CellID 或 WiFi 热点来获取粗略的位置 (Allows an application to access coarse (e.g., Cell-ID, WiFi) location)
android.permission.ACCESS_FINE_LOCATION
允许一个程序访问精良位置 (如 GPS) (Allows an application to access fine (e.g., GPS) location)
android.permission.ACCESS_LOCATION_EXTRA_COMMANDS
允许应用程序访问额外的位置提供命令 (Allows an application to access extra location provider commands)
android.permission.ACCESS_MOCK_LOCATION
允许程序创建模拟位置提供用于测试 (Allows an application to create mock location providers for testing)
android.permission.ACCESS_NETWORK_STATE
允许程序访问有关 GSM 网络信息 (Allows applications to access information about networks)
android.permission.ACCESS_SURFACE_FLINGER
允许程序使用 SurfaceFlinger 底层特性 (Allows an application to use SurfaceFlinger’s low level features)
android.permission.ACCESS_WIFI_STATE
允许程序访问 Wi-Fi 网络状态信息 (Allows applications to access information about Wi-Fi networks)
android.permission.ADD_SYSTEM_SERVICE
允许程序发布系统级服务 (Allows an application to publish system-level services).
android.permission.BATTERY_STATS
允许程序更新手机电池统计信息 (Allows an application to update the collected battery statistics)
android.permission.BLUETOOTH
允许程序连接到已配对的蓝牙设备 (Allows applications to connect to paired bluetooth devices)
android.permission.BLUETOOTH_ADMIN
允许程序发现和配对蓝牙设备 (Allows applications to discover and pair bluetooth devices)
android.permission.BRICK
请求能够禁用设备 (非常危险)(Required to be able to disable the device (very *erous!).)
android.permission.BROADCAST_PACKAGE_REMOVED
允许程序广播一个提示消息在一个应用程序包已经移除后 (Allows an application to broadcast a notification that an application package has been removed)
android.permission.BROADCAST_STICKY
允许一个程序广播常用 intents (Allows an application to broadcast sticky intents)
android.permission.CALL_PHONE
允许一个程序初始化一个电话拨号不需通过拨号用户界面需要用户确认 (Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call being placed.)
android.permission.CALL_PRIVILEGED
允许一个程序拨打任何号码,包含紧急号码无需通过拨号用户界面需要用户确认 (Allows an application to call any phone number, including emergency numbers, without going through the Dialer user interface for the user to confirm the call being placed)
android.permission.CAMERA
请求访问使用照相设备 (Required to be able to access the camera device.)
android.permission.CHANGE_COMPONENT_ENABLED_STATE
允许一个程序是否改变一个组件或其他的启用或禁用 (Allows an application to change whether an application component (other than its own) is enabled or not. )
android.permission.CHANGE_CONFIGURATION
允许一个程序修改当前设置,如本地化 (Allows an application to modify the current configuration, such as locale.)
android.permission.CHANGE_NETWORK_STATE
允许程序改变网络连接状态 (Allows applications to change network connectivity state)
android.permission.CHANGE_WIFI_STATE
允许程序改变 Wi-Fi 连接状态 (Allows applications to change Wi-Fi connectivity state)
android.permission.CLEAR_APP_CACHE
允许一个程序清楚缓存从所有安装的程序在设备中 (Allows an application to clear the caches of all installed applications on the device.)
android.permission.CLEAR_APP_USER_DATA
允许一个程序清除用户设置 (Allows an application to clear user data)
android.permission.CONTROL_LOCATION_UPDATES
允许启用禁止位置更新提示从无线模块 (Allows enabling/disabling location update notifications from the radio.)
android.permission.DELETE_CACHE_FILES
允许程序删除缓存文件 (Allows an application to delete cache files)
android.permission.DELETE_PACKAGES
允许一个程序删除包 (Allows an application to delete packages)
android.permission.DEVICE_POWER
允许访问底层电源管理 (Allows low-level access to power management)
android.permission.DIAGNOSTIC
允许程序 RW 诊断资源 (Allows applications to RW to diagnostic resources.)
android.permission.DISABLE_KEYGUARD
允许程序禁用键盘锁 (Allows applications to disable the keyguard)
android.permission.DUMP
允许程序返回状态抓取信息从系统服务 (Allows an application to retrieve state dump information from system services.)
android.permission.EXPAND_STATUS_BAR
允许一个程序扩展收缩在状态栏,android 开发网提示应该是一个类似 Windows Mobile 中的托盘程序 (Allows an application to expand or collapse the status bar.)
android.permission.FACTORY_TEST
作为一个工厂测试程序,运行在 root 用户 (Run as a manufacturer test application, running as the root user.)
android.permission.FLASHLIGHT
访问闪光灯,android 开发网提示 HTC Dream 不包含闪光灯 (Allows access to the flashlight)
android.permission.FORCE_BACK
允许程序强行一个后退操作是否在顶层 activities (Allows an application to force a BACK operation on whatever is the top activity.)
android.permission.FOTA_UPDATE
暂时不了解这是做什么使用的,android 开发网分析可能是一个预留权限.
android.permission.GET_ACCOUNTS
访问一个帐户列表在 Accounts Service 中 (Allows access to the list of accounts in the Accounts Service)
android.permission.GET_PACKAGE_SIZE
允许一个程序获取任何 package 占用空间容量 (Allows an application to find out the space used by any package.)
android.permission.GET_TASKS
允许一个程序获取信息有关当前或最近运行的任务,一个缩略的任务状态,是否活动等等 (Allows an application to get information about the currently or recently running tasks: a thumbnail representation of the tasks, what activities are running in it, etc.)
android.permission.HARDWARE_TEST
允许访问硬件 (Allows access to hardware peripherals.)
android.permission.INJECT_EVENTS
允许一个程序截获用户事件如按键、触摸、轨迹球等等到一个时间流,android 开发网提醒算是 hook 技术吧 (Allows an application to inject user events (keys, touch, trackball) into the event stream and deliver them to ANY window.)
android.permission.INSTALL_PACKAGES
允许一个程序安装 packages (Allows an application to install packages.)
android.permission.INTERNAL_SYSTEM_WINDOW
允许打开窗口使用系统用户界面 (Allows an application to open windows that are for use by parts of the system user interface.)
android.permission.INTERNET
允许程序打开网络套接字 (Allows applications to open network sockets)
android.permission.MANAGE_APP_TOKENS
允许程序管理 (创建、催后、 z- order 默认向 z 轴推移) 程序引用在窗口管理器中 (Allows an application to manage (create, destroy, Z-order) application tokens in the window manager. )
android.permission.MASTER_CLEAR 目前还没有明确的解释,android 开发网分析可能是清除一切数据,类似硬格机
android.permission.MODIFY_AUDIO_SETTINGS
允许程序修改全局音频设置 (Allows an application to modify global audio settings)
android.permission.MODIFY_PHONE_STATE
允许修改话机状态,如电源,人机接口等 (Allows modification of the telephony state – power on, mmi, etc.)
android.permission.MOUNT_UNMOUNT_FILESYSTEMS
允许挂载和反挂载文件系统可移动存储 (Allows mounting and unmounting file systems for removable storage.)
android.permission.PERSISTENT_ACTIVITY
允许一个程序设置他的 activities 显示 (Allow an application to make its activities persistent.)
android.permission.PROCESS_OUTGOING_CALLS
允许程序监视、修改有关播出电话 (Allows an application to monitor, modify, or abort outgoing calls)
android.permission.READ_CALENDAR
允许程序读取用户日历数据 (Allows an application to read the user’s calendar data.)
android.permission.READ_CONTACTS
允许程序读取用户联系人数据 (Allows an application to read the user’s contacts data.)
android.permission.READ_FRAME_BUFFER
允许程序屏幕波或和更多常规的访问帧缓冲数据 (Allows an application to take screen shots and more generally get access to the frame buffer data)
android.permission.READ_INPUT_STATE
允许程序返回当前按键状态 (Allows an application to retrieve the current state of keys and switches.)
android.permission.READ_LOGS
允许程序读取底层系统日志文件 (Allows an application to read the low-level system log files.)
android.permission.READ_OWNER_DATA
允许程序读取所有者数据 (Allows an application to read the owner’s data)
android.permission.READ_SMS
允许程序读取短信息 (Allows an application to read SMS messages.)
android.permission.READ_SYNC_SETTINGS
允许程序读取同步设置 (Allows applications to read the sync settings)
android.permission.READ_SYNC_STATS
允许程序读取同步状态 (Allows applications to read the sync stats)
android.permission.REBOOT
请求能够重新启动设备 (Required to be able to reboot the device.)
android.permission.RECEIVE_BOOT_COMPLETED
允许一个程序接收到 ACTION_BOOT_COMPLETED 广播在系统完成启动 (Allows an application to receive the ACTION_BOOT_COMPLETED that is broadcast after the system finishes booting.)
android.permission.RECEIVE_MMS
允许一个程序监控将收到 MMS 彩信,记录或处理 (Allows an application to monitor incoming MMS messages, to record or perform processing on them.)
android.permission.RECEIVE_SMS
允许程序监控一个将收到短信息,记录或处理 (Allows an application to monitor incoming SMS messages, to record or perform processing on them.)
android.permission.RECEIVE_WAP_PUSH
允许程序监控将收到 WAP PUSH 信息 (Allows an application to monitor incoming WAP push messages.)
android.permission.RECORD_AUDIO
允许程序录制音频 (Allows an application to record audio)
android.permission.REORDER_TASKS
允许程序改变 Z 轴排列任务 (Allows an application to change the Z-order of tasks)
android.permission.RESTART_PACKAGES
允许程序重新启动其他程序 (Allows an application to restart other applications)
android.permission.SEND_SMS
允许程序发送 SMS 短信 (Allows an application to send SMS messages)
android.permission.SET_ACTIVITY_WATCHER
允许程序监控或控制 activities 已经启动全局系统中 Allows an application to watch and control how activities are started globally in the system.
android.permission.SET_ALWAYS_FINISH
允许程序控制是否活动间接完成在处于后台时 Allows an application to control whether activities are immediately finished when put in the background.
android.permission.SET_ANIMATION_SCALE
修改全局信息比例 (Modify the global animation scaling factor.)
android.permission.SET_DEBUG_APP
配置一个程序用于调试 (Configure an application for debugging.)
android.permission.SET_ORIENTATION
允许底层访问设置屏幕方向和实际旋转 (Allows low-level access to setting the orientation (actually rotation) of the screen.)
android.permission.SET_PREFERRED_APPLICATIONS
允许一个程序修改列表参数 PackageManager.addPackageToPreferred () 和 PackageManager.removePackageFromPreferred () 方法 (Allows an application to modify the list of preferred applications with the PackageManager.addPackageToPreferred () and PackageManager.removePackageFromPreferred () methods.)
android.permission.SET_PROCESS_FOREGROUND
允许程序当前运行程序强行到前台 (Allows an application to force any currently running process to be in the foreground.)
android.permission.SET_PROCESS_LIMIT
允许设置最大的运行进程数量 (Allows an application to set the maximum number of (not needed) application processes that can be running. )
android.permission.SET_TIME_ZONE
允许程序设置时间区域 (Allows applications to set the system time zone)
android.permission.SET_WALLPAPER
允许程序设置壁纸 (Allows applications to set the wallpaper)
android.permission.SET_WALLPAPER_HINTS
允许程序设置壁纸 hits (Allows applications to set the wallpaper hints)
android.permission.SIGNAL_PERSISTENT_PROCESSES
允许程序请求发送信号到所有显示的进程中 (Allow an application to request that a signal be sent to all persistent processes)
android.permission.STATUS_BAR
允许程序打开、关闭或禁用状态栏及图标 Allows an application to open, close, or disable the status bar and its icons.
android.permission.SUBSCRIBED_FEEDS_READ
允许一个程序访问订阅 RSS Feed 内容提供 (Allows an application to allow access the subscribed feeds ContentProvider.)
android.permission.SUBSCRIBED_FEEDS_WRITE
系统暂时保留改设置,android 开发网认为未来版本会加入该功能。
android.permission.SYSTEM_ALERT_WINDOW
允许一个程序打开窗口使用 TYPE_SYSTEM_ALERT,显示在其他所有程序的顶层 (Allows an application to open windows using the type TYPE_SYSTEM_ALERT, shown on top of all other applications.)
android.permission.VIBRATE
允许访问振动设备 (Allows access to the vibrator)
android.permission.WAKE_LOCK
允许使用 PowerManager 的 WakeLocks 保持进程在休眠时从屏幕消失 (Allows using PowerManager WakeLocks to keep processor from sleeping or screen from dimming)
android.permission.WRITE_APN_SETTINGS
允许程序写入 API 设置 (Allows applications to write the apn settings)
android.permission.WRITE_CALENDAR
允许一个程序写入但不读取用户日历数据 (Allows an application to write (but not read) the user’s calendar data. )
android.permission.WRITE_CONTACTS
允许程序写入但不读取用户联系人数据 (Allows an application to write (but not read) the user’s contacts data. )
android.permission.WRITE_GSERVICES
允许程序修改 Google 服务地图 (Allows an application to modify the Google service map.)
android.permission.WRITE_OWNER_DATA
允许一个程序写入但不读取所有者数据 (Allows an application to write (but not read) the owner’s data.)
android.permission.WRITE_SETTINGS
允许程序读取或写入系统设置 (Allows an application to read or write the system settings.)
android.permission.WRITE_SMS
允许程序写短信 (Allows an application to write SMS messages)
android.permission.WRITE_SYNC_SETTINGS
允许程序写入同步设置 (Allows applications to write the sync settings)
android 平台上的权限许可分得很细,如果软件无法正常执行时看看是不是缺少相关的 permission 声明,最终我们还需要使用 android sign tools 签名生成的 apk 文件。
今天关于android – 如果用户拒绝在Oppo棒棒糖版本中使用permision,如何再次询问OPPO中的权限?的介绍到此结束,谢谢您的阅读,有关Android 6.0动态权限获取:一个EasyPermission的权限管理库、Android lollipop java.lang.SecurityException:用户和当前进程都没有android.permission.BLUETOOTH_PRIVILEGED、Android Lollipop (棒棒糖)使用份额终排第一、Android permission 访问权限列表等更多相关知识的信息可以在本站进行查询。
本文标签: