如何从我的Android应用程序直接撰写推文?
我已经在android应用程序上创建了。我需要使用我自己的twitter登录凭据,从我的android应用程序直接向我的twitter帐户发布推文。我已经在twitter上注册并获得了消费者密钥和消费者密钥。有了这个,我希望我的应用程序应该授权我的twitter帐户,我应该能够通过编程发布tweet,而不需要任何弹出窗口。 当做如何从我的Android应用程序直接撰写推文?,android,Android,我已经在android应用程序上创建了。我需要使用我自己的twitter登录凭据,从我的android应用程序直接向我的twitter帐户发布推文。我已经在twitter上注册并获得了消费者密钥和消费者密钥。有了这个,我希望我的应用程序应该授权我的twitter帐户,我应该能够通过编程发布tweet,而不需要任何弹出窗口。 当做 Kunal解决方案是为推特创建一个自定义网络视图。它甚至不需要Fabric Twitter API 1-创建Webview活动: public class Tw
Kunal解决方案是为推特创建一个
自定义网络视图。它甚至不需要Fabric Twitter API
1-创建Webview活动:
public class TweetCustomWebView extends AppCompatActivity {
android.webkit.WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.webview_activity);
Bundle extras = getIntent().getExtras();
if (extras != null) {
final String stringToShow = extras.getString("tweettext");
webView = (android.webkit.WebView) findViewById(R.id.wv);
webView.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(android.webkit.WebView view, String url) {
if (url.contains("latest_status_id=")) {
// Twitted
setResult(Activity.RESULT_OK, new Intent());
TweetCustomWebView.this.finish();
}
view.loadUrl(url);
return true;
}
public void onPageFinished(android.webkit.WebView view, String url) {
// Finished loading url
}
public void onReceivedError(android.webkit.WebView view, int errorCode, String description, String failingUrl) {
Log.e("", "Error: " + description);
setResult(Activity.RESULT_CANCELED, new Intent());
}
});
webView.loadUrl("https://twitter.com/intent/tweet?text=" + stringToShow);
}
}
@Override
public void onBackPressed() {
super.onBackPressed();
setResult(Activity.RESULT_CANCELED, new Intent());
}}
2-和这样的布局:
<WebView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/wv"/>
4-最后一步是当用户点击Twitter上的共享按钮时调用我们的webview:
Intent intent = new Intent(MainActivity.this, TweetCustomWebView.class);
intent.putExtra("tweettext", "Text to tweet");
startActivityForResult(intent, 100);
或者,您可以将其用于自定义推文
应该是这样。我希望这会有所帮助。我不希望任何用户必须提供twitter凭据的登录授权页面。所有这些都应该通过编程来完成。你有没有检查我建议的答案来回答你的问题?
Intent intent = new Intent(MainActivity.this, TweetCustomWebView.class);
intent.putExtra("tweettext", "Text to tweet");
startActivityForResult(intent, 100);