我有一個手機iOS應用程序,我移植到觸摸板上的webOS應用程序工作很好,除了我使用的一個iOS插件。它基本上將畫布數據保存到照片卷。從我對webos的理解中,我需要創建一個node.js服務並將數據寫入緩衝區,最後寫入文件系統,在論壇中有一個例子。然而,我無法弄清楚如何從我的phonegap應用程序調用所有這些。我相信我需要在我的index.html文件中具有以下內容。phonegap webos 3.0+
<script src="/opt/PalmSDK/Current/share/framework/enyo/1.0/framework/enyo.js" type="text/javascript"></script>
and something like
enyo.create({kind: "Main"}).renderInto(document.body);
我的猜測我也必須在js文件中包含所有「kind」數據。但我如何從我的應用程序的js文件中進行一小步與創建的服務進行通信。我查看了phonegap 1.0.js文件,發現他們正在以這種方式調用服務。
this.service = navigator.service.Request('palm://com.palm.applicationManager', {
method: 'launch',
parameters: {
id: 'com.palm.app.camera',
params: {
appId: 'com.palm.app.camera',
name: 'capture',
sublaunch: true,
filename: filename
}
},
onSuccess: successCallback,
onFailure: errorCallback
});
,但我也注意到了這一點看來,它是所有的魔力和我在做什麼是enyo,所以是的,我很困惑的時刻...
似乎應該很容易調用一個服務在webos中,這裏說的是一串圖像數據,並將其從我現有的phonegap應用程序寫入文件系統。而不必在enyo做所有事情。任何人都有這樣的webos插件的樣本,或知道在哪裏指向我?
感謝蒂姆
* *更新
我創建了一個節點服務現在如下定義,我認爲作品,我試圖撥打電話到服務,但它不去實現它。測試應用程序在我的觸摸板上運行,但是當我按下按鈕來保存圖像時,我沒有進入服務。我試圖按照phonegap0.0.1.js文件中相機的操作,這是我的服務的副本,我如何定義它以及如何調用它。任何想法我做錯了什麼。
services.json =
"id": "com.tim.pgmojo1.service",
"description": "FileIO Service",
"services": [
{
"name": "com.tim.pgmojo1.service",
"description": "FileIO Service",
"commands": [
{
"name": "writefile",
"assistant": "WriteFileAssistant",
"public": true
}]
}]
}
* *服務代碼
變種文庫= MojoLoader.require({名: 「基礎」,版本: 「1.0」}); var fs = IMPORTS.require(「fs」); var sys = require('sys');
var WriteFileAssistant = function() {}
WriteFileAssistant.prototype.run = function(future) {
var mypath = this.controller.args.thepath;
var mydata = this.controller.args.thedata;
console.log("in write file");
console.log("path=" + thepath);
console.log("image data=" + thedata);
var data = content.replace(/^data:image\/\w+;base64,/, "");
var buf = new Buffer(data, 'base64');
fs.writeFile('/media/internal/downloads/timimage.png', buf);
}
我打電話給服務* *
this.service = navigator.service.Request( '掌://com.tim.pgmojo.service',{ 方法:「寫文件」, 參數:{
thepath: '/media/internal/downloads/timimage.png',
thedata: canvasData
},
onSuccess: mySuccess,
onFailure: myFailure
});
目前,我有這在我的index.html文件,因爲它只是用於測試..