我已经通过使用 fabric 及其 TweetComposer 类自己解决了这个问题.....
首先,您需要在应用程序的引导类上初始化结构
Fabric.with(this, new Twitter(authConfig));
然后在你想要制作推文的类上,你会获得 firebase 实例以获取登录用户,然后设置登录 firebase UI https://github.com/firebase时获得的 twitter 消费者密钥和秘密/FirebaseUI-Android/blob/master/auth/README.md,以供将来参考以获取代表用户发送推文所需的两个令牌,您可以按照链接指定的方式进行操作:
要检索 IDP 返回的 ID 令牌,您可以从结果 Intent 中提取 IdpResponse。
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
IdpResponse idpResponse = IdpResponse.fromResultIntent(data);
startActivity(new Intent(this, WelcomeBackActivity.class)
.putExtra("my_token", idpResponse.getIdpToken()));
}
}
Twitter also returns an AuthToken Secret which can be accessed with idpResponse.getIdpSecret().
现在您拥有所需的一切:
mAuth = FirebaseAuth.getInstance();
if (mAuth.getCurrentUser() != null) {
// already signed in
twitter_consumer_key= preferences.getString("TWITTER_CONSUMER_KEY","");
twitter_consumer_secret= preferences.getString("TWITTER_CONSUMER_SECRET","");
TwitterAuthConfig authConfig = new TwitterAuthConfig(twitter_consumer_key, twitter_consumer_secret);
//setting up fabric
Fabric.with(this, new TwitterCore(authConfig), new TweetComposer());
}
and then let's say I want to tweet from a custom button onClick:
ImageButton tweetButton= (ImageButton) findViewById(R.id.tweet_button);
tweetButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TweetComposer.Builder builder = new TweetComposer.Builder(mContext)
.text("just setting up my Fabric.");
builder.show();
}
});
该应用程序会将您重定向到 twitter 应用程序,并带有预设消息“只是设置我的 Fabric。”。您也可以添加图片和视频!
希望这对将来的某人有所帮助,因为关于面料的信息很少....