Articles of 权限

如何在Android中绑定到小于1024的端口?

我有一个Android服务试图绑定到服务器套接字端口24.因为它是特权端口,它失败了绑定exception。 我想知道我需要做些什么来使这个工作。 我看到这个论坛有几次被问过,但没有解决方案。 此服务在Android上运行的设备上运行。 我们为设备构建了android平台。 我们拥有所需的一切控制权。

在运行时授予用户权限后,Android 6.0需要重新启动

我按照本指南要求获取Android 6.0的权限, https://developer.android.com/preview/features/runtime-permissions.html#support-lib 但是,我必须销毁我的应用程序并重新启动以实际拥有WRITE_EXTERNAL_STORAGE权限,否则它将继续无法创建文件。 我错过了什么吗? if(ActivityCompat.checkSelfPermission(mContext, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_DENIED){ ActivityCompat.requestPermissions((MainActivity)mContext,new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},MY_PERMISSION_REQUEST_WRITE_EXTERNAL_STORAGE); } else { Intent i = new Intent(v.getContext(), ServiceDownload.class); v.getContext().startService(i); } 文件在服务中创建,这是模拟器而不是真实设备。

Firebase +权限

我刚刚将一个应用程序从Firebase 9.0.0更新到Firebase 9.0.2。 我使用短信+广告。 compile ‘com.google.firebase:firebase-messaging:9.0.2’ compile “com.google.firebase:firebase-ads:9.0.2″ 现在已经出现了很多不必要的许可 android:name=”android.permission.READ_PHONE_STATE” android:name=”android.permission.READ_EXTERNAL_STORAGE” android:name=”android.permission.WRITE_EXTERNAL_STORAGE” 我没有在任何地方添加这些权限,因此它们必须来自Firebase。 我知道我的客户不喜欢这些权限,所以我删除了它们 我的应用程序仍然有效,消息和广告仍然有效,但我仍然怀疑我的怀疑。 为什么Firebase会添加这些权限,是否可以像我一样删除它们?

Google Play会显示隐含的READ_EXTERNAL_STORAGE权限

当在Google I / O上宣布Android 4.1 JellyBean(API 16)时,它引入了以下权限: READ_EXTERNAL_STORAGE 提供对外部存储的受保护读访问。 在Android 4.1中,默认情况下所有应用程序仍具有读取权限。 这将在将来的版本中进行更改,以要求应用程序使用此权限明确请求读取访问权限。 如果您的应用程序已经请求写访问权限,它也将自动获得读取权限。 有一个新的开发人员选项可以打开读取访问限制,开发人员可以根据Android将来的行为来测试他们的应用程序。 http://developer.android.com/about/versions/android-4.1.html#Permissions 我有一个tagets API 16的应用程序,需要WRITE_EXTERNAL_STORAGE权限。 我准备部署更新,并注意到READ_EXTERNAL_STORAGE权限现在在开发人员门户中列为必需权限。 对于上周部署的更新,它未在Google Play中列为必需的权限。 此应用程序未明确请求READ_EXTERNAL_STORAGE权限。 已经为此应用程序授予WRITE_EXTERNAL_STORAGE权限的用户是否会在更新应用程序时被提示授予其他隐式READ_EXTERNAL_STORAGE权限? 更新: 我们已经发布了应用程序,JellyBean设备会自动更新,而不会请求READ_EXTERNAL_STORAGE权限。 在将来的版本中,当我明确声明READ_EXTERNAL_STORAGE的要求时,是否会要求已授予WRITE_EXTERNAL_STORAGE权限的用户授予READ_EXTERNAL_STORAGE权限?

无法在Android模拟器中写入SD卡

我在AndroidManifest.xml中添加了这一行: 但是,当我运行代码写入SD卡时,我收到此错误: 02-19 13:24:46.760: E/CameraTest(598): /mnt/sdcard/image.jpg: open failed: EACCES (Permission denied) 我该如何解决这个问题? 编辑:我正在使用添加了SDCard的Android模拟器。 编辑-2:我知道现在的问题是:我已经调用了函数Environment.getExternalStorageState()并且我被“删除”了。 任何人都知道如何解决这个问题并使状态为MEDIA_MOUNTED 谢谢!

以编程方式更改Manifest – Android自定义权限

当前的Android权限系统会导致以下问题 : App A定义了以下的自定义权限: com.package.permission.READ_APP_DATA 当安装了应用程序B声明自定义权限时,它将被授予。 但是,如果在应用B之后安装了应用A,则该权限不会授予应用B. 虽然这可能不常见,但由于应用程序B经常是应用程序A的插件,它当然可以发生并适用于我的应用程序。 由于SuperUser应用程序同意引入android.permission.ACCESS_SUPERUSER的全局自定义权限,如果用户决定切换SuperUser应用程序,这可能是一个大问题。 为了解决这个问题,我打算在我的应用程序中使用以下代码来获取我即将开始声明的自定义权限: checkPermissions(this, getCallingActivity().getPackageName()); // get the package name from the sender first private boolean checkPermissions(Context context, String callingPackage) { final List apps = context.getPackageManager().getInstalledPackages(PackageManager.GET_PERMISSIONS); for (PackageInfo pi : apps) { if (pi.packageName.equals(callingPackage)) { String[] permissions = pi.requestedPermissions; if (permissions != null) { for (String permission : […]

如何以编程方式在应用设置中打开应用程序权限窗口

我正在研究新的权限模型(Android 6.0 Marshmallow),我想知道有没有办法以编程方式打开应用程序的权限窗口? 不仅仅是申请细节 我设法用这样的东西打开第二个屏幕 private void goToSettings() { Intent myAppSettings = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, Uri.parse(“package:” + getPackageName())); myAppSettings.addCategory(Intent.CATEGORY_DEFAULT); myAppSettings.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(myAppSettings); } 但我不知道如何打开第一个。 非常感谢您的帮助:)

使用Android 6.0未经许可捕获图像

我需要让用户使用Android 6.0拍照(来自图库或相机应用)。 因为我不需要控制相机,所以我想使用这里描述的意图: 但是,如果您不需要此类控件,则只需使用ACTION_IMAGE_CAPTURE意图来请求图像。 当您启动意图时,系统会提示用户选择相机应用程序(如果还没有默认的相机应用程序),该应用程序将拍摄照片。 相机应用程序将图片返回到应用程序的onActivityResult()方法。 https://developer.android.com/preview/features/runtime-permissions.html 但是对于这个ACTION_IMAGE_CAPTURE ,你需要将额外的“MediaStore.EXTRA_OUTPUT”填充到一个临时文件(没有这个参数,我只有一个缩略图)。 此临时文件必须位于外部存储中(可由相机应用程序访问)。 您需要WRITE_EXTERNAL_STORAGE权限才能在外部存储上创建文件。 因此,如果没有android.permission.CAMERA或android.permission.WRITE_EXTERNAL_STORAGE 权限,则无法通过原生对话框/应用程序捕获图像。 那是对的吗? 谢谢

Android webview:像浏览器一样下载文件

我正在开发一款Android应用程序,其webview指向另一个团队的动态网站。 当我下载文件(主要是动态重定向的 PDF和ZIP)时, 我得到的是下载文件夹中的一个文件,其中包含一些HTML代码,其中包含“用户不允许读取文件”等消息 ,无论我如何实现下载,尝试: 下载管理器 意图(让外部浏览器管理下载) “手工”(AsyncTask和httpconnection ……) 都具有相同的结果。 使用普通浏览器进行导航下载工作正常,无论是在台式PC,Android还是iOS设备上 。 为什么webview不能访问文件? 可能会议问题? http端口? 我真的需要一些想法…… 另一个提示:当从同一个链接下载两次文件时,该链接将重定向到同一个文件,但会产生两个不同的文件名… 编辑 :我没有将webView指向网络应用程序,而是试图指向一个带链接重定向的常见网页来下载另一个文件,好吧,简单地说就可以了。 以下是webview.setDownloadListener – onDownloadStart()参数: userAgent=Mozilla/5.0 (Linux; Android 4.4.2; Nexus 7 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Safari/537.36 contentDisposition=attachment; filename=correct_filename.pdf, url=http://www.xxx.xx/site/downloadfile.wplus?REDIRECTFILE=D-507497120&ID_COUNTOBJ=ce_5_home&TYPEOBJ=CExFILE&LN=2 mimeType=application/octet-stream 这是一些代码 wv.getSettings().setSupportMultipleWindows(true); wv.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); wv.getSettings().setAllowFileAccess(true); wv.getSettings().setJavaScriptEnabled(true); wv.getSettings().setBuiltInZoomControls(true); wv.getSettings().setDisplayZoomControls(false); wv.getSettings().setLoadWithOverviewMode(true); wv.getSettings().setUseWideViewPort(true); wv.setDownloadListener(new DownloadListener() { @Override public void […]

Android应用内购买:在定位Android 6时,是否需要检查com.android.vending.BILLING权限?

在实施应用内结算或IAB时, 文档会说您必须将其添加到清单中: 从Android 6开始,如果用户已授予不属于“ 普通 ”权限类别的权限,则应在运行时检查应用程序。 请注意,在API级别23, com.android.vending.BILLING未列在此类别下的任何位置。 所以… 如果不正常,这是否意味着危险? 在使用IAB之前是否需要检查权限? 如果我这样做,怎么样? 我找不到任何与新的Android 6权限模型集成的IAB示例。 例如,在Manifest.permission下似乎没有任何与计费相关的权限。