WebOS目前最新的官方SDK是1.4.5。其中包括了Mojo SDK和PDK。Mojo SDK是基于Javascript / HTML / CSS开发Web Application。而PDK是基于C/C++, 使用SDL, OpenGL ES库开发原生程序和游戏。
一. SDK的安装
官方SDK安装指南:
http://developer.palm.com/index.php?option=com_content&view=article&layout=page&id=1661
1. 安装Java Runtime
http://java.com/en/
安装后可运行java -version查看版本信息,确认安装成功。
2. 安装VirtualBox - 用于运行WebOS的模拟器。
注意应该安装3.2版本,新的4.0不能运行WebOS的image。
http://www.virtualbox.org/wiki/Download_Old_Builds_3_2
3. 下载SDK
SDK for 32-bit Windows:
http://cdn.downloads.palm.com/sdkdownloads/1.4.5.465/sdkBinaries/Palm_webOS_SDK-Win-1.4.5-465-x86.exe
SDK for 64-bit Windows:
http://cdn.downloads.palm.com/sdkdownloads/1.4.5.465/sdkBinaries/Palm_webOS_SDK-Win-1.4.5-465-x64.exe
下载完毕后,运行"程序"-->"Palm"-->"WebOS SDK"-->"Palm Emulator", 分辨率随便选,比如320x480即可打开WebOS的模拟器了。
二. 创建第一个Hello World程序
1. 创建一个用于存放WebOS 工程的文件夹。比如D:/WebOS_Projects
2. 运行cmd, 运行"cd D:/WebOS_Projects", 然后运行"palm-generate HelloWorld"
你会发现D:/WebOS_Projects/HelloWorld 已经自动创建好了。
其中包括:
app/assistants -- 用于存放.js文件。
app/views -- 用于存放.html文件。
images -- 用于存放程序用到的图片。
stylesheets -- 用于存放程序用到的css样式文件。
appinfo.json -- 用于配置应用程序属性的json文件:
{ "id": "com.yourdomain.helloworld", "version": "1.0.0", "vendor": "My Company", "type": "web", "main": "index.html", "title": "HelloWorld", "icon": "icon.png" }
id: 用于命名应用程序,按照"com.公司名.应用名"这样的规则来命名。需要全部使用小写。
version: 版本信息。
vendor: 公司
type: WebOS应用程序的类型。"web"为Web Application, "pdk"为PDK开发的原生程序或游戏。这里设置为"Web"即可。
main: 入口调用的html文件,默认为index.html。
title: 程序标题。
icon: 程序使用的icon图标。
framework_config.json -- 用于配置一些框架信息,比如debug level等。
icon.png -- 程序图标(48x48)。
index.html -- 标准的主页面。
sources.json -- 用于描述应用包含的js文件。
[ { "source": "app/assistants/stage-assistant.js" } ]
3. 接下来,运行"palm-generate -t new_scene -p "name:first" HelloWorld"。
表示为HelloWord程序创建一个名字为"first"的新的scene。你会发现HelloWorld文件夹发生了如下改变:
(1). 新增了app/assistants/first-assistant.js
(2). 新增了app/views/first/first-scene.html
(3). sources.json文件增加了first-assistant.js:
[ {"source": "app/assistants/stage-assistant.js"}, { "scenes": "first", "source": "app/assistants/first-assistant.js" } ]
4. 打开app/assistants/state-assistant.js文件,在StageAssistant.prototype.setup函数中加入this.controller.pushScene ("first");
表示在初始Stage的时候压入并且显示我们新建的名字为"first"的这个scene。
function StageAssistant() { /* this is the creator function for your stage assistant object */ } StageAssistant.prototype.setup = function() { /* this function is for setup tasks that have to happen when the stage is first created */ this.controller.pushScene ("first"); };
5. 运行"palm-package HelloWorld"
这个命令把整个HelloWorld文件夹打包成一个ipk文件:
D:/WebOS_Projects/com.yourdomain.helloworld_1.0.0_all.ipk
6. 确认你已经运行了WebOS的模拟器。
运行"palm-install com.yourdomain.helloworld_1.0.0_all.ipk"
这个命令将安装ipk文件到模拟器上。
7. 点击模拟器的右下角的"向上箭头", 可以打开Applications的页面,你会看到"HelloWorld"。
点击运行即可看到HelloWorld。
8. 按ESC键缩小,然后向上拖动卡片即可关闭应用。