您的位置:首页 > Web前端 > React

React Native 集成到原有Android项目中

2016-10-28 15:31 477 查看
React Native出来已经也有很长的时间了,虽然在市面上还不是特别流行,但是各个大公司已经集成在项目中,以及完全使用React Native来开发应用。react native是否能够完全替代原生APP,在我看来,所有简单的、没有应用的太多的底层技术的APP被替代只是时间的问题。大概,太多应用没有被react native所替代可能只是技术壁垒的问题,等到那一天的到来,再去了解或许已经晚了。加上腾讯即将推出的应用号,如果完全采用HTML5的开发方式,我不认为会与服务号有太多的差别。我们之所以愿意让原生APP待在手机里占用空间,愿意接受他们的自启,接受他们的推送,原因就是他们的体验好,使用更加流畅。我们可以大胆的猜测,微信应用号的开发可能是采用基于react native的进一步封装,进而采用类似于react native热更新的方法进行在APP的添加应用,才能真正的形成闭环,同时真正的替代原生APP。

1准备

保证你的电脑里面安装有jdk,sdk,Android studio。我们假设你已经是一位拥有经验的Android开发者。

参考官方文档,安装有react native环境。

一款比较好用的JavaScript开发IDE,推荐sublime或者Webstorm。

2开始

新建Android原生工程

使用Android studio新建一个工程,注意,这里需要把MinimumSdk改为16(因为React Native最多支持到16),并记住项目路径

安装npm环境

进入到项目工程的文件根目录,新建一个
package.json
文件,内容复制下面的内容

{
"name": "NumberTileGame",
"version": "0.0.1",
"private": true,
"scripts": {
"build": "(cd android/ && ./gradlew assembleDebug)",
"start": "node node_modules/react-native/local-cli/cli.js start",
},
"dependencies": {
"react": "15.3.1",
"react-native": "0.32.0"
}
}


其中
dependencies
下是你本地安装的react及react native版本,你可以在你新建的react native的Demo里面去查看。当然,如果你在较久的时间之前运行过react native项目的话,建议使用
react-native upgrade
进行更新。

如果你在运行的时候遇到

error “Could not get BatchedBridge, make sure your bundle is packaged properly” on start of app


可以添加如下代码

"start": "node node_modules/react-native/local-cli/cli.js start",
"bundle-android": "react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --sourcemap-output android/app/src/main/assets/index.android.map --assets-dest android/app/src/main/res/"


scripts
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  native android app