什么是移动App开发:通俗的理解,就是把开发Web网站的技术(HTML+CSS+JS),通过某种方式,移植到移动App开发上进行使用,这种利用Web开发技术进行移动端开发体验的方式,叫做混合移动App开发!
- 优点:流畅、稳定、基本上一些App都可以脱网运行,用户体验好;
- 缺点:不能跨平台
- 优点:可以跨平台(浏览器天生就是跨平台的)
- 缺点:没有App流畅、不稳定,受限于网速和网络
只能做页面
-> Ajax前后台数据交互
-> Jquery、Bootstrap
-> webApp -> 三大框架
-> 可以做手机混合App/桌面应用
-> 可以做手机原生App
-> 将来或许可以发射火箭发射卫星发射导弹
-> 终极目标:统一全宇宙
根据需求搞设计,根据设计做开发
Angular, Vue, React 这三个都是前端框架,我们在进行混合App开发的时候,只是用到了这三个框架的【基础语法】而已;
Ionic, Weex, ReactNatvie 这三个都是打包工具(提供了相关的命令行,只要运行指定的命令,就能够把项目打包成一个手机App出来),能够把我们开发出来的应用,最终打包成一个可安装的手机端程序安装包;同时,这三个东西,也提供了好用的一些小组件,方便我们去构建移动App的用户界面;
API地址
Hbuilder这个工具,是一个在线打包工具,使用很方便,不需要在本地配置开发环境;直接将做好的网站,通过一些简单的操作,就能在线打包为一个App出来;
好处:本地不用配置开发环境;操作方便,对于程序员来说不关心打包的过程,打包过程对于我们来说是透明的;
缺点:程序员很少能干预打包的过程;源代码被提交到了云端的服务器,存在项目核心代码被泄露的风险;
作用:将需要全局使用的工具或者应用程序,配置到Path环境变量中,可以很方便的通过命令行的形式,在任何想要运行这些应用程序的地方,运行它们;
JAVA_HOME
的系统环境变量,值为C:\Program Files (x86)\Java\jdk1.8.0_112
,也就是安装JDK的根目录Path
,在Path
之后新增%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
CLASSPATH
,值为.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
javac
,如果能出现javac的命令选项,就表示配置成功!注意:需要安装最新的长期稳定版本,不要实验版本;安装完毕之后的node.js会自动配置到全局系统环境变量中
安装完毕后,可以输入node -v
查看node版本号;
大多数情况下操作系统自带C++环境,不需要手动安装C++环境;
如果运行报错,则需要手动安装visual studio中的C++环境;
Git安装完毕后,会自动配置到系统环境变量中;
可以通过运行git --version
来检查是否正确安装和配置了Git的环境变量;
Add Python to path
,这样才能自动将Python安装到系统环境变量中;python
,检查是否成功安装了python。installer_r24.3.4-windows.exe
,最好手动选择安装到C盘下的android目录android-25
、android-23
(react-native必须依赖这个)解压后,放到platforms
文件夹下platform-tools
,放到platform-tools
文件夹下tools
,放到安装根目录中build-tools_r23.0.1-windows.zip(react-native必须依赖这个)
、build-tools_r23.0.2-windows.zip(weex必须依赖这个)
和build-tools_r23.0.3-windows.zip
,并将解压出来的文件夹,分别改名为版本号23.0.1
、23.0.2
和23.0.3
;在安装目录中新建文件夹build-tools
,并将改名为版本号之后的文件夹,放到新创建出来的build-tools
文件夹下extras
文件夹,在extras
文件夹下新建android
文件夹;解压m2responsitory
文件夹和support
文件夹,放到新建的extras -> android
文件夹下ANDROID_HOME
,值为android SDK Manager的安装路径C:\Users\liulongbin\AppData\Local\Android\android-sdk
,紧接着,在Path中新增;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;
npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
Yarn是Facebook提供的替代npm的工具,可以加速node模块的下载。React Native的命令行工具用于执行创建、初始化、更新项目、运行打包服务(packager)等任务。
npm install -g yarn react-native-cli
安装完yarn后同理也要设置镜像源:
yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global
react-native init AwesomeProject
创建React-Native项目cd AwesomeProject
切换到项目根目录中,运行adb devices
来确保有设备连接到了电脑上react-native run-android
打包编译安卓项目,并部署到模拟器或开发机中adb devices
查看当前接入的设备列表,打包好的文件,放到了android\app\build\outputs\apk
目录下问题1:开启悬浮框权限;
问题2:Could not get BatchedBridge, make sure your bundle is packaged correctly
解决方案:在终端中,进入到项目的根目录,执行下面这段命令行:
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
运行之前,需要确保android/app/src/main/
目录下有assets
文件夹,如果没有,手动创建之~,再运行上面的命令;
问题3:could not connect to development server
解决方案:晃动手机,唤起设置属性窗口,点击“Dev settings”,再点击Debuug server host 出现设置ip地址窗口,填写Ip地址和端口号8081,例如192.168.1.111:8081
npm install -g weex-toolkit
安装Weex 官方提供的 weex-toolkit
脚手架工具到全局环境中weex create project-name
初始化Weex项目weex platform add android
安装android模板,首次安装模板时,等待时间较长,建议fq安装模板android studio
中的安卓模拟器
,或者将启用USB调试的真机
连接到电脑上,运行weex run android
,打包部署weex项目