JavaScript使用DeviceOne开发实战(一) 配置和起步
2015 年 9 月 底,DeviceOne Release发布。至此,DeviceOne 基本完成了对多端的支持。基于 DeviceOne 可以:
- HTML5、Android、iOS、Windows 多端代码一次编写,各处复用;
- 实时简单部署。
- 本地化UI
在接下来的时间,我会通过一系列文章来介绍 DeviceOne。本文介绍环境配置以及如何建立一个简单的项目。(注:本篇文章 iOS 和 Android和Windows 开发都适用。)
目前使用 DeviceOne 开发可以在Windows 或者 Mac 系统进行。
下面介绍下DeviceOne环境搭建,不管是应用开发还是组件开发,都需要搭建开发环境,只需要3分钟就可以完成。
1. 硬件环境
- PC电脑或MAC电脑一台用于开发
- 移动设备一台用于调试和测试,手机或pad都可以(android、ios、windowsphone都可以),Android还可以尝试模拟器。
2. 软件环境
操作系统(MAC或Windows都支持)
Windows: 7 以上操作系统。
MAC:10.9 以上移动设备:
Android : 4.0以上操作系统
IOS : 7.0 以上操作系统
WinPhone :8.1 以上操作系统JDK:1.7版本及以上
3. 网络环境
- 外网环境:很多功能都需要有外网才能进行,App的开发和调试可以离线进行。
4. 注册DeviceOne开发者账户
- 要想使用DeviceOne开发应用,首先需要在www.deviceone.net上注册一个自己的开发者账号,注册的地址是 注册
5. 下载设计器(IDE)
用户需要下载和使用DeviceOne提供的设计器(IDE)来开发移动应用,设计器提供所见即所得的方式来构建UI,提供代码编辑器来编写标准的javascript或lua的逻辑脚本代码,使用设计器提供的即时调试功能和真机移动设备互动调试应用,最后通过设计器提供的打包功能来发布最终应用。
设计器目前包含2个大的版本,一个是基于Eclipse RCP的版本,一个是自己开发的只支持Windows的版本。我们推荐大家使用基于Eclipse的版本。
下载地址是http://docs.deviceone.net/ 平台—>下载中心安装设计器,直接找到刚才下载好的zip文件。解压到您相应的位置。本设计器是免安装绿色版,Windows的版本直接到解压好的文件路径下找到DoStudio.exe,双击打开。Mac版本解压后直接双击dostuio.app就可以启动。在启动的过程中可能会碰到一些问题,可以参考新版设计安装和启动问题整理
开发环境搭建完成后,我们开始尝试开发第一个DeviceOne移动应用,下面一步步介绍一下Hello DeviceOne应用的构建方法
1. 新建应用
首先打开设计器,点击新建项目,新建项目需要联网,输入用户密码验证码后登陆。但是创建完之后是支持离线开发和调试的。
在弹出的对话框中填写新建项目的名称并选择编写程序想要使用的前端脚本语言,目前可以选择JavaScript和Lua两种,还可以配置基本项目模板,包含空页面模板,带listview的模板等等,还可以配置屏幕分辨率,都配置好后点击确定按钮,会自动生成一个工程项目
我们可以看到设计器主页面如下图,我们可以在设计器里左侧工程导航区树上看到所有代码,其中app.js是整个程序的入口,类似于其它开发语言的main函数。更多的文件结构介绍请参考“DeviceOne应用结构”文档。设计器的详细说明可以参考“设计器使用指南”文档。
我们可以尝试在“控件列表”里拖拽一个Label组件到index.ui文件对应的“视图设计”,设置Label的背景颜色为绿色。视图设计可以所见即所得的拖拽和设置一个界面元素的基本属性和专有属性。
我们再修改一下index.ui.js源代码,把Hello World改成Hello DeviceOne。在js文件里可以修改应用运行的逻辑。
To Be Continue .....
JavaScript使用DeviceOne开发实战(一) 配置和起步的更多相关文章
- JavaScript使用DeviceOne开发实战(三)仿微信应用
这是一个系列的文档,长期目标是利用DeviceOne开发一些目前使用广泛的优质手机应用,我们会最大化的实现这些应用的每一个功能和细节,不只停留在简单的UI模仿和Demo阶段,而是一个基本可以使用的实际 ...
- JavaScript使用DeviceOne开发实战(五)仿ZAKER应用
关于index底下切换的的组件,可以用ViewShower实现,详见: do_ViewShower http://bbs.deviceone.net/forum.php?mod=viewthread& ...
- JavaScript使用DeviceOne开发实战(四)仿优酷视频应用
开发之前需要考虑系统的差异性,比如ios手机没有回退键,所以在开发时一定要考虑二级界面需要有回退键,否则ios的手机就会陷入到这个页面出不去了.安卓系统有回退键,针对这个情况需要要求用户在3秒钟之内连 ...
- JavaScript使用DeviceOne开发实战(二) 生成调试安装包
生成调试安装包 首先需要说明的是,这个步骤并不是每次调试App都必须的,大部分情况生成一次调试安装包,安装到手机上之后就可以忽略整个这个步骤.因为调试安装包包含了很多原生组件,都是可以定制勾选的,如果 ...
- JavaScript使用DeviceOne开发实战(六)点墨真实案例
qq群里的yan用户开发的App,基本完工大家可以看看 安装二维码是 QQ群:365443130
- AI应用开发实战 - 从零开始配置环境
AI应用开发实战 - 从零开始配置环境 与本篇配套的视频教程请访问:https://www.bilibili.com/video/av24421492/ 建议和反馈,请发送到 https://gith ...
- Spring Boot微服务电商项目开发实战 --- 基础配置及搭建
根据SpringBoot实现分布式微服务项目近两年的开发经验,今天决定开始做SpringBoot实现分布式微服务项目的系列文章,帮助其他正在使用或计划使用SringBoot开发的小伙伴们.本次系列文章 ...
- 《JavaScript 设计模式与开发实战》第一部分(1、2、3章)笔记
第1章:面向对象的JavaScript 动态类型和鸭子类型 编程语言按照数据类型大体可以分为两类: ① 静态类型语言:在编译时便已确定变量的类型. ② 动态类型语言:变量类型要到程序运行的时候,待变量 ...
- AI应用开发实战 - 手写识别应用入门
AI应用开发实战 - 手写识别应用入门 手写体识别的应用已经非常流行了,如输入法,图片中的文字识别等.但对于大多数开发人员来说,如何实现这样的一个应用,还是会感觉无从下手.本文从简单的MNIST训练出 ...
随机推荐
- [LeetCode][Java]Candy@LeetCode
Candy There are N children standing in a line. Each child is assigned a rating value. You are giving ...
- NSURLSession的基本使用
一.简单说明 在iOS9.0之后,以前使用的NSURLConnection过期,苹果推荐使用NSURLSession来替换NSURLConnection完成网路请求相关操作. NSURLSession ...
- C# System.Timers.Timer的一些小问题?
比如设置间隔时间是 1000msSystem.Timers.Timer mytimer = new System.Timers.Timer(1000);问题若响应函数执行的时间超过了 1000 ms, ...
- Spring 常用的一些工具类
学习Java的人,或者开发很多项目,都需要使用到Spring 这个框架,这个框架对于java程序员来说.学好spring 就不怕找不到工作.我们时常会写一些工具类,但是有些时候 我们不清楚,我们些的工 ...
- 动态加载js文件
由于最近在弄echarts,关于地图类的效果,但是全国地图整体的js文件太大了,加载很耗费资源,所以要根据不同省份加载不同地区的js地图, 于是就想的比较简单, var script = docume ...
- JS-字符串操作-替换
<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content=&q ...
- ulipad源码包配置环境及安装
一.准备下载的安装包: 1.python(我电脑配置的是2.7)下载地址http://pan.baidu.com/s/1qWrGZk4 2.wxpython(我这里是wxpy3.0,配套python2 ...
- CodeForces 742B Arpa’s obvious problem and Mehrdad’s terrible solution (暴力枚举)
题意:求定 n 个数,求有多少对数满足,ai^bi = x. 析:暴力枚举就行,n的复杂度. 代码如下: #pragma comment(linker, "/STACK:1024000000 ...
- JDBC学习笔记(2)
上一篇博客简单介绍了JDBC连接的简单知识,下面就详细介绍.李勇老师对JDBC连接有很好的比喻: 首先加载驱动,其实就是一些类,就是jar包,要加载到classpath里面的.实际的程序,服务和数据库 ...
- 20151013 C# 第一篇 流程控制语句
20151013 流程控制语句: 1.选择语句 if … else if...else 选择语句 if(布尔表达式){ 语句块:} if(布尔表达式){ 语句块1:}else{ 语句块2:} i ...