RxPermissions rxPermissions = new RxPermissions(this); // where this is an Activity instance // Must be done during an initialization phase like onCreate
rxPermissions
.request(Manifest.permission.CAMERA)
.subscribe(granted -> {
if (granted) { // Always true pre-M
// I can control the camera now
} else {
// Oups permission denied
}
});
9 回答
假设您没有从
LogCat
错误描述中设置权限,这里是我的AndroidMainfest.xml
文件的内容,可以访问互联网:除此之外,您可以从互联网上下载文件 .
如果有人会遇到同样的问题,那么错误的情况意味着你的申请将无法获得许可 .
WRONG
CORRECT
这个问题可能会发生,即 . 在IDE中自动完成
如果您正在使用Eclipse ADT插件进行开发,请在Android Manifest Editor中打开
AndroidManifest.xml
(应该是从项目文件列表中打开AndroidManifest.xml
的默认操作) .然后,选择编辑器底部的
Permissions
选项卡(Manifest - Application - Permissions - Instrumentation - AndroidManifest.xml
),然后单击Add...
aUses Permission
并从右侧的下拉列表中选择所需的权限,或者只需复制必要的权限(例如您需要的android.permission.INTERNET
权限) .将以下行复制到应用程序清单文件并粘贴到
<application>
标记之前 .将权限放在
<application/>
标记下面会有效,但会给你警告 . 因此,请务必将其放在<application/>
标签声明之前 .使用eclipse时,请按照以下步骤操作
1)双击清单以在编辑器上显示它
2)单击清单编辑器下方的“权限”选项卡
3)单击“添加”按钮
4)在出现的对话框上单击使用权限 . (通常是列表中的最后一项)
5)注意出现在rigth侧的视图选择"android.permission.INTERNET"
6)然后一系列好的,最后保存 .
希望这可以帮助
只需将此添加到您的Android清单:
在为您的应用程序添加INTERNET权限的上下文中,这可能也很有趣:
资料来源:http://www.howtogeek.com/190863/androids-app-permissions-were-just-simplified-now-theyre-much-less-secure/
最重要的是,您仍然需要在清单文件中添加INTERNET权限,但应用程序将在用户的设备上更新,而不会要求他们获得新的权限 .
我迟到但我想完成答案 .
在
manifest.xml
中添加了权限虽然如果它是一个危险的权限,它是不足以添加清单的权限 . 见android doc . 像相机,存储权限 .
你需要ask permission from user . 我使用广泛使用的库RxPermission库来获取权限 . 因为是请求许可所以写的长代码 .
将此库添加到您的应用程序