Не удается загрузить неизвестные расширения - PullRequest
1 голос
/ 03 декабря 2010

Я не могу загрузить (из Интернета и по электронной почте) неизвестные расширения, такие как (* .ini, * .zip, * .ddd), если не существует приложения, которое может понять расширение.

ДляНапример, я не мог загрузить файл * .ini из браузера (или по электронной почте), пока не загрузил приложение «Astro».

  1. Как можно обойтись, чтобы их можно было загрузить?
  2. Как вы можете зарегистрировать свое приложение, чтобы оно выдерживало определенное расширение, чтобы его можно было загрузить?

Ответы [ 2 ]

2 голосов
/ 03 декабря 2010

Как пройти мимо, чтобы их можно было скачать?

Вы не.

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

В идеале, нет. Вы делаете это по типу MIME. Расширения файлов очень хрупкие. Однако любой из них может быть достигнут с помощью элемента <data> в <intent-filter> вашей активности. Вам также понадобится категория BROWSEABLE и, возможно, действие VIEW.

Например, вот как можно настроить просмотр файлов PDF:

<intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:mimeType="application/pdf" />
</intent-filter>
1 голос
/ 04 декабря 2010
    <activity
        android:name=".Main"
        android:label="@string/app_name">

        <intent-filter>
            <action
                android:name="android.intent.action.MAIN" />
            <category
                android:name="android.intent.category.LAUNCHER" />
                <category
                android:name="android.intent.category.DEFAULT" />
            <category
                android:name="android.intent.category.BROWSABLE" />
            <data
                android:scheme="file" />
            <data
                android:pathPattern=".*\\.ini" />
            <data
                android:host="*" />

        </intent-filter>
    </activity>

Выше код позволил мне загрузить * .ini файлы. Спасибо за вашу помощь.

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