#java #android
Мне нужно использовать стороннее приложение в своем проекте(просмотр 3d моделей). Можно ли как то допустим при нажатии на кнопку в своем приложении открывать нужное мне приложение? Может как то программно запускать его исполняющий файл?
Ответы
Ответ 1
самостоятельно Вы приложение пользователя не запустите, это должен сделать он сам,но реализовать диалог выбора приложений, которые могут обработать Ваш запрос вы можете при помощи неявного intent. Таким образом, сделать запрос на запуск стороннего приложения Вы сможете. Но важно, чтобы приложение,которое Вы хотите запустить явно уведомляло Андроид , посредством своего манифеста,о том, что его можно запускать из вне.Ответ 2
В итоге я сделал это так public void reeee(View view) { String path = "/storage/emulated/0/Android/data/com.example.android.camera2basic.demo/files/default/AvatarModelDir/Anna.dae"; File file = new File(path); //checking if the File exists if(file.exists()) { Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(file), "application/octet-stream"); boolean result = isIntentAvailable(getApplicationContext(), intent); if (result){ startActivity(intent); } } } public static boolean isIntentAvailable(Context context, Intent intent) { Listlist = context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); return !list.isEmpty(); } Указывая путь к файлу который нужно открыть и правильный тип MIME (в моем случае это application/octet-stream) у меня все работает
Комментариев нет:
Отправить комментарий