Я реализую функции общего доступа в моем приложении Android.Я уже включил средство выбора намерений, чтобы поделиться сообщением типа текста.Теперь я хотел бы создать два ярлыка: один для доступа к странице поста пользователя в Facebook, другой для доступа к странице поста в Твиттере.(как делает выбор)
Я нашел эту полезную тему: запустите приложение facebook из другого приложения и попытался найти правильное слово (fb: // word), используя команду оболочки ADB, ноЯ не могу понять («публикация», «публикация», «публикация», «публикация», «обмен» не работают).
Затем я попытался поймать созданное намерение (через Журнал) о намерении выбора, когда я нажимал на Facebook или Twitter.Я нашел:
"Начало: Intent {act = android.intent.action.SEND typ = text / plain flg = 0x3000000 cmp = com.twitter.android / .PostActivity (имеет дополнения)} изpid 17575 "для Facebook и
" Начало: Intent {act = android.intent.action.SEND typ = text / plain flg = 0x3000000 cmp = com.facebook.katana / .ShareLinkActivity (имеет дополнительные функции)}из pid 17575 "для Twitter.
Я создал эти намерения с помощью следующих кодов (для методов onClick()
кнопок):
Intent fbIntent = new Intent(Intent.ACTION_SEND);
fbIntent.setType("text/plain");
fbIntent.setFlags(0x3000000);
fbIntent.setComponent(new ComponentName("com.facebook.katana", ".ShareLinkActivity"));
fbIntent.putExtra(Intent.EXTRA_TEXT, getString(R.string.share_text));
startActivity(fbIntent);
Я также попробовал этот способ:
Intent twitterIntent = new Intent(Intent.ACTION_VIEW);
twitterIntent.setAction("android.intent.action.SEND");
twitterIntent.setFlags(0x3000000);
twitterIntent.setType("text/plain");
twitterIntent.setComponent(new ComponentName("com.twitter.android", ".PostActivity"));
twitterIntent.putExtra(Intent.EXTRA_TEXT, getString(R.string.share_text));
startActivity(twitterIntent);
Но даже если журналы выглядят одинаково, ничего не происходит.
Есть идеи?