【发布时间】:2015-10-19 13:06:43
【问题描述】:
我正在使用以下代码在 twitter 上共享视频。如果设备中安装了应用程序,它可以正常工作,但如果应用程序不存在,则无法正常工作。即使设备中未安装应用程序,我如何在 twitter 上共享视频?
File f = new File(extras.getString("filepath"));
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("video/*");
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(f));
final PackageManager pm = mActivity.getApplicationContext().getPackageManager();
final List<ResolveInfo> activityList = pm.queryIntentActivities(shareIntent, 0);
for (final ResolveInfo app : activityList) {
if (("com.twitter.android.composer.ComposerActivity".equals(app.activityInfo.name)) || ("com.twitter.android.PostActivity".equals(app.activityInfo.name))) {
final ActivityInfo activity = app.activityInfo;
final ComponentName name = new ComponentName(activity.applicationInfo.packageName, activity.name);
shareIntent.addCategory(Intent.CATEGORY_LAUNCHER);
shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
shareIntent.setComponent(name);
mActivity.getApplicationContext().startActivity(shareIntent);
break;
}
}
【问题讨论】:
标签: android android-intent twitter share