1.找到路劲 node_modules\react-native\react.gradle 找到 doFirst,在这个下面添加
doLast {
def moveFunc = { resSuffix ->
File originalDir = file("${resourcesDir}/drawable-${resSuffix}")
if (originalDir.exists()) {
File destDir = file("${resourcesDir}/drawable-${resSuffix}-v4")
ant.move(file: originalDir, tofile: destDir)
}
}
moveFunc.curry("ldpi").call()
moveFunc.curry("mdpi").call()
moveFunc.curry("hdpi").call()
moveFunc.curry("xhdpi").call()
moveFunc.curry("xxhdpi").call()
moveFunc.curry("xxxhdpi").call()
}
- 找到路劲node_modules\react-native\local-cli\bundle\assetPathUtils.js 添加如下:
switch (scale) {
case 0.75:
return 'ldpi-v4';
case 1:
return 'mdpi-v4';
case 1.5:
return 'hdpi-v4';
case 2:
return 'xhdpi-v4';
case 3:
return 'xxhdpi-v4';
case 4:
return 'xxxhdpi-v4';
}
3.在项目下面先运
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
-
生成之后要去文件夹删除如图(选中的文件删除即可):
4.打开android studio, 打开项目里面的 android 目录如图:
如没有密钥可以先创建
创建的密钥请记住密码
点击下一步
第一个框是生成之后的打包文件
第二个是发布什么包
第三个可全部勾选
然后点击下一步。
注: 如果遇到一些问题,可以先 clean Project 然后再build Project。也可以先运行看项目能否跑起来。