Я установил рекомендуемые советы по сборке для моего приложения Codenameone, которое будет вызываться из других приложений в качестве цели общего ресурса. Но AppArg в моем приложении всегда имеет значение null на android (8.0.0) при вызове моего приложения как цели общего доступа из другого приложения.
Я использовал следующие подсказки сборки:
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/*" />
<data android:mimeType="application/octet-stream" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/*" />
<data android:mimeType="application/octet-stream" />
</intent-filter>
Приложение можно выбрать в качестве цели для общего доступа на моем HUAWEI P-Smart с Android 8.0.0 (и в симуляторе android из android studio с Android 8.0.0) - но Невозможно получить параметр отправки в мое приложение:
disp.getProperty("AppArg", null);
всегда возвращает ноль. Независимо от того, выделю ли я текст в браузере и поделюсь этим текстом с моим приложением - или если я поделюсь текстовым файлом с моим приложением.
В журнале Android Studio я вижу, что выбранный Текст передается в приложение:
2020-03-20 10:57:50.031 1655-2542/? I/ActivityManager: START u0 {act=android.intent.action.SEND typ=text/plain flg=0xb080001 cmp=de.zeitkuenstlervoll.gtd.gui/.AppStartStub clip={text/plain T:Erkrankung} (has extras)} from uid 10052
Отправленный мною текст находится здесь: clip = {text / plain T: Erkrankung}
Я также установил подсказку для сборки
android.activity.launchMode = singleTask
Ты хоть представляешь, в чем причина? (Кстати: AppArg не является нулевым на моих iOS -устройствах)