问题标签 [android-11]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
57997 浏览

java - requestLegacyExternalStorage 在 Android 11 - API 30 中不起作用

Google 最近在 API 29 中引入了一些与存储 API 相关的更改,例如范围存储,我们通过在 Manifest 中添加“requestLegacyExternalStorage=true”来选择退出。但是现在当我以 SdkVersion 30 为目标时,这似乎不再起作用。此更改后,下载目录中的某些文件未列出 (File.listFiles)。

0 投票
1 回答
603 浏览

android - Android R new Api isAutoRevokeWhitelisted() 总是给 false 即使手动权限重置打开/关闭

因此,在 Android R 上,用户现在可以选择允许操作系统在应用未使用它们时撤销给定的权限。此新设置将在应用设置的权限部分提供(请查看屏幕截图以供参考),默认情况下,根据当前 beta 行为关闭

https://developer.android.com/preview/privacy/permissions#auto-reset

在此处输入图像描述

添加了一个 api 来跟踪您的应用当前是否在给定的白名单中

https://developer.android.com/reference/android/content/pm/PackageManager#isAutoRevokeWhitelisted()。我尝试对此进行测试,但即使我打开或关闭设置,api 总是返回 false。想知道是否还有其他人遇到过这个问题。

我检查了日志,我可以看到一些日志,这让我觉得即使在打开选项后它实际上并没有被添加到白名单中

0 投票
0 回答
585 浏览

android-studio - cordova.file.getExternalCacheDir() 在 android 11 模拟器中返回 null

我正在尝试使用 android studio 中提供的 android 11 模拟器测试我的混合应用程序。但是,在请求filesystem时,cordova文件插件正在null返回externalRootDirectory. 在我的代码中,我检查了这个值来初始化 app 文件夹,现在它不工作了。

我用过cordovaandroid 8.0.0,cordova文件插件6.0.2,文件传输1.7.0。

有人在 android 11 中测试时遇到同样的问题吗?

编辑:

在cordova文件插件中调试时,我们发现cordova在android 11模拟器中没有提供外部缓存目录的路径。有人知道这个变化吗?

0 投票
4 回答
21216 浏览

android - 无法启动 AVD

我安装了最新版本的 Android Studio Android Studio 4.0.1。然后在我打开 Android Studio 并创建示例项目之后。然后我打开 AVD 管理器并“创建虚拟设备”,然后在我下载 Android 10.0+ API 30 级模拟器之后。问题是 AVD 未启动。请检查图像

电脑配置:

Window 7 Professional,Service Pack 1, 8GB RAM,64-bit,intel core i3,Asus

AVD 管理器

虚拟设备配置 我已经在我的电脑中启用了 VT-x

0 投票
2 回答
1432 浏览

android - Android R - ACTION_IMAGE_CAPTURE 的 startActivity 显示不同的选项可供选择

我的目标是我的应用程序支持 30 (R)。我注意到调用这个时缺少一些应用程序可供选择:

当定位到 29 时,此代码会在拍照前显示几个可供选择的应用程序:

  • 原生相机应用
  • B612 相机应用程序

定位到30后,直接打开相机应用(没有选项可以选择)。

我查看了 android 11 的更改,但没有看到任何特别之处。我这边有什么需要改变的吗?

感谢阅读/帮助

0 投票
2 回答
440 浏览

android - 一次性权限导致后台计划作业和警报被取消

我们开发了一个 Android SDK,在测试 Android 11 Beta 时,我们发现了一个似乎尚未报告的问题。

在 Android 11 中,为位置、麦克风和相机权限引入了新的一次性权限。使用此选项,一旦用户离开应用程序,权限就会被撤销(更多细节可以在这里找到)。

问题是在应用程序不再处于前台的短时间内(没有必要杀死应用程序,只需最小化就足够了),所有未来计划的警报或作业都会被删除,就好像应用程序是强制的被杀。这只发生在此级别的权限下。拒绝或提供其他级别会按预期保留先前安排的警报或作业。我们已经在 Beta 3 版本中重现了这一点,它是在具有 RPB3.200720.005 版本号的 Pixel 2 模拟器中。在这个repo中,你可以找到一个用于重现 bug 的示例应用程序。

这个单一的活动应用程序安排在接下来的五分钟内响起警报,以及在 5-6 分钟内触发的工作。屏幕上有三个按钮,每个按钮触发相应的权限请求。JobService 和 BroadcastReceiver 类仅记录它们已被触发。通过以下步骤可以重现这种情况:

  1. 每当启动应用程序时,都可以同时运行adb shell dumpsys alarm | grep com.example.permissions.appadb shell dumpsys jobscheduler | grep com.example.permissions.app查看警报和作业都已安排;
  2. 单击任一按钮并授予一次性权限级别;
  3. 最小化应用程序(您可以转到主屏幕或打开其他应用程序);
  4. 大约一分钟后,同时运行adb shell dumpsys alarm | grep com.example.permissions.appadb shell dumpsys jobscheduler | grep com.example.permissions.app。警报和作业将不再出现;
  5. 等待作业和警报的原始计划时间(对系统延迟宽容)将表明它们不会被触发。

大家有遇到过类似的情况吗?我们的直觉是,为了撤销一次性权限,应用程序进程会以某种方式被杀死,从而导致这些副作用。我们还在Android 问题跟踪器上提交了一个问题,如果 Google 回答,我们将保持更新此帖子。

0 投票
1 回答
195 浏览

android - 如何将文件从我的应用程序的内部存储移动到Android Q(10)中手机的下载目录?

似乎getExternalStoragePublicDirectory()现在已弃用,所以我需要一个替代方案。

假设我已经foo.png在我的应用程序的内部存储中提交了文件。我可以很容易地访问这个文件

我的问题是我想将此文件移动到用户的下载目录,以便他们可以在手机上看到它。

这个答案使用DownloadManager. 不幸的是,这是我自己生成的图像,不是从某个地方下载的。

0 投票
0 回答
51 浏览

android - Accessing Android 11 Permission Labels

In Android 11 new "One Time" permission where introduced alongside normal permission like "When In Use".

When the user selects "One Time" permission we get the same permission array as "When in Use" we can verify whether the below permission are accepted.

Is there any sort of differentiation which is available for using that data to be sent to Analytics. So we can track what sort of permission are the users providing.

0 投票
1 回答
1102 浏览

android - Android 11 Preview - Facebook 登录不起作用

切中要害。

  • 我已经实现了 Facebook 登录,几乎是这样:https ://developers.facebook.com/docs/facebook-login/android/
  • 当使用 API 29 (Android 10) 编译时,它工作得非常好
  • 但是,如果我使用 API 30 (Android 11) 编译它并在安装了 Android 11 Preview 的 Pixel 设备上运行,Facebook 登录将停止按预期工作,并且我不断收到一个登录 Facebook 的对话框,即使我已登录到应用程序它自己。
  • 使用 API 30 (Android 11) 编译并在 Android 10 或更低版本上运行非常好。

我没有来自 logcat 的任何东西,因为没有任何东西与此相关。

其他人有这个吗?

干杯

0 投票
2 回答
235 浏览

android - GWP-ASan 是否需要 Android 11 设备?

文档GWP-ASan is available on apps that target Android 11 (API level 30) or higher但没有提到对设备的任何要求。

同样,清单文档gwpAsanModeAdded in API level 30但没有提到对设备的任何要求。

我的目标是 API 级别 30 并启用了 GWP-Asan,我试图触发它只是为了证明它正在工作。我遵循文档中示例中的模式进行数千次释放后使用,但它没有触发。我想知道这是否是因为我正在 Android 7 设备上进行测试(我手头没有 Android 11 设备)。