可以參考官方github網站:facebook Movies app The Movies app is a demonstration of basic concepts, such as fetching data, rendering a list of data including images, and navigating between different screens.
運行的命令如下:
git clone https://github.com/facebook/react-native.git
cd react-native
npm install
在Android模擬器運行:
cd react-native
./gradlew :Examples:Movies:android:app:installDebug
./packager/packager.sh
./gradlew :Examples:Movies:android:app:installDebug 這個命令會執行比較久,下載一堆的東西。特別是執行到ReactAndroid:downloadBoost時會需要較長的時間。這一步其實是在下載一個文件,文件路勁如下,可以手動查看下載的進度,這個文件一百多兆。
/react-native/ReactAndroid/build/downloads/boost_1_57_0.zip'
在運行上面的命令之前,你需要先裝好Android sdk,這個不必說了,開發Android必備,除了這個還需要安裝好NDK,並設置好環境變量。注意NDK不能用最新的12b版本,需要用10e版本,不然你會碰到下面的錯誤。ndk各版本下載鏈接:Android ndk 各版本 。
make: /Users/apple/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-g++: No such file or directory
make: /Users/apple/Library/Android/sdk/ndk-bundle/toolchains/arm-linux-androideabi-4.8/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-gcc-ar: No such file or directory
make: *** [/Users/apple/studyProject/react-native/ReactAndroid/build/tmp/buildReactNdkLib/local/armeabi-v7a/objs/folly_json/folly/StringBase.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [/Users/apple/studyProject/react-native/ReactAndroid/build/tmp/buildReactNdkLib/local/armeabi-v7a/objs/folly_json/folly/dynamic.o] Error 1
make: *** [/Users/apple/studyProject/react-native/ReactAndroid/build/tmp/buildReactNdkLib/local/armeabi-v7a/libboost.a] Error 1
:ReactAndroid:buildReactNdkLib FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':ReactAndroid:buildReactNdkLib'.
> Process 'command '/Users/apple/Library/Android/sdk/ndk-bundle/ndk-build'' finished with non-zero exit value 2
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
這個例子編譯運行了,運行另一個示例UIExplorer示例就很容易了,不過運行UIExplorer時你可能會碰到下面的錯誤,處理這個錯誤很easy,reload JS就可以了。
運行Movies和UIExplorer
react native都是用JS的語法寫的,對於我們這些以前使用C++,java,object-c寫客戶端程序的gg來說,看起來很蛋痛,下一步準備學習下js語法咯