gpt4 book ai didi

android - 为什么 Intent.EXTRA_INITIAL_INTENTS 在 android 10 中不起作用

转载 作者:行者123 更新时间:2023-12-04 12:32:29 45 4
gpt4 key购买 nike

我正在尝试分享一些文字,在 Android 10 中始终显示最多 3 个应用程序 in my mobile have WhatsApp but this not displaying here

此代码在 10 台以下设备中正常工作,但找不到在 android 10 中被过滤掉的原因。

fun onShareClick() {
val intentShareList = ArrayList<Intent>()
val shareIntent = Intent()
shareIntent.action = Intent.ACTION_SEND
shareIntent.type = "text/plain"
val resolveInfoList = packageManager.queryIntentActivities(shareIntent, 0)
for (resInfo in resolveInfoList) {
val packageName = resInfo.activityInfo.packageName
val name = resInfo.activityInfo.name
if (packageName.contains("com.facebook") ||
packageName.contains("com.twitter.android") ||
packageName.contains("com.google.android.gm") ||
packageName.contains("com.android.mms") ||
packageName.contains("com.whatsapp")
) {
val intent = Intent()
intent.component = ComponentName(packageName, name)
intent.action = Intent.ACTION_SEND
intent.type = "text/plain"
intent.putExtra(Intent.EXTRA_SUBJECT, "Your Subject")
intent.putExtra(Intent.EXTRA_TEXT, "Your Content")
intentShareList.add(intent)
}
}
if (intentShareList.isEmpty()) {
Toast.makeText(this@MainActivity, "No apps to share !", Toast.LENGTH_SHORT).show()
} else {
val chooserIntent = Intent.createChooser(intentShareList.removeAt(0), "Share via")
chooserIntent.putExtra(
Intent.EXTRA_INITIAL_INTENTS,
intentShareList.toTypedArray()
)
startActivity(chooserIntent)
}
}

intentShareList包含 WhatsApp 信息但不显示

最佳答案

我认为您应该使用初始 Intent 创建您的选择器,并将您的 intentShareList 添加为额外的,如下所示:

val chooserIntent = Intent.createChooser(shareIntent, "Share via")
chooserIntent.putExtra(
Intent.EXTRA_INITIAL_INTENTS,
intentShareList.toTypedArray()
)
startActivity(chooserIntent)

我想它会带来你想要的。让我知道它是否有帮助:)

编辑:即使你在你的 shareIntent 上加上一个初始的 EXTRA_INTENT 和一个类型,Android Q 也会忽略你在 EXTRA_INITIAL_INTENTS 上添加的内容,所以它不会有帮助

我正在阅读关于该问题的相关内容,我认为它不会被修复,看看 = https://issuetracker.google.com/issues/134367295

另外,文档中有一些信息说不推荐使用EXTRA_INITIAL_INTENTS来个性化数据,它是为了帮助共享链接,它可以减少将出现的应用程序,看看= https://developer.android.com/training/sharing/send

好吧,我对此感到非常难过,我还想做什么,也许是一个独特的文字...... :(

关于android - 为什么 Intent.EXTRA_INITIAL_INTENTS 在 android 10 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59786777/

45 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com