Code Monkey home page Code Monkey logo

react-native-remote-update's People

Contributors

fengjundev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

react-native-remote-update's Issues

可以适配下>=0.29版本的吗,

0.29版本之后,package注入以及jsbundle注入都是放在ReactApplicaiton中,可是直接重写getBundleAssetName和getJSBundleFile运行app没有效果~

Cannot find module './src/SocketInterface'

error when executing react-native start, any solution?

│ Running packager on port 8081. │
│ │
│ Keep this packager running while developing on any JS projects. Feel │
│ free to close this tab and run your own packager instance if you │
│ prefer. │
│ │
https://github.com/facebook/react-native
│ │
└────────────────────────────────────────────────────────────────────────────┘
Looking for JS files in
/home/leonard/Descargas/React-Native-Remote-Update-master

ERROR Cannot find module './src/SocketInterface'
{"code":"MODULE_NOT_FOUND"}
Error: Cannot find module './src/SocketInterface'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at startSocketInterface (/home/leonard/Descargas/React-Native-Remote-Update-master/node_modules/react-native/packager/react-packager/index.js:119:3)
at createServer (/home/leonard/Descargas/React-Native-Remote-Update-master/node_modules/react-native/packager/react-packager/index.js:95:3)
at Object.exports.middleware (/home/leonard/Descargas/React-Native-Remote-Update-master/node_modules/react-native/packager/react-packager/index.js:20:16)
at getAppMiddleware (/home/leonard/Descargas/React-Native-Remote-Update-master/node_modules/react-native/private-cli/src/server/runServer.js:51:24)
at runServer (/home/leonard/Descargas/React-Native-Remote-Update-master/node_modules/react-native/private-cli/src/server/runServer.js:34:10)
at startServer (/home/leonard/Descargas/React-Native-Remote-Update-master/node_modules/react-native/private-cli/src/server/server.js:141:26)

Exception: ReactBridge.loadScriptFromFile, RN版本0.23

com.facebook.react.bridge.JSExecutionException: SyntaxError: Unexpected end of script (line 5 in the generated bundle)
at com.facebook.react.bridge.ReactBridge.loadScriptFromFile(Native Method)
at com.facebook.react.bridge.JSBundleLoader$1.loadScript(JSBundleLoader.java:34)
at com.facebook.react.bridge.CatalystInstance$2.run(CatalystInstance.java:138)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:31)
at android.os.Looper.loop(Looper.java:136)
at com.facebook.react.bridge.queue.MessageQueueThread$1.run(MessageQueueThread.java:137)
at java.lang.Thread.run(Thread.java:841)

调用Bundle后如何返回

Hi,尝试了用这种热部署的方式,但是中间发现一个问题,如何在调用Bundle以后通过自定义的返回按钮返回到初始化界面呢?尝试了很多方式,只有物理键盘的返回是成功的。

0.29

0.29以后,反射重新加载这个不能使用了,作者有没有更好的方法来重新加载?

在0.17版本上,热更新报错

 method.invoke(mReactInstanceManager,
    new JSCJavaScriptExecutor(),
    JSBundleLoader.createFileLoader(context, mainBundleFilePath));

在执行这一句时,抛出了一个IllegalAccessException异常,通过log可知是在ReactInstanceManagerImpl类中的下面这个方法中执行了UiThreadUtil.assertOnUiThread();
该方法判断当前不在UI线程,于是抛出异常说“Expected to run on UI thread!”

private void recreateReactContextInBackgroundInner() {
    UiThreadUtil.assertOnUiThread();

    if (mUseDeveloperSupport && mJSMainModuleName != null) {
      if (mDevSupportManager.hasUpToDateJSBundleInCache()) {
        // If there is a up-to-date bundle downloaded from server, always use that
        onJSBundleLoadedFromServer();
      } else if (mJSBundleFile == null) {
        mDevSupportManager.handleReloadJS();
      } else {
        mDevSupportManager.isPackagerRunning(
            new DevServerHelper.PackagerStatusCallback() {
              @Override
              public void onPackagerStatusFetched(final boolean packagerIsRunning) {
                UiThreadUtil.runOnUiThread(
                    new Runnable() {
                      @Override
                      public void run() {
                        if (packagerIsRunning) {
                          mDevSupportManager.handleReloadJS();
                        } else {
                          recreateReactContextInBackgroundFromBundleFile();
                        }
                      }
                    });
              }
            });
      }
      return;
    }

    recreateReactContextInBackgroundFromBundleFile();
  }

那么。。。如果运行在UI线程里呢?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.