【问题标题】:Android Intent to follow Twitter user?Android 有意关注 Twitter 用户?
【发布时间】:2015-01-06 06:12:45
【问题描述】:

在我的“关于”屏幕中,我想让用户轻松“关注”我的 Twitter 帐户。

我希望现有的 Twitter 应用程序能够为此提供某种 Intent。我宁愿不使用建议here,因为这需要身份验证,AFAICT。

如果用户已经安装了官方 Twitter 应用程序,那么最好在该应用程序中进行任何身份验证(如有必要)。

我之前曾尝试联系官方 Twitter 应用背后的人,但没有收到任何回复。

【问题讨论】:

    标签: android twitter android-intent


    【解决方案1】:

    这是一个老问题,但我相信现在有更好的方法。使用网络意图。

    https://dev.twitter.com/web/follow-button/web-intent

    基本上只使用带有 URL 的 ACTION_VIEW:https://twitter.com/intent/follow?user_id=<theuserid>

    【讨论】:

    • 完美,谢谢!如果已安装,则正确使用 Twitter 应用程序,如果未安装,则正确使用浏览器,因此优点是我们不再需要执行以下操作:try { startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("twitter://user?screen_name=" + twitterName))); } catch (ActivityNotFoundException e) { startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/#!/" + twitterName))); }
    • 作为旁注,我想说twitter.com/intent/follow?screen_name=<screen name> 是一个更清晰的例子,以避免人们认为theuserid 是一个推特句柄。
    • @MarkCarter screen_name 更清晰,但是文档指出屏幕名称可以更改,而用户 ID 不能。因此,如果可能的话,我会使用 user_id 来确保它永远不会中断。
    • 顺便说一句,如果您要发布到 Amazon Appstore,则不能使用 twitter.com/intent/follow... 因为如果未安装 Twitter 应用程序,用户将被定向到显示链接的 Twitter 网页到 Google Play 商店(安装 Twitter 应用)
    【解决方案2】:

    我刚刚使用了标准的基于 http 的 Intent:

    行动:

    android.intent.action.VIEW
    

    数据:

    http://twitter.com/mytwitterusername
    

    然后用户可以选择是否在官方 Twitter 应用程序(或其他)中打开 Intent 并轻松地从那里关注我的 Twitter 用户名。

    【讨论】:

    • Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse("http://twitter.com/mytwitterusername")); MyActivity.this.startActivity(intent);
    【解决方案3】:

    如果用户安装了官方 twitter 应用程序并登录,我认为 twitter4j 不会再次要求身份验证。我以前使用过 twitter4j 和 facebook api,如果用户已经登录,他们都没有要求进行身份验证......

    【讨论】:

    • 谢谢,我会调查的。不过,如果只有一个简单的 Intent 就好了。至少它可以避免使用第 3 方 API。
    • 对,但是为什么 twitter 会允许任何人在没有身份验证的情况下与他们的系统进行交互?即使您只是想关注某人,您仍然需要成为有效用户......就是这样!
    • 但如果 Twitter 应用程序对用户进行身份验证,那么它需要以某种方式公开它(通过广播接收器、意图过滤器等)以供其他应用程序利用它,不是吗?
    • 不。这样我就可以检查是否有人登录了 Twitter,然后开始关注随机的人,转发随机的推文或发布任何我想要的推文。
    猜你喜欢
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    • 2020-04-05
    • 1970-01-01
    • 1970-01-01
    • 2012-07-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多