【问题标题】:Enable react native android to load downloaded images启用 react native android 以加载下载的图像
【发布时间】:2017-04-15 19:52:34
【问题描述】:

我有一个遗留的 Android Java 应用程序,我将 React Native 集成到该应用程序中。 Per Facebook's instructions,我有一个通用的Activity,我在其中添加了以下代码:

    mReactRootView = new ReactRootView(this);
    mReactInstanceManager = ReactInstanceManager.builder()
            .setApplication(getApplication())
            .setBundleAssetName("index.android.bundle")
            .setJSMainModuleName("index.android")
            .addPackage(new MainReactPackage())
            .setUseDeveloperSupport(BuildConfig.DEBUG)
            .setInitialLifecycleState(LifecycleState.RESUMED)
            .build();
    mReactRootView.startReactApplication(mReactInstanceManager, "HelloWorld", null);
    setContentView(mReactRootView);

但是,就我而言,我已经下载了我的 react native 包并将其放在我的 Android 设备的缓存中,因此我通过添加以下调用来修改该示例:

.setJSBundleFile(mReactNativeLocalFile.getAbsolutePath())

这使我能够成功加载我下载的包,但是没有加载任何图像。因此,加载图像的组件如下:

<Image source={require('./img/background.jpg')} style={styles.backgroundImage} />

不渲染实际图像。

我已确认所有图像均已成功提取并放置在与我的捆绑包相邻的名为 assets 的文件夹中。因此,我的文件夹结构如下所示:

com.myapp/cache/templates/MyApp/
  index.android.bundle
  assets/
    img/
      background.jpg

因此,谁能告诉我,已经在本地下载到 android 文件系统的 react native 模板包是否可以引用也在本地下载到 android 文件系统的图像?

【问题讨论】:

    标签: react-native react-native-android


    【解决方案1】:

    Based on this change,正确答案是您本地磁盘上的文件夹结构,如下所示:

    com.myapp/cache/templates/MyApp/
      index.android.bundle
      drawable-mdpi/
        img_background.jpg
    

    【讨论】:

      猜你喜欢
      • 2023-03-17
      • 2019-03-26
      • 2021-03-08
      • 1970-01-01
      • 2016-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多