[英]How to use Google Endpoints with Sencha Touch?
我已经使用Google Cloud Endpoints开发了一个原型到我的后端。 一旦在Sencha Touch上进行开发,我现在正努力寻找一种创建客户端的方法。
我对Sencha并不了解,但是在这方面工作的团队表示不可能拥有本机代码。 因此,我们的客户端必须使用JavaScript开发。
举例来说,js客户端可以在appengine应用程序中完美运行,但是Sencha没有进展。
有人知道我该如何处理吗? 有什么建议或更好的方法吗?
提前致谢!
我假设您正在使用此处描述的回调方法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的方法: 在Sencha Touch 2中加载外部javascript的正确方法是什么?
如果您无法使init函数正常工作,或者事实证明您需要立即加载它,我想您可以将其放在index.html中,但是出于加载时间的原因,请注意不要这样做。
这是我所做的:
向项目文件夹添加了必需的JS文件(如user1258245所指出的,关键是将JS文件(在我的情况下为Client JS和Base JS)包括在内)
将它们链接到我的index.html
添加了一种方法来初始化OnLaunch()函数的API调用。 因此,它会在应用加载/启动时初始化。
为了确保收到响应,我创建了一个带有显示响应的方法的按钮。 在方法内部,我必须调用带有参数的“ execute”方法来从后端获取响应。
如果我理解正确,那么您的问题是“如何在Sencha Application中使用google MAPS API”。目前,您的应用程序无法识别google apps 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 libs
Ext.Loader.setPath({
'Ext' : 'touch/src',
'WU' : 'app',
'Ext.plugin': 'lib/plugin'
});
//在require配置中添加所需的类
要求:['Ext.MessageBox','Ext.plugin.google.Traffic','Ext.plugin.google.Tracker'],
launch: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)
);
希望能帮助到你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.