不花一分钱,就可以做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应用的更多相关文章

  1. 构建微服务开发环境8————Hello 微服务

    [内容指引] 1.用IDEA打开微服务项目; 2.更新Maven依赖: 3.IntelliJ IDEA JDK配置; 4.修改代码: 5.运行微服务: 6.将代码变更提交到Github. 经过前面的努 ...

  2. Expo大作战(三)--针对已经开发过react native项目开发人员有针对性的介绍了expo,expo的局限性,开发时项目选型注意点等

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  3. 【React Native开发】React Native应用设备执行(Running)以及调试(Debugging)(3)

    ),React Native技术交流4群(458982758),请不要反复加群.欢迎各位大牛,React Native技术爱好者加入交流!同一时候博客左側欢迎微信扫描关注订阅号,移动技术干货,精彩文章 ...

  4. 黑少微服务商店之Iron Cloud微服务开发云

    近日,由黑少微服务研发团队推出的Iron Cloud微服务开发云已经正式对外提供服务,这是国内第一家基于云端操作的微服务专业开发工具. Iron Cloud 微服务开发云(www.ironz.com) ...

  5. WebService 服务开发

    开发 WebService 服务首先需要根据接口的要求编写相关的 wsdl 文件.编写 wsdl 文件需要先对 XML 语法.XML Schema 语法以及 SOAP 语法有一些简单了解. 假设需要提 ...

  6. 开发者福音!面向Web场景的云开发服务正式开放!

    导 语 继支持小程序开发之后,云开发也支持Web使用啦!开发者们可以使用云开发提供的云端能力,直接开发网站应用,如PC端网页.公众号中的网页等.由此开发者可以在网站应用中借助云函数实现业务逻辑,通过与 ...

  7. Go单体服务开发最佳实践

    单体最佳实践的由来 对于很多初创公司来说,业务的早期我们更应该关注于业务价值的交付,并且此时用户体量也很小,QPS 也非常低,我们应该使用更简单的技术架构来加速业务价值的交付,此时单体的优势就体现出来 ...

  8. 移动开发--Hybrid和Native混合开发-->HybridApp 、NativeApp、WebApp

    1.1.     APP三种开发模式 智能手机之普及不用多说,手机APP渗投到各个行业:电商(淘宝.京东等).金融(各手机行业.P2P借贷等).医疗(智慧医疗).交通(滴滴.Uber等).教育(慕课网 ...

  9. 【工业串口和网络软件通讯平台(SuperIO)教程】七.二次开发服务驱动

    SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1    服务接口的作用 围绕着设备驱动模块采集的数据,根据需求提供多种应用服务,例如:数据上传服务.数 ...

随机推荐

  1. Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密

    [前言] 在工作中,有时候我们请求的参数可能需要加密,比如登录接口中的密码做了加密操作,今天我就给大家介绍一种方法:Jmeter用BeanShell Sampler调用java写的jar包进行MD5加 ...

  2. Ubuntu16.04双网卡绑定

    服务器经常有多个网卡,为了保证网络冗余性,一个网卡出现故障时,不导致网络服务中断,可以懂多网卡网卡绑定来解决此问题. 环境: 系统:Ubuntu16.04 网卡:em1 em2 ip:192.168. ...

  3. ip route,ip rule, iptables和docker的端口映射

    iptables 默认5个表, 不可增加其他表 raw 用于配置数据包,raw 中的数据包不会被系统跟踪. filter 是用于存放所有与防火墙相关操作的默认表. nat 用于 网络地址转换(例如:端 ...

  4. JD孔_20160912

    1.买的 “航嘉(Huntkey)大白803 8位3米 总控开关 防过载保护 插座/排插/拖”  http://item.jd.com/1786149.html#product-detail 2.

  5. Nologging操作对standby的影响

    1.primary 首先要设置为 force_log mode ,然后再做备份,在应用到备库上. 2.switch over 之前需要检查v$database_block_corruption  视图 ...

  6. Silverlight 登陆界面

    美术水平有限,不喜勿喷. 界面代码,效果如下图 <UserControl x:Class="ElecDemoTelerikSL.Login" xmlns="http ...

  7. (转)yi_meng linux 下 ifcfg-eth0 配置 以及ifconfig、ifup、ifdown区别

    linux 下 ifcfg-eth0 配置 以及ifconfig.ifup.ifdown区别 原文:https://www.cnblogs.com/yi-meng/p/3214471.html这3个命 ...

  8. ThreadPoolExecutor线程池的keepAliveTime

    keepAliveTime含义 看了很多文章觉得都不能把keepAliveTime的意思说的很明白,希望通过自己的理解把keepAliveTime说的明确一些 先引用一句我觉得相对说的比较明白的含义: ...

  9. Android入门:Service入门介绍

    一.Service介绍 Service类似于Windows中的服务,没有界面,只是在后台运行:而服务不能自己运行,而是需要调用Context.startService(Intent intent);或 ...

  10. JAVA4大线程池

    不知不觉中我们电脑的硬件设施越来越好,从双核四线程普及到如今四核八线比比皆是.互联网发展至今,讲究的就是快,less is more,而且大数据的诞生和各种种类繁多的需求处理,单线程的程序逐渐不能满足 ...