仅用移动开发服务:开发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 服务接口的作用 围绕着设备驱动模块采集的数据,根据需求提供多种应用服务,例如:数据上传服务.数 ...
随机推荐
- 帝都Day4(2)——数据结构
黄姓dalao is coming! 一.栈: 基本常识略. 例题:铁轨 模拟,O(n), Usaco2006 Nov 题目略 做法:单调栈(续命栈?) n//数量 a[]//奶牛 for(int i ...
- C语言的头文件和宏定义详解
原文链接:https://blog.csdn.net/abc_12366/article/details/79155540
- scala数据类型
# Scala数据类型 ## 1.数值类型 ### 1.1 与Java一样Scala也有8种数值类型 * Byte * Char * Short * Int * Long * Float * Doub ...
- Java编程中中文乱码问题的研究及解决方案
0 引言 Java最大的特性是与平台的无关性及开发环境的多样性.字符串被Java应用程序转化之前,是根据操作系统默认的编码方式编码.Java语言内部采用Unicode编码,它是定长双字节编码,即任何符 ...
- jQuery 获取和设置表单元素
jQuery提供了val()方法,使用它我们可以快速地获取和设置表单的文本框.单选按钮.以及单选按钮的值. 使用val()不带参数,表示获取元素的值 使用val()给定参数,则表示把值赋给元素 如下: ...
- Aspx 验证码_各种封装
验证码 namespace CZBK.TestProject.Common { public class ValidateCode { public ValidateCode() { } /// &l ...
- Arduino连接SHT10温湿度传感器--返回值不正常解决办法
如题目,arduino中连接温湿度传感器,用的是一个github开源项目,地址:点击打开,其实这个就是一个封装好的库,下载后把解压的文件夹复制到Arduino目录下的librarys文件夹内,重启Ar ...
- ElasticSearch安装(以Docker的方式)
拉取docker镜像: docker pull docker.elastic.co/elasticsearch/elasticsearch:6.1.1 命令行方式启动 测试环境 :docker ...
- 给 Magento 2 添加缓存层的分析与尝试
虽然黑色星期五有惊无险的过去了, 但是 Magento 2 社区版无法读写分离这个限制, 始终是悬在整个网站上的一把利剑. 我之前尝试过给 Magento 2 写一个 MySQL 读写分离的插件, 在 ...
- 使用Docx.dll插入图片在Centos 7 上报错:system.DllNotFound:libgdiplus.so
熬了N天,终于把WORD 文档打开替换.插入图片完好,部署,本机测试没有问题 可是一放到服务器(Centos 7) 就提示下面的错误: 度娘一下: https://www.cnblogs.com/xi ...