è possibile farlo trovando app twitter dall'intenzione di condivisione se è installato, ma in caso contrario si può gestire tale condizione e aprire la pagina di app di Twitter come nel mio codice sottostante, poiché ho trovato twitter4j difficile da integrare e dare risultati incoerenza .
Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "subject");
shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, " text";
final PackageManager pm = v.getContext().getPackageManager();
final List<ResolveInfo> activityList = pm.queryIntentActivities(shareIntent, 0);
boolean twtchk=false;
for (final ResolveInfo app : activityList) {
if ("com.twitter.android.PostActivity".equals(app.activityInfo.name)) {
final ActivityInfo activity = app.activityInfo;
System.out.println("package==="+activity.applicationInfo.packageName);
final ComponentName name = new ComponentName(activity.applicationInfo.packageName, activity.name);
shareIntent.addCategory(Intent.CATEGORY_LAUNCHER);
shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
shareIntent.setComponent(name);
v.getContext().startActivity(shareIntent);
twtchk=true;
break;
}
}
if(!twtchk)
{
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/yourapp"));
startActivity(intent);
}
Sì ok ma qui non voglio sparare a Intent per postare su Twitter. Sto usando twitter4j sdk per integrare twitter nella mia app e voglio postare con esso. Sto solo chiedendo è Twitter fornire questa finestra di dialogo anche in Android SDK. Questa è solo una vista web. –
Non voglio usare Intent perché l'utente deve avere twitter nel suo dispositivo, ma cosa succede se l'utente non ha twitter nel suo dispositivo –
Ok, è una buona ragione :). Non penso che questo sia fornito da sdk. Ma penso che sia facile reindirizzare la tua webview alla pagina post corrispondente sulla versione mobile di Twitter. – Aerilys