问题标签 [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.
java - Android 11 包可见性问题
我有一个从服务器下载 apk 的应用程序,但我无法像其他 android 版本一样启动它,即使我在 android manifest 中有查询标签
这是意图代码:-
这是我的清单文件
摇篮文件: -
我已允许我的应用程序在 android R preview 4 模拟器上安装未知应用程序的权限。
日志:-
我正在使用 android studio 4 并且 gradleversion 是 4.0.0 它只是一个错误还是我做错了什么,因为 chrome 设法意图安装 apk。
android - 如何使用 b4a 在 android 11(范围存储)中获得“所有文件访问”或“对文件夹的永久和完全访问”?
请提供任何样品
所有应用程序都可以获得“所有文件访问权限”吗?(比如 apk 文件非共享和游戏商店外?)
在获得“所有文件访问”或“访问存储文件夹”之后,我可以使用这样的文件地址吗
或者
和其他文件方法...?
安卓10呢?我应该只android:requestLegacyExternalStorage="true"
在清单中使用它吗?
android - IntentService 已弃用,如何将其替换为 JobIntentService?
FetchAddressIntentService
使用IntentService
(在 kotlin 中)实施后:
有没有人建议我如何IntentService
以JobIntentService
一种好的方式替换?
IntentService
在 Android-R / Android-11 中已弃用。
我已经尝试关注这方面的一些帖子,但没有人指导正确的路径如何以 AddressFetchIntentService 使用的方式将 IntentService 调用的可用性更改为 JobIntentService 调用IntentService
。
RG
java - 有没有办法使用 AccessibilityService 在对话框中单击超链接?
我正在尝试使用我的应用程序的辅助功能服务来使用辅助功能单击“允许设置”。我查看了 AccessibilityNode,但在 TextView 中看不到任何可交互的内容。这是节点的输出:
TextView 只有少数几个可用的操作。据我所知,我已经尝试了可用的操作,但没有成功。
我还探索了“允许设置”部分的直接意图的想法,但目前没有。我们的应用程序要求位置始终处于开启状态。
linux-kernel - 使用 clang-r383902 为 Android 11 (R) Beta 版本 1 编译 Linux 内核时出错
我正在使用安装了最新版本的平台工具和(我相信)所有必要依赖项的 Ubuntu 20.04 机器。
我创建了一个新目录 ~/beta1-kernel-coral 并在该目录中克隆了内核:
git clone -b android-msm-coral-4.14-r-beta-1 https://android.googlesource.com/kernel/msm/
我注意到使用的 clang 版本是 clang-r383902。我下载了这个目录并将其解压缩,以便在 ~/beta1-kernel-coral 中有两个单独的目录:msm 和 clang-r383902。
在 ~/beta1-kernel-coral/msm 中,我运行了两个命令:
接下来,使用来自 Github 的 Nathan Chance 指南,我运行了以下命令:
PATH="/home/jherwig/beta1-kernel-coral/clang-r383902/android_prebuilts_clang_host_linux-x86_clang-6443078-10.0/bin:/usr/bin:/usr/bin:${PATH}" make -j$(nproc --all) ARCH=arm64 CC=clang CLANG_TRIPLE=aarch64-linux-gnu- CROSS_COMPILE=aarch64-linux-android- CROSS_COMPILE_ARM32=arm-linux-androideabi-
内核开始编译,直到我收到以下输出:
在 Nathan 的指南中,他指导使用:
PATH="<path to clang folder>/bin:<path to 64-bit gcc folder>/bin:<path to 32-bit gcc folder>/bin:${PATH}" \ ...
由于我安装了 gcc-multilib,我认为<path to 64-bit gcc folder>
并且<path to 32-bit gcc folder>
会在 /usr/bin 中。当我输入which gcc
终端时,我得到/usr/bin/gcc。
android - 在 Android 11 上调用 getPackageInfo 时出现 NameNotFoundException
设置targetSdkVersion
为30
(Android 11)后,我在处理我知道存在的包android.content.pm.PackageManager$NameNotFoundException
时得到了。packageManager.getPackageInfo(packageName, PackageManager.GET_PERMISSIONS)
堆栈跟踪如下:
android - 如何使用 SAF 从树 URI 路径访问目录及其文件
我想选择一个目录中的所有文件,然后将这些文件的副本压缩版本存储在同一目录中。
如果我使用Intent.ACTION_OPEN_DOCUMENT_TREE
我得到一棵树Uri
,但我不知道如何获取其中包含的所有文件的文件 Uri 以及如何在目录本身中写入。
在文档中我找不到任何类似的用例。
在强制SAF之前,获取目录路径并使用标准 File 方法就足够了,不幸的是,现在所有基于 Files 和显式路径的过去方法都被这个 SAF 破坏了。
android - Android 11 无障碍服务权限
谁能解释一下 android 11 的可访问性操作/权限会发生什么?现在我正在使用辅助功能服务来做一些事情,而无需用户干预第三方应用程序。例如。WhatsApp。例如,我正在尝试构建一个语音助手类型的应用程序,该应用程序通过 Google 的语音 api 获取用户输入,然后根据该命令识别命令,使用辅助功能服务在 whatsapp 中执行操作。这个东西在 android 上运行得很好10. 那么,在这个流程中,我可以从 android 11 中获得哪些变化?
android - 使用存储访问框架有效地获取包含在子文件夹中的所有 DocumentFile
如果我尝试全部DocumentFile
使用它,则仅在第一级DocumentFile.fromTreeUri()
返回我,而没有子文件夹中的那些。DocumentFiles
Uri
如果为了获取所有DocumentFile
子文件夹,我尝试检查什么DocumentFile
是目录,Uri
在使用的方法中递归传递它DocumentFile.fromTreeUri()
,整个过程非常慢。
有没有更好的方法来做到这一点(没有使用经典存储访问的方法)?
编辑
上面的方法,实际上它不仅仅是慢,而是完全卡住了。这是因为文件夹的对象总是返回根文件列表而不是它们的内容列表,因为这里DocumentFile
解释了奇怪的 SAF 行为,这导致了循环。
android - 在子目录 DocumentFile 对象的 Uri 上调用 DocumentFile.fromTreeUri() 时的意外行为
如果我调用 DocumentFile.fromTreeUri()
主目录并列出其内容,它将DocumentFile
按预期返回与目录中包含的文件夹和文件相关的所有对象,但是当我尝试调用DocumentFile.fromTreeUri()
其中Uri
一个DocumentFile
文件夹时,而不是返回所有DocumentFile
相关对象按预期到子目录中包含的文件夹和文件,它实际上在其根目录上返回完全相同的调用内容Uri
例如,我有一个包含 3 个文件的下载文件夹和一个包含 2 个文件的子文件夹,其中包含以这种方式构建的
如果我调用 通过意图回调选择DocumentFile.fromTreeUri().listFiles()
的下载文件夹
它会返回我Uri
content://com.android.externalstorage.documents/tree/primary%3ADownload
到目前为止一切都很好,现在如果我尝试获取与调用相关Uri
的DocumentFile
对象,我会得到这显然看起来是正确的,但是如果我调用它,当我列出它的内容时,我会再次得到Subfolder
mysub.getUri()
content://com.android.externalstorage.documents/tree/primary%3ADownload/document/primary%3ADownload%2FSubfolder
DocumentFile.fromTreeUri().listFiles()
与主下载文件夹 Uri 上的调用完全相同。如果我mysub.listFiles()
直接打电话也会发生同样的情况。这似乎是一个完全不合逻辑的设计。
我如何才能真正DocumentFile
从与其父级相关的子文件夹中正确获取与子文件夹相关的对象DocumentFile
,以便子文件夹DocumentFile
可以列出其内容而不是其父级的内容?