Я пробую Детокс в приложении Hybrid React Native.Большая часть приложения была перенесена в React, но на Android все еще есть экран.
Проблема:
Когда я запускаю детокс в моем гибридном приложении Android, приложение запускается, нонемедленно закрывается.
«реактивный»: «^ 0.57.8»,
«детокс»: «^ 10.0.5»,
«шутка»: «^ 24.0.0 "
Я тестирую ту же конфигурацию в приложении React Native, и она работает.
Я обнаружил эту проблему, но она была закрыта без изменений:
https://github.com/wix/detox/issues/720
Журнал Android-эмулятора:
--------- beginning of crash
2019-01-30 11: 17: 00.862 5047-5081 /?E / AndroidRuntime: ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: com.wix.detox.manager Процесс: com.example.ha.androidapp, PID: 5047 java.lang.ClassCastException: android.app.Application не может быть приведен к com.facebook.react.ReactApplication вcom.wix.detox.ReactNativeSupport.getInstanceManager (ReactNativeSupport.java:63) в com.wix.detox.ReactNativeSupport.waitForReactNativeLoad (ReactNativeSupport.java:117) в com.wix.deactjactReactна com.wix.detox.DetoxManager.start (DetoxManager.java:72) на com.wix.detox.Detox $ 1 $ 1.run (Detox.java:133) на android.os.Handler.handleCallback (Handler.java:751) на android.os.Handler.dispatchMessage (Handler.java:95) на android.os.Looper.loop (Looper.java:154) на com.wix.detox.Detox $ 1.run (Детокс.java:136) наjava.lang.Thread.run (Thread.java:761)
MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mReactRootView = new ReactRootView(this);
mReactInstanceManager = ReactInstanceManager.builder()
.setApplication(getApplication())
.setBundleAssetName("index.android.bundle")
.setJSMainModulePath("index")
.addPackage(new MainReactPackage())
.setUseDeveloperSupport(BuildConfig.DEBUG)
.setInitialLifecycleState(LifecycleState.RESUMED)
.build();
mReactRootView.startReactApplication(mReactInstanceManager, "MyReactNativeApp", null);
setContentView(mReactRootView);
}