仅用移动开发服务:开发native应用
不花一分钱,就可以做native应用开发,这在以前是根本不敢想象的事儿。然而在今天,移动开发工具和服务已经五花八门,聪明的开发者只要随心所欲的抓取几个顺手的,就能完成native开发。今天给大家介绍的思路其实很简单:
1. 使用Nitrous.IO云端编程环境,开启Node.JS的box模块。
2. 然后使用Github账号连接上Node.JS box。
3. 内容部分,可以使用Ionic框架和Web代码,快速开发出我们需要的界面。
4. 使用PhoneGap编译出native的Android app。
5. 最后还可以使用Firebase连接上你的app,作为后端服务。

Nitrous.IO
Nitrous.IO
提供一个在线的集成开发环境,Nitrous.IO把编程环境完全移植到云端平台,开发者只要网络连接进Nitrous.IO,就可以不用在本地搭建的开
发环境下进行编程,解决了在多种语言编程下,编程环境冲突问题。截至目前,Nitrous.IO支持Ruby、Node.js、Python和Go这四种
编程环境。

此外,Nitrous.IO为开发者提供一个包括拥有384MB内存和750MB运行在云服务平台上的“沙盒”开发环境(Box)。开发者可以为不同的编程语言,创建不同的Box,不同的Box之间互不影响,并且每个Box还可以独立启动运行和停止。
一
旦你在Nitrous.IO中创建了Node.JS
box你就可以使用在线的编程环境了。为了更方便的进行版本管理,可以连接到你的Github账户,这里需要你添加一个Public SSH
key,这样Nitrous.IO和你的Github账户高就挂起来了。你需要在GitHub上创建一个新的项目,把源的地址挂到Nitrous.IO
中。


相关链接:Nitrous.IO官网、Nitrous.IO在Mobilehub主页
Ionic
使
用native代码开发出来的应用,常被冠以运行速度更快,更加流畅,用户体验更好等高帽子。但是倔强的Web设计师和开发人员,总是想找到这么一种途径
来使用Web代码。他们认为Web开发更加简单方便。(虽然也要面对各种JS的虐心)这个名为Ionic的前端框架,又是玩跨界的。它可以在构建
native应用中,使用HTML5、CSS3和JavaScript。欢迎大家踊跃尝试,并分享试用心得给我们。

Ionic
并不是一个可以完全替代PhoneGap的方案,也不是一个真正的JavaScrip框架,它的重点是在于UI交互设计。这个框架附带了SASS,并且可
选各种AngularJS扩展,有许多部件可以调用,如按钮、切换、页眉页脚、标签栏等等。并且最令人印象深刻的是,Ionic团队制作了一套很棒的教程
和示例。

在这里,我们要实现一个很简单的to-do-list的应用,记录我们每日都作了那些工作。
相关链接:Ionic官方网站、Ionic的Mobilehub主页
PhoneGap
PhoneGap
是一款开源的免费移动应用开发框架,能够让开发者使用HTML、JavaScript、CSS等Web技术来开发跨平台移动App,支持iOS、
Android、BlackBerry、webOS、Windows
Phone、Symbian以及bada系统平台。在使用PhoneGap之前,你可能需要一个AdobeID,或者使用Github账号注册。

登陆之后建立一个新的应用程序,选择刚才在Github上建立的repo,一旦添加好这些,就可以选择Build App了。

把刚刚编译好的APK包,装在Android手机上,界面都可以点击,但也许你发现它还不能对数据库进行读写。前端的皮我们已经画好,下面我们需要强大的后端服务支持。

相关链接:PhoneGap官方网站、PhoneGap在Mobilehub主页
Firebase
Firebase
是一家位于旧金山的后端服务提供商,公司于去年启动了其JavaScript API和云服务,主要为Web
App开发者提供后端数据的实时处理服务。使用Firebase的开发者无需担心数据存储问题,无需架设自己的服务器,就可以让自己的App实时更新数
据,App用户也无需刷新页面获取新数据。据悉,Firebase启动一周后已拥有超过4000名开发者注册。无论是Android还是iOS开发者,都
可以使用Firebase开发本地应用。

上
文已经提到,Ionic可以轻松调用各种AngularJS扩展,在这里我们可以使用AngularFire来让App与Firebase连接。挂接很简
单,只需要在index.html文件的<head>部分中加入调用script即可。当然许多核心的代码还少不了需要进一步修改和完善。
<p><!-- Firebase and AngularFire Extensions --></p><p><script src='https://cdn.firebase.com/v0/firebase.js'></script>
<span style="font-size: 14px; line-height: 24px;">
<script src="https://cdn.firebase.com/libs/angularfire/0.5.0-rc1/angularfire.js"></script></span></p>
之后需要进行一些测试,你能在Firebase后台预览这些时实的数据。

相关链接:Firebase官网、Firebase在Mobilehub主页
应用测试
重新在PhoneGap中Build出新的APK包,将其考入手机中,就可以欣赏自己的作品了。你可以添加每日的任务条目,编辑内容,实现一个to-do-list应用最基本的功能。

移动开发工具
下一步?之后需要我们对产品进行不断的打磨,设计好看的图标,优雅的动画效果,以及更多功能。通过使用这些移动开发服务和工具,我们可以不花费一分钱,将所有的精力都集中在开发本身。
仅用移动开发服务:开发native应用的更多相关文章
- 构建微服务开发环境8————Hello 微服务
[内容指引] 1.用IDEA打开微服务项目; 2.更新Maven依赖: 3.IntelliJ IDEA JDK配置; 4.修改代码: 5.运行微服务: 6.将代码变更提交到Github. 经过前面的努 ...
- Expo大作战(三)--针对已经开发过react native项目开发人员有针对性的介绍了expo,expo的局限性,开发时项目选型注意点等
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- 【React Native开发】React Native应用设备执行(Running)以及调试(Debugging)(3)
),React Native技术交流4群(458982758),请不要反复加群.欢迎各位大牛,React Native技术爱好者加入交流!同一时候博客左側欢迎微信扫描关注订阅号,移动技术干货,精彩文章 ...
- 黑少微服务商店之Iron Cloud微服务开发云
近日,由黑少微服务研发团队推出的Iron Cloud微服务开发云已经正式对外提供服务,这是国内第一家基于云端操作的微服务专业开发工具. Iron Cloud 微服务开发云(www.ironz.com) ...
- WebService 服务开发
开发 WebService 服务首先需要根据接口的要求编写相关的 wsdl 文件.编写 wsdl 文件需要先对 XML 语法.XML Schema 语法以及 SOAP 语法有一些简单了解. 假设需要提 ...
- 开发者福音!面向Web场景的云开发服务正式开放!
导 语 继支持小程序开发之后,云开发也支持Web使用啦!开发者们可以使用云开发提供的云端能力,直接开发网站应用,如PC端网页.公众号中的网页等.由此开发者可以在网站应用中借助云函数实现业务逻辑,通过与 ...
- Go单体服务开发最佳实践
单体最佳实践的由来 对于很多初创公司来说,业务的早期我们更应该关注于业务价值的交付,并且此时用户体量也很小,QPS 也非常低,我们应该使用更简单的技术架构来加速业务价值的交付,此时单体的优势就体现出来 ...
- 移动开发--Hybrid和Native混合开发-->HybridApp 、NativeApp、WebApp
1.1. APP三种开发模式 智能手机之普及不用多说,手机APP渗投到各个行业:电商(淘宝.京东等).金融(各手机行业.P2P借贷等).医疗(智慧医疗).交通(滴滴.Uber等).教育(慕课网 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】七.二次开发服务驱动
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 服务接口的作用 围绕着设备驱动模块采集的数据,根据需求提供多种应用服务,例如:数据上传服务.数 ...
随机推荐
- 利用docker部署redis集群
目录 一.首先配置redis.conf文件,... 1 1.获取配置文件... 1 2.修改各配置文件的参数... 2 二.下载redis镜像.启动容器... 2 1.创建网络... 2 2.拉取镜像 ...
- 洛谷P3078 [USACO13MAR]扑克牌型Poker Hands
题目描述 Bessie and her friends are playing a unique version of poker involving a deck with \(N\) (\(1 \ ...
- python之Selenium库的使用
一 什么是Selenium selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)和测试的并 ...
- 使用nsenter工具进入Docker容器
查看本机装没有nsenter whereis nsenter或者whatis nsenter 未安装先安装,网上有很多这样的脚本 vi nsenter.sh #!/bin/bashcurl https ...
- JD孔_20160901
1.买的 “[京东超市]GL格朗 耳温枪/电子体温计/温度计/耳温计EW-2” http://item.jd.com/385507.html 2.
- Unity Unity脚本类为什么要尽量避免继承MonoBehaviour类?
- 如何处理HTML标签属性
在jQuery里我们可以通过.attr()的方法来实现对HTML标签属性(tag attribute)处理. 1. 获取标签属性的值 (演示) 语法:$('选定目标').attr('属性名') 例子如 ...
- VS2015配置使用Sqlite以及EF6框架记录
项目中需要使用到Sqlite本地数据库保存数据,以防止离线情况下设备的正常使用. 一.下载vs2015下的sqlite插件,并安装 插件下载页面:http://system.data.sqlite.o ...
- Servlet的生命周期以及线程安全问题
一:Servlet生命周期图,以及注意事项 二:代码演示 LifeCycleServlet.java package cn.woo.servlet; import java.io.IOExceptio ...
- mysql配置jdbc
jdbc.driverClassName=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/database?useUnicode=t ...