我正在将 twitter 集成到我的应用程序中,并希望显示 iphone 中可用的 twitter 帖子对话框,如下图所示。
我们可以在 Android 中有这个对话框吗?如何?
我正在将 twitter 集成到我的应用程序中,并希望显示 iphone 中可用的 twitter 帖子对话框,如下图所示。
我们可以在 Android 中有这个对话框吗?如何?
我认为尝试将 UI 从一个平台复制到另一个平台是个坏主意。
我建议您使用共享意图:
http://mobile.tutsplus.com/tutorials/android/android-sdk-implement-a-share-intent/
http://developer.android.com/training/sharing/send.html
它非常易于使用并与平台集成。
如果已安装,您可以通过从共享意图中查找 twitter 应用程序来做到这一点,但如果没有,您可以处理该情况并打开您的 twitter 应用程序页面,如下面的代码所示,因为我发现 twitter4j 难以集成并给出不一致的结果。
Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "subject");
shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, " text";
final PackageManager pm = v.getContext().getPackageManager();
final List<ResolveInfo> activityList = pm.queryIntentActivities(shareIntent, 0);
boolean twtchk=false;
for (final ResolveInfo app : activityList) {
if ("com.twitter.android.PostActivity".equals(app.activityInfo.name)) {
final ActivityInfo activity = app.activityInfo;
System.out.println("package==="+activity.applicationInfo.packageName);
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);
v.getContext().startActivity(shareIntent);
twtchk=true;
break;
}
}
if(!twtchk)
{
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/yourapp"));
startActivity(intent);
}
在 xml 中创建此视图并使用它。这是使用 twitter4j 在 twitter 上发布字符串的教程