После обновления целевого SDK до 26 и тестирования на устройстве Android 8.1 нажатие на вложение электронной почты (наше расширение файла) в GMail больше не вызывает активности нашего приложения.
Я полагаю, что это связано с поддержкойнеявные намерения в Android 8 удаляются, но не могут определить альтернативный подход.
<activity
android:name="com.abc.RestoreActivity"
android:noHistory="true"
android:label="@string/app_name"
android:screenOrientation="portrait">
<!-- Filter to open file with gmail version < 4.2 -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/fileextn" />
<data android:pathPattern=".*\\.fileextn" />
<data android:host="*" />
</intent-filter>
<!-- Filter to open file with gmail version 4.2 -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/octet-stream" />
<data android:pathPattern=".*\\.fileextn" />
<data android:host="*" />
</intent-filter>
</activity>
Нажатие на вложение электронной почты в GMail теперь открывает диалоговое окно GMail, показывающее «Выбор вложения ...» с запущенным индикатором выполнения, и никогда не останавливается, пока не будет отменено.
В качестве альтернативы, если яскачайте файл и затем откройте его из менеджера загрузок .. он прекрасно открывает наше приложение.