Как включить активность внешнего приложения для Android (или внешнего приложения полностью) в качестве зависимости от основного приложения? - PullRequest
0 голосов
/ 27 июля 2011

Я понимаю, что намерения могут быть использованы для использования внешних действий для выполнения конкретных задач, мой вопрос заключается в том, могут ли так называемые внешние действия быть включены в сам проект.

Например, если бы я хотел включить функцию регистрации в свое приложение и знал, что google plus выполняет эту замечательную операцию регистрации, можно ли включить эту конкретную операцию регистрации для использования вмое заявление?

Ответы [ 2 ]

0 голосов
/ 27 июля 2011

Короткий ответ - да, если у вас был проект библиотеки для внешнего приложения, которое вы хотите использовать.Как правило, это не лучшее решение, потому что, если вы можете получить исходный код (большое «если»), а затем пользователь скачает приложение, вам нужно будет выбрать, с каким приложением завершить намерение (если вы не использовали явные намерения), плюсвам придется обновлять свое собственное приложение при обновлении их.Все это создает накладные расходы на вас.Альтернативой было бы последовать примеру библиотеки преобразования текста в речь.Android O / S не поставляется с одним предустановленным, поэтому каждый раз, когда запрашивается функциональность, пользователю предлагается загрузить соответствующую библиотеку.Просто удалите Pico TTS, и вы поймете, о чем я.

0 голосов
/ 27 июля 2011

Вам нужно намерение этой деятельности.Я думаю, что если вы установили приложение G +, вам нужно перебрать список установленных вами компонентов и найти соответствующий.

  List<ResolveInfo> IntentsList=  getPackageManager().queryIntentActivities(new Intent(Intent.ACTION_MAIN, null).addCategory(Intent.CATEGORY_LAUNCHER), 0);

PackageManager.PERMISSION_GRANTED = 0 в addCategory

Первый аргумент метода addCategory() зависит от того, является ли категория намерения CATEGORY_LAUNCHER, CATEGORY_ALTERNATIVE или, скорее всего, ваше требуемое намерение равно CATEGORY_DEFAULT.Если вы знаете имя намерения, вы можете вызвать его в своей деятельности, а также добавить его к себе в качестве действия в своем приложении.

...