如何通过 Android 应用程序的链接重定向到 youtube 应用程序?
Posted
技术标签:
【中文标题】如何通过 Android 应用程序的链接重定向到 youtube 应用程序?【英文标题】:How to redirect to youtube app through link from Android app? 【发布时间】:2020-07-16 22:37:32 【问题描述】:在我的 UI 中,我有一个 textview 来显示列表内容。我为该文本视图启用了自动链接和应用程序选择器对话框。如果将 youtube 链接作为内容(如 https://youtu.be/x),从应用选择器对话框中选择 youtube 应用后,youtube 应用将打开并显示错误屏幕(错误代码 400)。 我不确定它为什么会发生。我在下面提供了我的代码。
public static void getAppChooserDialog(Context context, String url)
List<Intent> targetedShareIntents = new ArrayList<>();
List<String> sharePackages = new ArrayList<>();
List<ResolveInfo> resInfo = context.getPackageManager().queryIntentActivities(createViewIntent(url),0);
if (!resInfo.isEmpty())
for (ResolveInfo info : resInfo)
Intent targetedShare = createViewIntent(url);
if (!info.activityInfo.packageName.equalsIgnoreCase(context.getPackageName()) &&
!sharePackages.contains(info.activityInfo.packageName))
if (targetedShare != null)
targetedShare.setPackage(info.activityInfo.packageName);
sharePackages.add(info.activityInfo.packageName);
targetedShareIntents.add(targetedShare);
if(!targetedShareIntents.isEmpty())
Intent chooserIntent = Intent.createChooser(targetedShareIntents.remove(0),
context.getString(R.string.complete_action_using));
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS,
targetedShareIntents.toArray(new Parcelable[]));
context.startActivity(chooserIntent);
private Intent createViewIntent(String url)
Intent shareIntent = new Intent(Intent.ACTION_VIEW);
shareIntent.setData(Uri.parse(url));
return shareIntent;
【问题讨论】:
【参考方案1】:YouTube 应用不支持使用普通网址的意图(不知道为什么)。
对于网址https://youtu.be/videoId
,您需要分享vnd:youtube:videoId
【讨论】:
以上是关于如何通过 Android 应用程序的链接重定向到 youtube 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
302 使用 Dropbox 短超链接在 Android 中从 http 重定向到 https
使用 Android 应用链接作为 OAuth2 重定向 URI