SMP3.0学习笔记之十 使用Kapsel EncryptedStorage插件以及GET/POST对OData服务进行操作
2014-02-22 07:56
706 查看
作者:穿行印象
http://blog.sina.com.cn/s/blog_7a9486880101qgyv.html
Kapsel EncryptedStorage Plugin的作用:以加密的形式将数据存储到移动设备端,使用API可以存储、读取其中的数据。例如,将数据存储在EncryptedStorage中:
storage.setItem(key,
value,
storageSuccessCallback,
storageErrorCallback);
将数据从EncryptedStrage读取数据:
storage.getItem(airlineDataKey,
function(value) {airlineData = JSON.parse(value);},
storageErrorCallback);
结合SAP UI5的SDK,使用GET或者POST方法读取、修改OData服务的数据。例如,如下的UI:
当点击一个航空公司时,触发getFlights方法可以获取该行空公司的航班信息:
getFlights : function(carrid)
{
//
Get a reference to the view and the list template
var view
= sap.ui.getCore().byId("flights");
var oTemplate
= view.getTemplate();
//
Get a reference to the list and set the model
var oList
= sap.ui.getCore().byId("FlList");
oList.setModel(oModel);
//
Bind the carrierFlights items and template
oList.bindItems("/CarrierCollection('" +
carrid + "')/carrierFlights",
oTemplate, null, null);
app.to("flights");
}
flights的view定义如下:
sap.ui.jsview("app.flights",
{
oTemplate
: new sap.m.CustomListItem({
type
: sap.m.ListType.Navigation,
press
: function(evt)
{
var cont
= sap.ui.getCore().byId("flights").getController();
cont.getDetails(evt, this.getModel());
},
content
: [ new sap.m.FlexBox({
items
: [ new sap.m.HBox({
justifyContent
: "Start",
width
: "50%",
items
: [ new sap.m.Text({
text
: "{flightDetails/cityFrom}"
})
]
}), new sap.m.HBox({
justifyContent
: "End",
width
: "50%",
items
: [ new sap.m.Text({
text
: "{flightDetails/cityTo}"
})
]
})
]
}), new sap.m.FlexBox({
items
: [ new sap.m.Text({
text
: {
path
: "fldate",
type
: oDateTime
}
})
]
}) ]
}),
getControllerName
: function()
{
return "app.flights";
},
getTemplate
: function()
{
return this.oTemplate;
},
createContent
: function(oController)
{
var list
= new sap.m.List("FlList",
{
items
: [
]
});
return new sap.m.Page({
showNavButton
: true,
navButtonText
: "Back",
navButtonPress
: function()
{
app.back();
},
title
: "Flights",
content
: [ list ]
});
}
});
航班信息的UI长这个样子:
还可以使用POST方法修改数据,这里略去不表。
http://blog.sina.com.cn/s/blog_7a9486880101qgyv.html
Kapsel EncryptedStorage Plugin的作用:以加密的形式将数据存储到移动设备端,使用API可以存储、读取其中的数据。例如,将数据存储在EncryptedStorage中:
storage.setItem(key,
value,
storageSuccessCallback,
storageErrorCallback);
将数据从EncryptedStrage读取数据:
storage.getItem(airlineDataKey,
function(value) {airlineData = JSON.parse(value);},
storageErrorCallback);
结合SAP UI5的SDK,使用GET或者POST方法读取、修改OData服务的数据。例如,如下的UI:
当点击一个航空公司时,触发getFlights方法可以获取该行空公司的航班信息:
getFlights : function(carrid)
{
//
Get a reference to the view and the list template
var view
= sap.ui.getCore().byId("flights");
var oTemplate
= view.getTemplate();
//
Get a reference to the list and set the model
var oList
= sap.ui.getCore().byId("FlList");
oList.setModel(oModel);
//
Bind the carrierFlights items and template
oList.bindItems("/CarrierCollection('" +
carrid + "')/carrierFlights",
oTemplate, null, null);
app.to("flights");
}
flights的view定义如下:
sap.ui.jsview("app.flights",
{
oTemplate
: new sap.m.CustomListItem({
type
: sap.m.ListType.Navigation,
press
: function(evt)
{
var cont
= sap.ui.getCore().byId("flights").getController();
cont.getDetails(evt, this.getModel());
},
content
: [ new sap.m.FlexBox({
items
: [ new sap.m.HBox({
justifyContent
: "Start",
width
: "50%",
items
: [ new sap.m.Text({
text
: "{flightDetails/cityFrom}"
})
]
}), new sap.m.HBox({
justifyContent
: "End",
width
: "50%",
items
: [ new sap.m.Text({
text
: "{flightDetails/cityTo}"
})
]
})
]
}), new sap.m.FlexBox({
items
: [ new sap.m.Text({
text
: {
path
: "fldate",
type
: oDateTime
}
})
]
}) ]
}),
getControllerName
: function()
{
return "app.flights";
},
getTemplate
: function()
{
return this.oTemplate;
},
createContent
: function(oController)
{
var list
= new sap.m.List("FlList",
{
items
: [
]
});
return new sap.m.Page({
showNavButton
: true,
navButtonText
: "Back",
navButtonPress
: function()
{
app.back();
},
title
: "Flights",
content
: [ list ]
});
}
});
航班信息的UI长这个样子:
还可以使用POST方法修改数据,这里略去不表。
相关文章推荐
- SMP3.0学习笔记之三 使用OData SDK或者MAF Login组件进行OnBoarding
- SMP3.0学习笔记之八 使用Kapsel Update插件实现移动应用的自动更新
- SMP3.0学习笔记之十二 使用AppBuilder读取OData服务的数据
- SMP3.0学习笔记之十九 使用REST API在任何操作系统上消费SMP的OData服务
- 我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第三篇)
- Android数据库LitePal框架学习笔记(1)---数据库的adb操作以及LitePal使用入门
- MySQL学习笔记(1)---基本使用以及基本操作
- SMP3.0学习笔记之四 使用OData Native SDK获取数据
- JPA学习笔记---JPA数据的操作:增加,删除,修改,获取,使用JPQL进行查询
- ArcGIS API for JavaScript 4.2学习笔记[20] 使用缓冲区结合Query对象进行地震点查询【重温异步操作思想】
- SMP3.0学习笔记之五 使用OData Native SDK修改数据
- 学习笔记:使用Web Service Software Factory开发简易留言本服务以及Mobile调用实现-1.创建Service
- 我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第二篇)
- java学习笔记:使用zip api进行文件解压缩以及不解压直接读取指定文件内容
- SMP3.0学习笔记之六 使用Kapsel搭建混合应用准备篇
- 我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第一篇)
- 【学习笔记】使用Python对文件进行简单操作
- SMP3.0学习笔记之七 使用Kapsel Logon 插件
- 使用jetty-maven-plugin插件进行测试---学习笔记
- SMP学习笔记之使用REST API在任何操作系统上消费SMP的OData服务