我使用Google Cloud Endpoints为我的后端开发了一个原型。一旦在Sencha Touch上开发,我现在正在努力寻找创建客户端的方法 我对Sencha没有深入的了解,但正在这方面工作的团队表示不可能拥有本机代码。因此,我们的客户端必须使用JavaScript开发 例如,js客户端在appengine应用程序中完美运行,但我没有使用Sencha取得进展 有人知道我该如何处理它?有任何建议或更好的方法吗?
提前致谢!
答案 0 :(得分:2)
我假设您正在使用此处所述的回调方法https://developers.google.com/appengine/docs/java/endpoints/consume_js
<script src="https://apis.google.com/js/client.js?onload=init">
</script>
只需在Sencha Touch项目中添加用于后端的google api js。
这里建议使用外部js:What is the proper way to load an external javascript in Sencha Touch 2
如果你无法使init函数工作,或者事实证明你需要立即加载它,我想你可以把它放在index.html中但是它被警告不要因为加载时间原因这样做。
答案 1 :(得分:1)
这就是我所做的:
添加了所需的JS文件(正如用户1258245指出的那样,关键是将JS文件(在我的情况下为Client JS和Base JS)包含在项目中) 夹
将它们链接到我的index.html
添加了一个在OnLaunch()函数上初始化API调用的方法。所以, 当应用加载/启动时,它会被初始化。
为了确保收到回复,我创建了一个按钮,其中显示了一个显示响应的方法。在方法内部,我不得不使用参数调用'execute'方法来从后端获取响应。
答案 2 :(得分:0)
如果我理解正确,您的问题是“如何使用谷歌MAPS API与Sencha应用程序”。目前您的应用程序无法识别谷歌应用程序API。
我在应用程序文件中进行了以下更改。
<强>的index.html 强>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<强> app.js 强>
//将命名空间设置如下,并在touch / src / lib / plugin下添加google库
Ext.Loader.setPath({
'Ext' : 'touch/src',
'WU' : 'app',
'Ext.plugin': 'lib/plugin'
});
//在requires config
中添加所需的类要求:['Ext.MessageBox','Ext.plugin.google.Traffic','Ext.plugin.google.Tracker'],
启动:function(){
//Tracking Marker Image
var image = new google.maps.MarkerImage(
'resources/images/point.png',
new google.maps.Size(32, 31),
new google.maps.Point(0, 0),
new google.maps.Point(16, 31)
);
var shadow = new google.maps.MarkerImage(
'resources/images/shadow.png',
new google.maps.Size(64, 52),
new google.maps.Point(0, 0),
new google.maps.Point(-5, 42)
);
希望它有所帮助。