Запуск другого приложения для Android из моего приложения? - PullRequest
0 голосов
/ 18 июля 2011

Когда я нажимаю кнопку, я хочу запустить другое отдельное приложение, которое я создал, но я хочу каким-то образом объединить эти два приложения вместе, чтобы пользователю нужно было загрузить только одно приложение.

Мне известно о начале такого намерения:

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.A.myapp","com.A.myapp.MainActivity"));
startActivity(intent);

Но это предполагает, что я скачал приложение "com.A.myapp" отдельно. Какой лучший способ упаковать «com.A.myapp» в мое существующее приложение?

1 Ответ

1 голос
/ 18 июля 2011

Самый простой способ сделать то, что вы пытаетесь сделать, - это просто создать новый проект, содержащий оба приложения. Поскольку приложения обычно запускаются с начальной записи Activity, вы можете хранить их в отдельных пакетах, как сейчас, если они имеют одинаковое корневое имя. Так что app1 будет в пакете com.A.myapp.myapp1. Второе приложение "myapp2" будет в пакете com.A.myapp.myapp2.

В разделе Package файла манифеста проекта укажите "com.A.myapp" в качестве корневого каталога. Зарегистрируйте все действия в файле манифеста всего вашего проекта. Тогда app1 может вызвать действие в app2 с помощью вызова, подобного этому:

    Intent createIntent = new Intent();
    createIntent.setClassName(this.getApplicationContext(), "com.A.myapp.myapp2.ActivityA");
    startActivity(createIntent);

ПРИМЕЧАНИЕ: Это официально сделает это приложение полностью целым с точки зрения Android. Если вы хотите полностью отделить их, вам нужно использовать фильтры намерений и неявно вызывать другое приложение. Вы можете начать с этой ссылки для этого.

http://developer.android.com/guide/topics/intents/intents-filters.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...