什么是移动App开发:通俗的理解,就是把开发Web网站的技术(HTML+CSS+JS),通过某种方式,移植到移动App开发上进行使用,这种利用Web开发技术进行移动端开发体验的方式,叫做混合移动App开发!
原生开发:它的英文单词是(NativeApp),指的就是使用 IOS、Android 官方提供的工具、开发平台、配套语言进行 手机App开发的方式;
混合开发:(HybirdApp)就是使用前端已有的技术,HTML + CSS + JS ,然后再搭配一些相关的打包编译技术,就能够开发出一个手机App,安装到手机中进行使用;
什么是App:App是(Application的缩写),意思是:可安装的应用程序;
App的分类:
App和Web的区别:
只能做页面 -> 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
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项目android studio中的安卓模拟器,或者将启用USB调试的真机连接到电脑上,运行weex run android,打包部署weex项目