twitter上的Android java共享-不创建twitter应用程序
在我的android应用程序上,我想在twitter上共享视频,为此我有以下代码:twitter上的Android java共享-不创建twitter应用程序,java,android,twitter,Java,Android,Twitter,在我的android应用程序上,我想在twitter上共享视频,为此我有以下代码: btnShareTwitter.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { videoMoreLayout.setVisibility(View.GONE); videoActions = new V
btnShareTwitter.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
videoMoreLayout.setVisibility(View.GONE);
videoActions = new VideoActions();
final String id = videoIDs[position];
if (!isOnline()) {
Toast.makeText(activity,
activity.getString(R.string.noInternetConnection),
Toast.LENGTH_SHORT).show();
} else {
String finalVideoName = null;
String arr[] = videoPathURL[position].split("/upload/videos/");
finalVideoName = (arr[arr.length-1]);
File DoutFile = new File(
Environment.getExternalStorageDirectory() +
File.separator + "vidytape_shared" + File.separator + finalVideoName);
Intent tweetIntent = new Intent(Intent.ACTION_SEND);
tweetIntent.setType("video/*");
tweetIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(DoutFile));
tweetIntent.putExtra(Intent.EXTRA_TEXT,
"" + activity.getResources().getString(R.string.app_name));
/*Intent tweetIntent = new Intent(Intent.ACTION_SEND);
tweetIntent.putExtra(Intent.EXTRA_TEXT,
videoPathURL[position]);
tweetIntent.setType("video/*");*/
PackageManager packManager = activity.getPackageManager();
List<ResolveInfo> resolvedInfoList = packManager
.queryIntentActivities(tweetIntent, 0);
boolean resolved = false;
for (ResolveInfo resolveInfo : resolvedInfoList) {
if (resolveInfo.activityInfo.name.equals("com.twitter.android.PostActivity")) {
ActivityInfo actInfo = resolveInfo.activityInfo;
ComponentName cName = new ComponentName(actInfo.applicationInfo.packageName, actInfo.name);
tweetIntent.addCategory(Intent.CATEGORY_LAUNCHER);
tweetIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
tweetIntent.setComponent(cName);
resolved = true;
break;
}
}
if (resolved) {
if(!DoutFile.exists()){
Toast.makeText(activity, "Preparing video. Please wait", Toast.LENGTH_LONG).show();
String downloadResult = videoActions.downloadToShare(token, activity, id, videoPathURL[position], finalVideoName);
if (downloadResult.equalsIgnoreCase("POST_FAILURE") || downloadResult.equalsIgnoreCase("FAILURE_102")) {
Toast.makeText(
activity,
activity.getString(R.string.someErrorOccurred),
Toast.LENGTH_SHORT).show();
}
}
activity.startActivity(tweetIntent);
} else {
Toast.makeText(
activity,
activity.getString(R.string.twitterNotInstalled),
Toast.LENGTH_LONG).show();
}
}
}
});
但是我收到了一条消息,twitter没有安装。。。我使用的是安卓4.4.2,我不知道它是否有什么用
提前感谢尝试使用com.twitter.applib.composer.textfirstComposer活动,而不是com.twitter.android.PostActivity。。查看更多信息欢迎来到StackOverflow。请勿使用“编辑问题”来发布答案,请使用下面的答案表单。