Открытие приложений телефона через кнопку - PullRequest
0 голосов
/ 26 марта 2020

У меня около 12 кнопок, каждая кнопка открывает приложение телефона по имени. Теперь я могу открывать сообщения и звонки, но для других я не знаю, что мне поставить. Это мой код для телефонного звонка:

        phone.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent phonecall = new Intent(Intent.ACTION_VIEW);
            phonecall.setData(Uri.parse("tel:"));
            startActivity(phonecall);
        }
    });

"tel:" откроет телефонный звонок, теперь я хочу знать, что я должен вставить в "tel:" для других приложений, вот мои другие кнопки должны открыть: Камера, Контакты, Браузер, Диспетчер файлов, Настройки, Галерея, Часы, Приложение Telegram, Приложение Instagram, Приложение Whatsapp.

1 Ответ

0 голосов
/ 26 марта 2020

Это часть неявного намерения.

Если вы хотите, чтобы система Android обрабатывала намерение для конкретной задачи, вы можете использовать это.

        Intent callIntent = new Intent(Intent.ACTION_DIAL);
        callIntent.setData(Uri.parse("tel:" + Constants.CALL_CENTER_NUMBER));
        startActivity(callIntent);

Пример: Вы можете запустить Intent.ACTION_DIAL или Intent.ACTION_CALL без указания какого-либо конкретного имени пакета, чтобы обработать это, и система Android обработает это намерение.

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

Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.whatsapp");
startActivity( launchIntent );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...