目录

1.Android App开发方式

1.1 Native App (原生开发)

1.2 Web App

1.3 Hybrid App (混合开发)

1.4 JavaScript解析为Native

1.4.1 React Native(RN开发)

1.4.2 Weex

1.4.3 原理

1.5 CrossApp(C++开发)

1.5.1 Qt App

1.5.2 CrossApp

1.6 Google App Inventor

1.7 Xamarin(C#开发)


1.Android App开发方式

1.1 Native App (原生开发)

使用Java、C、C++进行开发App称之为Native App;

1.2 Web App

Web App就是使用前端技术(Html+CSS+JSS)开发的Web网站,然后转换工具转化成App,其实就是使用Android的浏览器(Webkit)访问Web网站;

优点:
开发成本低,周期短,兼容多平台,而且更新迭代只需修改服务器端,维护方便,如果只是作个人博客、宣传使用可以;

缺点:

用户体验性差,消息推送不及时,调用本地文件系统难,不能调用手机硬件;

有名的框架:

1 jQuery Mobile:是一个基于Html5的前端开发框架,主要创建移动Web应用应用于手机和智能电脑;

2 Bootstrap:是Twitter推出的一个使用Html+JS+CSS的前端开发工具包;

3 MUI:MUI是一套前端框架,由DCLOUD公司研发而成,MUI不依赖任何第三方JS库,MUI以iOS平台UI为基础,补充部分Android平台
             特有的UI控件;

1.3 Hybrid App (混合开发)

HyBrid App是介于webapp和NativeApp之间,使用Native开发,并且使用WebView访问网站,兼容了NativeApp和WebApp的优点;

主要使用Android WebView的相关可以参考:WebView详解

ebView,PhoneGap、Apache Cordova

1.PhoneGap:是一个采用HTML,CSS和JavaScript的技术,创建移动跨平台移动应用程序的快速开发平台。

2.salama:Salama ybrid SDK提供了一个JavaScript库,一个Native库;

1.4 JavaScript解析为Native

1.4.1 React Native(RN开发)

React是Facebook开源的一个JavaScript库;

React Native(简称RN)是Facebook开源的跨平台移动移动应用开发框架,是在React框架在移动开发的衍生物,目前支持iOS和Android;

1.4.2 Weex

Weex是阿里巴巴开源的一个基于Vue(JS框架)语法的移动应用开发框架,使用同一套代码可以在Android、iOS和web平台使用;

官网:http://weex.apache.org/cn/guide/

1.4.3 原理

都是通过中间工具把js文件执行过程过程中的各种命令发送到Native端进行执行;

React Native是使用React native bridge把通过React框架编写的编码发送到Native端进行执行;

Weex是使用JS bundle把通过Vue框架编写的编码发送到Native端进行执行;

Weex 表面上是一个客户端技术,但实际上它串联起了从本地开发、云端部署到分发的整个链路。开发者首先可在本地像编写 web 页面一样编写一个 app 的界面,然后通过命令行工具将之编译成一段 JavaScript 代码,生成一个 Weex 的 JS bundle;同时,开发者可以将生成的 JS bundle 部署至云端,然后通过网络请求或预下发的方式加载至用户的移动应用客户端;在移动应用客户端里,Weex SDK 会准备好一个 JavaScript 执行环境,并且在用户打开一个 Weex 页面时在这个执行环境中执行相应的 JS bundle,并将执行过程中产生的各种命令发送到 native 端进行界面渲染、数据存储、网络通信、调用设备功能及用户交互响应等功能;同时,如果用户希望使用浏览器访问这个界面,那么他可以在浏览器里打开一个相同的 web 页面,这个页面和移动应用使用相同的页面源代码,但被编译成适合Web展示的JS Bundle,通过浏览器里的 JavaScript 引擎及 Weex SDK 运行起来的。

1.5 CrossApp(C++开发)

1.5.1 Qt App

Qt:是一个跨平台C++图形用户界面应用程序开发框架;

Qt App是Qt提供了 Qt for Mobile App Develop来使用C++开发手机App,所以跨平台在Windows、Android、iOS部署应用程序;

1.5.2 CrossApp

CrossApp是9秒社团的一款完全免费、开源、跨平台的移动应哟开发引擎,基于MIT开源协议,基于OpenGL ES 2.0,采用MVC框架模式;

官方网站:http://crossapp.9miao.com/

1.6 Google App Inventor

Google App Inventor是Google推出一个直观的可视化编程环境,允许每个人 - 甚至是儿童 - 为智能手机和平板电脑构建功能齐全的应用程序。适合通过编码激发智力和创造力;

官方网站:http://appinventor.mit.edu/explore/

开发工具:http://ai2.appinventor.mit.edu/

1.7 Xamarin(C#开发)

Xamarin.Forms 是一个用C#语言开发跨平台应用的集成开发环境,允许开发人员有效创建可跨 iOS、Android、通用 Windows 平台应用共享的本机用户界面布局。

Android移动开发的几种方式相关推荐

  1. [Android开发]Android更新UI的五种方式

    Android更新UI的五种方式: 1.handler.post 2.activity.runOnUiThread 3.view.post 4.handler+Thread 5.AsyncTask 下 ...

  2. Android软件开发Log实时查看方式(无需数据线)

    转: Android软件开发Log实时查看方式(无需数据线) 场景 在做Android软件开发的时候,查看实时Log是有效的debug方式之一,如果软件只关联到一部手机,那使用IDE的log查看工具或 ...

  3. android开启gps功能,android 打开GPS的几种方式

    1.在讨论打开gps的之前先看下如何检测gps的开关情况: 方式一: boolean gpsEnabled = locationManager.isProviderEnabled(LocationMa ...

  4. [阿里Hao]Android无线开发的几种经常使用技术

    本文由阿里巴巴移动安全client.YunOS资深project师Hao(嵌入式企鹅圈原创团队成员)撰写,是Hao在嵌入式企鹅圈发表的第一篇原创文章.对Android无线开发的几种经常使用技术进行综述 ...

  5. 详解移动App开发的几种方式和各自详细的优缺点,以及如何选择App开发模式,最全总结,一次讲清

    移动App开发的几种方式 原生App,即NativeApp WebApp HybridApp,(完全依赖原生App中的WebView组件,本质上只是对WebView组件做更多的扩展,为它提供更多的ap ...

  6. android ui 最新教程,Android更新UI的五种方式,androidui五种

    Android更新UI的五种方式,androidui五种handler.post activity.runOnUiThread view.post handler+Thread AsyncTask 例 ...

  7. android注册广播两种方式,Android 注册广播的两种方式对比

    Android 注册广播的两种方式对比 1.常驻型广播 常驻型广播,当你的应用程序关闭了,如果有广播信息来,你写的广播接收器同样的能接受到, 他的注册方式就是在你的应用程序中的AndroidManif ...

  8. android 图片方法,分享实现Android图片选择的两种方式

    Android选择图片的两种方式: 第一种:单张选取 通过隐式启动activity,跳转到相册选择一张返回结果 关键代码如下: 发送请求: private static final int PICTU ...

  9. android使用其他应用打开方式,Android 启动activity的4种方式及打开其他应用的activity的坑...

    Android启动的四种方式分别为standard,singleTop,singleTask,singleInstence. standard是最常见的activity启动方式,也是默认的启动的方式. ...

  10. android视频播放的方法,Android实现视频播放的几种方式

    Android实现视频播放的3种方式 Android提供了常见的视频编码,解码机制,使用Android自带的MediaPlayer,MediaController等类可以很方便的实现视频播放的功能.支 ...

最新文章

  1. html 自动隐藏属性,隐藏(属性) | hidden (attribute)
  2. 奥尼尔的话剧《榆树下的欲望》
  3. 操作系统之内存管理:3、基本分页存储管理
  4. 美国三大股指周五收高 费城半导体指数逆势微跌0.33%
  5. APP价格标签页设计灵感!多款案例选择!
  6. opencv实现图片及视频流(摄像头)的人脸检测
  7. MySQL - 实战 棋牌游戏数据库开发
  8. ubuntu取消代理
  9. 世界上到底有多少种编程语言?
  10. Android工具 - 随机测试(猴子)
  11. ES2015部分新特性示例
  12. snmpwalk命令常用方法总结
  13. 【JSON】谷歌浏览器JSON可视化插件:JSON-Handle
  14. JavaScript 中的事件类型1(读书笔记思维导图)
  15. VirtualBox中win7系统无法安装增强功能
  16. anaconda损坏的卸载方式
  17. 硬盘界面发展史:ATA, AHCI, NVMe. PATA, SATA, SAS, Mini PCIE/MSATA, M.2(PCEx2/SATA or PCIEx4)
  18. 【zzt原创】pdf内容提取,2021年9月最新可用pdfminer例子
  19. 推荐必读书籍整理集合
  20. Windows常用快捷键(提高您的工作效率轻松完成日常工作)

热门文章

  1. Ubuntu里安装快捷键截图软件Flameshot
  2. unity3d 不规则外发光描边_PS发光字体教程
  3. 使用STM32进行Flash地址空间的数据读取
  4. VCL语法教程——1.变量及labels
  5. QQ VS 360事件全部经过!-----现实生活中的MBA经典案例!
  6. 苹果软件更新在哪里_手机资讯:iPhone 为什么比安卓手机好用iPhone 的独到之处在哪里...
  7. 使用netstat命令统计established状态的连接数
  8. Enterprise Architect Professional Edition
  9. python聚类系数_NetworkX 计算聚类系数的Python实现
  10. 天下数据解析域名及域名转向