Ich versuche, einige Daten nur über Facebook, Twitter und g + zu teilen, damit ich eine benutzerdefinierte Liste der Absicht erstellen und ich kann Text senden, alles funktioniert gut. Aber ich habe ein Anzeigeproblem mit twitter unter Gemeinsame Nutzung von Daten mit benutzerdefinierten Liste der Absicht ein Android-System
Sie sehen diese Systeme Android sehen, und wenn ich darauf klicke, ich habe dies:
den Code Siehe:
In dieser erste Funktion ich, ich würde nur das Paket geschnürt wie
private List<String> getShareApplication(){
List<String> mList=new ArrayList<>();
mList.add("com.facebook.katana");
mList.add("com.google.android.apps.plus");
mList.add("com.twitter.android");
return mList;
}
Und in dieser eine verwende ich nur über die Liste bin mit, ich sehe in der Schleife, wenn das Paket auf meinem Handy vorhanden ist, ich eine Absicht Aufruf targetedShare mit einem ACTION_SEND erstellen und einen Text in ihn setzen, und schließlich die Liste der targetedShareIntents hinzufügen
private void Share(List<String> PackageName) {
List<Intent> targetedShareIntents = new ArrayList<>();
Intent share = new Intent(android.content.Intent.ACTION_SEND);
share.setType("text/plain");
List<ResolveInfo> resInfo = context.getPackageManager().queryIntentActivities(share, 0);
if (!resInfo.isEmpty()){
for (ResolveInfo info : resInfo) {
Intent targetedShare = new Intent(android.content.Intent.ACTION_SEND);
if (PackageName.contains(info.activityInfo.packageName.toLowerCase())) {
targetedShare.setType("text/plain");
targetedShare.putExtra(Intent.EXTRA_TEXT, String.valueOf(urlJson));
targetedShare.setPackage(info.activityInfo.packageName.toLowerCase());
targetedShareIntents.add(targetedShare);
}
}
Intent chooserIntent = Intent.createChooser(targetedShareIntents.remove(0), "Share");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, targetedShareIntents.toArray(new Parcelable[targetedShareIntents.size()]));
startActivity(chooserIntent);
}
}
}
Ich versuche, einen anderen Code auf Stackoverflow gefunden zu verwenden und ich versuche, mit einem anderen Gerät, und ich versuche einen anderen twitter Paketnamen zu verwenden, wie:
com.twitter.android.composer.ComposerActivity
com.twitter.android.DMActivity
com.twitter .android.PostAc vität
etc ...
aber ich habe immer noch dieses Problem