react native打包问题



  • @DTT
    比如bundle在file://sdcard/myapp_cache/index.android.bundle 那么图片目录在file://sdcard/myapp_cache/drawable-mdpi

    前提是rn是 0.19以上 ,同时 image的图片地址为相对路径写法 即require('./a/1.png') or require('../a/2.png')



  • 此回复已被删除!


  • @ cnsnake11

    0_1460603337700_2016-04-14 11-07-33屏幕截图.png

    我把drawable放在assets里还是找不到图片资源



  • @DTT 只有你bundle在sd卡里才能这样【 比如bundle在file://sdcard/myapp_cache/index.android.bundle 那么图片目录在file://sdcard/myapp_cache/drawable-mdpi】

    如果你的bundle在assets里,图片资源要放到res文件夹里,例如res/drawable-mdpi



  • @cnsnake11 恩 谢谢 我再试一下



  • @cnsnake11
    我想在android studio项目里和src平级 或者和assest平级建一个jsbundle文件夹存放bundle文件和资源文件 这样native能使用jsbundle里的bundle文件并能找到图片资源吗 我又怎么访问到他们呢 File file = new File(?????); 如下图 :
    0_1460716810772_222222222.png



  • @DTT 这应该是不行的吧,我没这样做过



  • Android有一个debug panel,里面可以自行填入服务器IP,要修改默认的值其实非常简单,看代码就明白了:
    @Override

    protected void onCreate(Bundle savedInstanceState) {
        SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
        preferences.edit().putString("debug_http_host", "192.168.20.46:8081").apply();
    
        super.onCreate(savedInstanceState);
    
    }


  • @cnsnake11
    你好 遇到了一个问题 在0.22以下 连续运行2次打离线包的命令是ok的 ,0.23及以上在运行第二个离线包命令的时候会报 index.android.js/index.ios.js找不到,第二次打包命令会报错,和顺序无关

    set -e
    #第一次执行打ios bundle包
    rm -rf iosbundle
    mkdir iosbundle
    react-native bundle --entry-file index.ios.js --bundle-output ./iosbundle/index.ios.jsbundle --assets-dest ./iosbundle --dev false --platform ios --verbose

    #第二次执行打android bundle包
    rm -rf androidbundle
    mkdir androidbundle
    react-native bundle --entry-file index.android.js --bundle-output ./androidbundle/index.android.jsbundle --assets-dest ./androidbundle --dev false --platform android --verbose
    echo "Build 结束!"


登录后回复