Ich entwickle derzeit ein Expo-Modul, das Intents nutzt, um Inhalte von anderen Anwendungen zu empfangen. Mein Problem besteht derzeit darin, dass eine Freigabeabsicht nicht erfolgreich ist, während die App im Hintergrund geöffnet ist.
Das Problem wird auch in dieser Frage beschrieben.
Um dieses Problem zu beheben, muss ich mich wie hier beschrieben in den Android-Lebenszyklus einbinden. Und hier bin ich etwas verwirrt, wie ich auf die aktuelle Aktivität zugreifen soll, um die Absicht festzulegen?
Was ich im Grunde erreichen möchte, ist Folgendes:
Code: Select all
protected void onNewIntent(Intent intent) {
Activity mActivity = getCurrentActivity();
if(mActivity == null) { return; }
mActivity.setIntent(intent);
}
Aber wie kann ich dies innerhalb des Expo-Pakets und nicht mit einem Modul erreichen? Wie kann ich die aktuelle Aktivität in diesem Snippet abrufen?
Code: Select all
android/src/main/java/expo/modules/mylib/MyLibReactActivityLifecycleListener.kt
package expo.modules.mylib
import android.app.Activity
import android.os.Bundle
import expo.modules.core.interfaces.ReactActivityLifecycleListener
class MyLibReactActivityLifecycleListener : ReactActivityLifecycleListener {
override fun onNewIntent(intent: Intent): Boolean {
// Your setup code in `Activity.onCreate`.
doSomeSetupInActivityOnCreate(activity)
}
}
Vielen Dank im Voraus für alle Ideen.
Ich entwickle derzeit ein Expo-Modul, das Intents nutzt, um Inhalte von anderen Anwendungen zu empfangen. Mein Problem besteht derzeit darin, dass eine Freigabeabsicht nicht erfolgreich ist, während die App im Hintergrund geöffnet ist.
Das Problem wird auch in dieser Frage beschrieben.
Um dieses Problem zu beheben, muss ich mich wie hier beschrieben in den Android-Lebenszyklus einbinden. Und hier bin ich etwas verwirrt, wie ich auf die aktuelle Aktivität zugreifen soll, um die Absicht festzulegen?
Was ich im Grunde erreichen möchte, ist Folgendes:
[code]protected void onNewIntent(Intent intent) {
Activity mActivity = getCurrentActivity();
if(mActivity == null) { return; }
mActivity.setIntent(intent);
}
[/code]
Aber wie kann ich dies innerhalb des Expo-Pakets und nicht mit einem Modul erreichen? Wie kann ich die aktuelle Aktivität in diesem Snippet abrufen?
[code]android/src/main/java/expo/modules/mylib/MyLibReactActivityLifecycleListener.kt
package expo.modules.mylib
import android.app.Activity
import android.os.Bundle
import expo.modules.core.interfaces.ReactActivityLifecycleListener
class MyLibReactActivityLifecycleListener : ReactActivityLifecycleListener {
override fun onNewIntent(intent: Intent): Boolean {
// Your setup code in `Activity.onCreate`.
doSomeSetupInActivityOnCreate(activity)
}
}
[/code]
Vielen Dank im Voraus für alle Ideen.