32得票4回答
安卓6:不能再共享文件了吗?

我正在分享一张图片,对于Android 6之前的设备,以下代码可以正常工作:Intent shareIntent = new Intent(Intent.ACTION_SEND); shareIntent.setType("image/*"); Uri uri = Uri.fromFile(n...

32得票9回答
在Marshmallow中获取本地蓝牙MAC地址

在安卓6.0之前,我的应用程序可以通过BluetoothAdapter.getDefaultAdapter().getAddress()获取设备的MAC地址。 现在,使用安卓6.0,返回值是02:00:00:00:00:00。 我看到一些链接(抱歉,现在不确定在哪里),称需要添加额外的权限...

32得票5回答
Android 自定义权限 - 棉花糖

背景 历史上,Android自定义权限一直很混乱并且安装顺序依赖性很强,这已经被证明会暴露漏洞。 在API 21之前,有一种令人不安的解决方法,即在您的清单中声明另一个应用程序的自定义权限,即可授予权限...但是,自API 21以来,只有一个应用程序可以声明自定义权限,并且进一步声明此相同...

32得票1回答
在Android 6.0 Marshmallow (API 23)中,FileObserver在外部存储上不起作用。

我有一个应用程序,使用FileObserver观察外部存储上的公共目录。在Lollipop设备上可以正常工作。我想添加对Marshmallow的支持,因此我设置了一个配备了Marshmallow的Nexus 9平板电脑。 在Marshmallow设备上失败了,在Lollipop设备上没问题。...

31得票5回答
需要API 23(当前最低版本为14):android.app.Activity#requestPermissions,checkSelfPermission。

我正在尝试在 Android (6.0.1) API 23 中添加运行时权限。如果我使用 SDK 版本(最小和目标版本都为 23),那么它可以正常工作,就像下面这样: <uses-sdk android:minSdkVersion="23" ...

30得票2回答
在安卓6.0中的ConnectivityManager.requestNetwork

我正在尝试使用ConnectivityManager.requestNetwork(NetworkRequest, ConnectivityManager.NetworkCallback)获取新的ConnectivityManager.bindProcessToNetwork(Network)...

30得票6回答
Android的getAllNetworkInfo()已经被弃用,有什么替代品?

我想使用ConnectivityManager来检查Android中网络的可用性,它提供了getAllNetworkInfo()方法。但是这个方法在API 23级别已被弃用,并且开发者文档建议使用getAllNetworks()替代它。我尝试过,但无法获得与旧代码完全相同的功能。请有经验的人指...

30得票5回答
Android M: 以编程方式撤销权限

我目前正在研究 Android M 的新权限系统。 我的计划是在应用程序设置中添加一个屏幕,让用户可以授予或撤消权限。 这个屏幕看起来像常规的系统设置屏幕,但会附加说明为什么我的应用需要特定的权限。这个设置屏幕将是常规权限处理的补充,如 文档 所建议的那样。 工作流程如下: 授予权限:...

29得票1回答
如何调试/重置Android 6.0权限?

在将我的应用程序迁移到使用Android 6.0权限系统时,我发现使用模拟器调试权限非常困难。 发现: 在应用信息屏幕禁用权限后,使用requestPermissions()方法不会重新显示授予权限对话框。 重新安装应用似乎是唯一的方法,使应用程序再次显示授予权限对话框。 使用An...

29得票5回答
CollapsingToolBarLayout - 状态栏阴影颜色不会改变

我在几天前更新了我的Android Studio并开始使用CoordinatorLayout和CollapsingToolbarLayout试验一些东西。 似乎Toolbar的Scrim颜色覆盖了状态栏的初始颜色和状态栏Scrim颜色(尝试过从xml和代码中都试过) 初始状态: ...