【问题标题】:Open facebook link in chooser with browsers使用浏览器在选择器中打开 facebook 链接
【发布时间】:2020-11-24 09:13:16
【问题描述】:

Сan 我们打开 facebook 链接,以便查看内容的应用程序的菜单选择仍然和 facebook 浏览器?标准启动

fun openLink(link: String) {
    Intent(Intent.ACTION_VIEW).apply {
        flags = Intent.FLAG_ACTIVITY_NEW_TASK
        data = Uri.parse(link)

        context.startActivity( this)
    }
 }

只打开浏览器,并且某些浏览器,例如 chrome 和 edge,运行另一个浏览器,然后出现 facebook(如果已安装),我唯一能找到的是直接打开到 facebook 的链接,如果它已安装,无法选择应用程序打开链接

Intent(Intent.ACTION_VIEW).apply {
            flags = Intent.FLAG_ACTIVITY_NEW_TASK
            try {
                val applicationInfo: ApplicationInfo = 
                       packageManager.getApplicationInfo("com.facebook.katana", 0)
                if (applicationInfo.enabled) {
                    // http://stackoverflow.com/a/24547437/1048340
                    data = Uri.parse("fb://facewebmodal/f?href=https://facebook.com/")
                }
            } catch (ignored: PackageManager.NameNotFoundException) {
                data = Uri.parse("https://facebook.com/")
            }

            startActivity(this)
        }
  1. what i have
  2. what i want and what chorme send after open facebook link

【问题讨论】:

    标签: android facebook android-intent


    【解决方案1】:

    你熟悉EXTRA_INITIAL_INTENTS吗?创建两个单独的Intents(如果 fb 应用存在并启用)并加入它们

    Intent chooserIntent = Intent.createChooser(browserIntent, "Open in...");
    if (fbIntent != null) {
        chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[] { fbIntent });
    }
    startActivity(chooserIntent);
    

    HEREHERE 中的更多信息

    【讨论】:

      猜你喜欢
      • 2012-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多