Android - эквивалент диалогового окна «Открыть с помощью» в iOS?

Когда у меня есть файл в приложении на моем устройстве iOS, я могу открыть этот файл в других приложениях (которые зарегистрированы для этого типа файлов) с помощью небольшого диалогового окна (src): < img src = "https://i.stack.imgur.com/OBull.jpg" alt = "Открыть с помощью."> Есть ли Android-эквивалент этого диалогового окна?
И если есть, как я могу получить к нему доступ с Кордовой?

РЕДАКТИРОВАТЬ: чтобы прояснить ситуацию: я хочу, чтобы этот диалог был пассивным. Итак, другие приложения могут открывать файл в моем приложении!


person Clawish    schedule 20.01.2015    source источник
comment
Настройте intent-filter в своем манифесте. stackoverflow.com/ вопросы / 3760276 /   -  person laalto    schedule 20.01.2015


Ответы (2)


В вашем манифесте

    <intent-filter>
        <action android:name="android.intent.action.SENDTO"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <data android:scheme="sms" />
        <data android:scheme="smsto" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.SEND"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <data android:mimeType="image/*"/>
        <data android:mimeType="text/plain"/>
    </intent-filter>
person Mohammed Imran N    schedule 20.01.2015
comment
Спасибо! Итак, если я открываю файл, скажем, из файлового браузера в своем приложении, как приложение может взаимодействовать с файлом? Путь к файлу передается в качестве аргумента? Или файл копируется в кеш приложения? - person Clawish; 20.01.2015
comment
считайте, что ваше приложение является DOC-Viewer. Если вы открываете DOC из веб-браузера, его MIME-тип проверяет наличие намерений. В этом случае ваш mimeType совпадает, он будет открыт с опцией, в которой присутствует ваше приложение. Это мое понимание, и это работает для меня. Моя - это приложение для просмотра PDF-файлов. - person Mohammed Imran N; 20.01.2015

Когда вы вызываете startActivty, используйте Chooser, который отобразит доступные действия, которые могут открыть выбранный вами файл.

Для получения дополнительной информации проверьте эту ссылку.

http://developer.android.com/training/basics/intents/sending.html

и

https://github.com/tannerburson/cordova-intent-chooser-plugin

РЕДАКТИРОВАТЬ:

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

<activity 
android:name=".view.MainActivity" 
android:label="@string/app_name" 
android:exported="true" >
person Vilas    schedule 20.01.2015
comment
Спасибо за ваше предложение. Однако я не хочу открывать файл из своего приложения в другом приложении, а наоборот. Другое приложение должно иметь возможность открывать файл в моем приложении. - person Clawish; 20.01.2015
comment
В файле манифеста проекта сделайте экспортированное действие. Например, ex ... ‹activity android: name = .view.MainActivity android: label = @ string / app_name android: exported = true› - person Vilas; 20.01.2015