我是安卓新手。我正在努力在 Twitter 上上传图片/视频。为此,我使用了 twitpic。我首先将图像发送到 twitpic,然后使用推文的 url 更新 twitter 中的状态。根据我从图库中的选择成功加载图像。
但我被困在推特上上传视频。因为上传视频有 twitpic 或 twitvid 选项。但是没有给出这种类型的代码或 sdk。很困惑如何做到这一点,必须使用哪些类。
我需要一个上传视频的示例代码。
我自己也被困了一段时间(周围没有很多例子),并在 SO 上找到了一个不起作用的例子,我已经设法塑造它......
首先你需要twitvid Java API
1 下载jar文件(我用的是twitvid-java 1.6.1)
2把它放在你的“libs”文件夹中
3 右键单击您的项目并转到“属性”
4 选择“Java 构建路径”并包含 jar(“库”选项卡)并确保它已构建(“订购和导出”选项卡)
下面的代码假设您已经使用常规 twitter4j 方法制作了一个令牌:
private void postToTwitvid(String videoPath){
AccessToken token = mTwitter.getAccessToken();
Values values = new Values();
values.setSession(new Session());
TwitvidApi api = new TwitvidApi(values);
api.setSecureUrlEnabled(false);
Session session;
try {
session = api.authenticate(new TwitterAuthPack.Builder()
.setConsumerKey(twitter_consumer_key)
.setConsumerSecret(twitter_secret_key)
.setOAuthToken(token.getToken())
.setOAuthTokenSecret(token.getTokenSecret())
.build());
api.getValues().setSession(session);
final UploadHelper helper = new UploadHelper(api);
File file=new File(videoPath);
TwitvidPost twitvidPost = new TwitvidPost.Builder()
.setFile(file).setChunkSize(10485760)
.setMessage("Twitvid test")
.setPostToTwitter(true)
.create();
try {
if (helper.upload(twitvidPost))
{
Toast.makeText(TwitterShare.this, "Posted on Twitter and Twitvid", Toast.LENGTH_LONG).show();
}
else
{
Toast.makeText(TwitterShare.this, "Post failed", Toast.LENGTH_LONG).show();
}
} catch (Exception e) {
e.printStackTrace();
}
} catch (ApiException e1) {
e1.printStackTrace();
}
}
令牌取决于您如何实现定期发布到 twitter,只需包括您的。希望这可以帮助!
PS:我不得不强制 UI 线程接受网络连接才能完成这项工作
(我的第一个答案!w00t!)