Как определить, было ли открыто приложение? [Android ReactNative] - PullRequest
3 голосов
/ 19 июня 2020

отправляю пу sh извещение. с Device1 на Device2. Device2 перехватывает это и генерирует собственный метод NativeModule invokeApp для вызова приложения. Он отлично работает, даже если приложение было в заблокированном состоянии.

Device2 открывает мое приложение, и я пытаюсь отправить информационные данные на Device1, что мое приложение на Device2 было успешно открыто.

WritableMap paramsData = Arguments.createMap();
        paramsData.putString("eventProperty", "successfully opened");

        reactContext
        .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
        .emit("appInvoked", paramsData);

Если Device2 находился в фоновом режиме - это работает, Device1 перехватывает сообщение об успешном открытии. НО! Если Device2 был в убитом состоянии (он был убит из списка недавно открытых приложений), он не работает (

Я ловлю это событие с помощью модуля NativeEventEmitter ReactNative

const eventEmitter = new NativeEventEmitter(NativeModules.RNInvokeApp);
    eventEmitter.addListener('appInvoked', (event) => {
      console.log('event invoked', event);
    });

Как можно Я выдаю информацию, когда приложение было в заблокированном состоянии? Помогите, пожалуйста. Я пытаюсь решить эту проблему в течение второй недели. Заранее спасибо за ваши будущие советы.

...