Sencha Touch,Apigee JS SDK和Phonegap在浏览器中工作,但不是IOS

时间:2013-12-02 20:11:23

标签: javascript api sencha-touch apigee

使用 - Sencha Touch 2.3,Apigee Usergrid JS SDK和PhoneGap 3.2。

我可以在浏览器中运行我的应用并完美访问Apigee。

的index.html:

`<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"
type="text/javascript"></script>
<script src="../lib/apigee.min.js"></script>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true </script>
<!-- The line below must be kept intact for Sencha Command to build your application -->
<script id="microloader" type="text/javascript" src=".sencha/app/microloader/development.js"></script>`

这是我直接来自Apigee Javascript SDK的代码(再次在index.html中):

`<script type="text/javascript">
     var client = new Usergrid.Client({
         orgName:'orgname',
         appName:'sandbox',
         logging: true, 
         buildCurl: true
        });
</script>`

所以要在我的视图中测试“client.URI”按预期给我“https://api.usergrid.com”。一切都很好。

按钮中的“client.URI”图片。 http://minus.com/i/BtmXiuVxljsV

当我跑步时

$ sencha app build -run native

这是我遇到问题的地方。一切都很好,除非我试图搭配Apigee。我没有在IOS模拟器中加载应用程序。在我的phonegap配置或“白名单”中,我通过“*”通配符打开了对所有内容的访问权限。我很确定这是有效的,因为谷歌地图API工作得很好。我试图将“client.URI”测试置于警报状态,因此当我单击一个按钮时,它会向我显示URI。这又适用于浏览器,但不适用于模拟器。应用程序加载正常,但当我点击按钮时没有任何反应。我希望这是有道理的。我想确保应用程序加载,并且我可以尽可能独立地测试“client.URI”测试。再次,如果我尝试在加载时渲染它,那么应用程序甚至不会在模拟器中加载。

当我点击应该有URI警报的按钮时,我会在system.log中找到它:

` <Error>: __hid_dispatch_pthread_root_queue_create_block_invoke: specific=0x505c260 pthread_self=0xb0115000`

我可以继续在浏览器中开发并访问我的Usergrid后端,但我真的想修复这个错误并确保我没有处理更大的架构问题。

谢谢大家。

2 个答案:

答案 0 :(得分:1)

可能有所作为的一件事是尝试从XCode而不是从命令行运行模拟器。打开Phonegap制作并从那里运行的.xcodeproj文件。如果模拟器仍未启动,请告知我们。

答案 1 :(得分:1)

最后!感谢您对Android的良好调试帮助。我更改了路线并尝试使用Android。

它告诉我找不到Apigee.min.js文件。似乎Phonegap正在编译时将它放在错误的地方或我开始时(我很确定我知道它是哪个)

我改变了我的本地文件:

 <script src="https://apigee.com/usergrid/sdk/usergrid.0.10.5.js"></script>

现在可以在IOS和Android上运行。非常奇怪,因为它以前在浏览器中运行得很好。

如果有人对我在哪里出错的问题有一些反馈,请将文件放入我的应用中告诉我。正如你在上面看到的那样:

<script src="../lib/apigee.min.js"></script>

此外,如果有人建议何时部署,如果我应该继续使用Apigee作为源或将文件添加到我的应用程序。

感谢大家的时间。