6

我正在将 twitter 集成到我的应用程序中,并希望显示 iphone 中可用的 twitter 帖子对话框,如下图所示。

在此处输入图像描述

我们可以在 Android 中有这个对话框吗?如何?

4

3 回答 3

6

我认为尝试将 UI 从一个平台复制到另一个平台是个坏主意。

我建议您使用共享意图:

http://mobile.tutsplus.com/tutorials/android/android-sdk-implement-a-share-intent/

http://developer.android.com/training/sharing/send.html

它非常易于使用并与平台集成。

于 2012-08-23T09:23:49.890 回答
2

如果已安装,您可以通过从共享意图中查找 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);
                    }
于 2012-08-28T07:26:10.693 回答
1

在 xml 中创建此视图并使用它。是使用 twitter4j 在 twitter 上发布字符串的教程

于 2012-08-30T08:47:59.913 回答