Сделайте приложение по умолчанию для открытия определенного файла
Как заставить приложение Android использовать приложение по умолчанию для открытия определенного типа файла?
Я попытался очистить значения по умолчанию, но опция greyed out, кто-нибудь знает, как это сделать?
Я хочу открыть свое приложение с моими файлами something.whatever
в android.
Ответы
Ответ 1
Вы не можете заставить это, и вы не сможете этого сделать. Что вы можете сделать, так это то, что ваше приложение может открыть файл. Пользователь получает стандартное диалоговое окно "какая программа вы хотите использовать", и пользователь может выбрать что-то по умолчанию.
Если пользователь уже выбрал значение по умолчанию, ему необходимо отменить это до появления диалогового окна (очевидно, в противном случае значение по умолчанию не имело бы большого эффекта, не так ли?)
Вы можете сказать миру (aka: android), что вы хотите открыть определенный тип файла, добавив фильтр намерений. В основном вы делаете в своем манифесте, что активность в вашем приложении знает, как обрабатывать тип файла (или веб-сайт/протокол и т.д.). Это довольно легко найти, случайный вопрос здесь о SO по той же проблеме: Фильтр намерений Android для определенного расширения файла?
Ответ 2
Этот вопрос уже рассмотрен здесь: Зарегистрировать приложение по умолчанию для настраиваемого типа файла
Добавьте к нему фильтр намерений:
<intent-filter >
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/pdf" />
</intent-filter>
Ответ 3
В Android как связать файл с другой программой.
Я использую "Droid Maxx" с версией Android 4.4.4
Как сделать something.html
открытый файл с файловым редактором вместо светлячок после того как вы свяжете Firefox, чтобы всегда быть связано с *.html
файлов.
Вы должны очистить настройки по умолчанию для приложения, связанного с типом файла.
Сделай это
- Перейдите в настройки". Это в списке приложений.
- В разделе "Устройство" нажмите "Приложения".
- Прокрутите вниз и нажмите Firefox.
- Под записью "Запуск по умолчанию" нажмите "Очистить настройки по умолчанию".
- Снова откройте ваш
something.html
.
Еще раз вам предоставляется выбор, с какой программой вы хотите открыть этот файл.
Если вы хотите связать и разобщить типы файлов с приложениями по отдельности:
Существует стороннее приложение под названием: Default App Manager Lite:
https://play.google.com/store/apps/details?id=com.appiator.defaultappmanager
Затем вы можете запустить программу и индивидуально управлять типом файла → сопоставлениями приложений.
Ответ 4
Я думаю, что в андроиде каждое приложение/действие должно иметь некоторые намеренные действия и категории в файле манифеста. В настройках этого намерения вы должны сделать свое приложение по умолчанию.
Даже вы записываете дефолт в манифест, если любые другие приложения, найденные с одинаковыми настройками намерений, система Android будет отображать все приложения с одинаковыми настройками. пользователь должен выбрать один из них, только он предоставляет один флажок, чтобы сделать одно приложение по умолчанию в следующий раз. Если пользователь не проверял, список будет отображаться каждый раз, когда пользователь открывает файл.
Я надеюсь, что это может вам помочь.
Ответ 5
Попробуй это
Intent i = new Intent();
i.setAction(android.content.Intent.ACTION_VIEW);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setDataAndType(Uri.parse("file://"+path),
"application/vnd.android.package-archive");
startActivity(i);
Переменная пути - это ваш путь.