1爱谁、命令cd '目錄'下更耻,命令react-native init 'project'創(chuàng)建項目访圃。
2、運(yùn)行報錯網(wǎng)絡(luò)錯誤500,則是版本問題捅厂,需回到目錄下命令react-native init 'project' -version 0.55.4,加入三方插件后報這個錯,則刪除app后重新運(yùn)行。
3销凑、之后再次運(yùn)行遇到make sure you're either running a metro server or that your bundle 'index.android.budle' is packaged correctly for realease,則是android目錄下build.gradle中的targetSdkVersion改為27仅炊,而不是28斗幼。
選擇照片相機(jī)時出錯,
showImagePicker Failed resolution of: Landroid/support/v4/graphics/drawable/DrawableWrapper
implementation("com.android.support:support-media-compat:27.1.1")
implementation("com.android.support:support-v4:27.1.1")
implementation("com.android.support:exifinterface:27.1.1")
implementation 'com.android.support:appcompat-v7:27.1.1'
均需將此依賴升級成27.1.1版本抚垄,否則報錯
申請開發(fā)版sha1
1蜕窿、命令.android進(jìn)入目錄谋逻,命令keytool -list -v -keystore debug.keystore后,輸入密碼(android)得到sha1桐经。
69:E4:A0:12:D9:A3:64:50:7C:4A:FC:DF:9E:72:5B:94:93:02:56:B9
申請發(fā)布sha2
1斤贰、打開項目 build => Generate Signed APK,Generate Signed APK灰色狀態(tài)次询,選擇File下Sync Project With Gradle Files刷新即可荧恍。
按步驟在項目 android/app 下生成一個 .keystore 文件,命令keytool -list -v -keystore (.keystore 文件路徑)屯吊,輸入密碼(1步驟中所設(shè)密碼)得到sha1送巡。
5C:92:CD:E9:91:29:B6:FC:F3:78:DC:FC:DF:92:A5:CB:8C:A0:C7:0F
2、命令sudo Keytool -genkey -alias 別名 -keyalg RSA -validity 20000 -keystore 證書
index.android.bundle問題
第一步:在Android/app/src/main目錄下創(chuàng)建一個空的assets文件夾
第二步: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/
再次執(zhí)行 react-native run-android
1.在項目根目錄下創(chuàng)建/bundle/iosBundle/目錄
2.在項目根目錄下運(yùn)行
react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/bundle/main.jsbundle --assets-dest ios/bundle
3.生成的index.ios.jsbundle導(dǎo)入ios項目中
4.在AppDelegate.m中使用main.jsbundle
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
上架應(yīng)用寶app加固后盒卸,下載加固包骗爆,
命令加固包路徑下,
/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/bin/jarsigner -verbose -keystore /Users/gaoyi/Desktop/Company/android_js/android/app/GHED.jks -signedjar app-release_2019_05_29_1.apk app-release_2019_05_29_legu.apk ghed
/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/bin/jarsigner簽名工具
/Users/gaoyi/Desktop/Company/android_js/android/app/GHED.jks jks工具
app-release_2019_05_29_1.apk 新生成的加固包apk
app-release_2019_05_29_legu.apk 下載的加固包apk
ghed jks別名
iOS 上啟動react-native項目:
創(chuàng)建podfile文件蔽介,內(nèi)容如下:
source 'https://github.com/CocoaPods/Specs.git'
platform:ios,'9.0'
use_frameworks!
target 'android_js' do
# 'node_modules'目錄一般位于根目錄中
# 但是如果你的結(jié)構(gòu)不同摘投,那你就要根據(jù)實際路徑修改下面的`:path`
pod 'React', :path => '../node_modules/react-native', :subspecs => [
'Core',
'CxxBridge', # 如果RN版本 >= 0.47則加入此行
'DevSupport', # 如果RN版本 >= 0.43,則需要加入此行才能開啟開發(fā)者菜單
'RCTText',
'RCTNetwork',
'RCTWebSocket', # 調(diào)試功能需要此模塊
'RCTAnimation', # FlatList和原生動畫功能需要此模塊
# 在這里繼續(xù)添加你所需要的其他RN模塊
]
# 如果你的RN版本 >= 0.42.0虹蓄,則加入下面這行
pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
pod 'GLog', :podspec => '../node_modules/react-native/third-party-podspecs/GLog.podspec'
pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec'
end
Xcode編譯報錯:在React 下 clang中找不到架構(gòu)x86_64的符號犀呼,在React.podspec中你需要改變 cxxreact下的
ss.compiler_flags = folly_compiler_flags
為
ss.dependency "DoubleConversion"
ss.dependency "GLog"
ss.compiler_flags = folly_compiler_flags
重新pod install即可。
react-native run-ios啟動報錯 No bundle URL present Make sure you're running a packager server...解決辦法
刪除ios文件夾下面的main.jsbundle文件中的內(nèi)容
運(yùn)行react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios重新構(gòu)建bundle薇组,構(gòu)建成功后運(yùn)行react-native run-ios