gpt4 book ai didi

android - 如何在推特上分享图片?

转载 作者:行者123 更新时间:2023-11-30 04:18:59 28 4
gpt4 key购买 nike

I want to create one application which share image on twitter.
But when i click on button it show message "no application perform this action".
is there any wrong in following code?

private void share()
{
// TODO Auto-generated method stub
Intent tweetIntent = new Intent(Intent.ACTION_SEND);
tweetIntent.setType("application/twitter");
tweetIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Test; please ignore");

startActivity(Intent.createChooser(tweetIntent, "Choose one"));

}

最佳答案

需要安装 Twitter 应用程序,而且用户可能需要主动登录(大多数人都是)才能正常工作。我不认为 tweetIntent.setType("application/twitter"); 有效,我从未见过。您可以通过按应用程序包名称 tweetIntent.setPackage("com.twitter.android"); 过滤来限制对 Twitter 的共享。您需要使用 PackageManager 来验证您是否可以使用它。下面是可能的代码,我没有对此进行测试。

Intent tweetIntent = new Intent(Intent.ACTION_SEND);
tweetIntent.setPackage("com.twitter.android");
tweetIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Test; please ignore");

PackageManager pm = context.getPackageManager();
if(pm.queryIntentActivities (tweetIntent, 0).size() > 0) { // If there's at least 1 intent that matches then the intent is valid.
startActivity(Intent.createChooser(tweetIntent, "Choose one"));
} else {
// Not supported.
}

Android 的共享 Intent 用于发送数据以共享给其他应用程序。您可以像现在一样将共享限制为特定的应用程序。但是,您违背了 Android 的工作原理,并且这样做会使您自己面临不兼容问题。您最好使用 Twitter API直接。

理由是,如果用户没有安装 Twitter,那么他们很可能并不真正关心它。但他们可能想在 Facebook 等其他服务上分享内容。

关于android - 如何在推特上分享图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9544437/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com