我正在尝试在 Phonegap/Cordova 应用程序中加载 Parse.com 的 JS SDK。
这是我的 www/index.html 的样子:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<!-- Sets initial viewport load and disables zooming -->
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, minimal-ui">
<!-- Makes your prototype chrome-less once bookmarked to your phone's home screen -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<!-- Include the compiled Ratchet CSS -->
<link href="css/ratchet.css" rel="stylesheet">
<script src="cordova.js" type="text/javascript"></script>
<script src="js/jquery-1.11.3.min.js"></script>
<script src="http://www.parsecdn.com/js/parse-1.4.2.min.js"></script>
<script type="text/javascript">
Parse.initialize("MY_APPLICATION_ID", "MY_JS_KEY");
</script>
<script src="js/ratchet.js"></script>
<script src="js/main.js"></script>
</head>
<body onload="init()">
</body>
</html>
我已经用Parse.com 的适当字符串替换了MY_APPLICATION_ID
和。MY_JS_KEY
该应用程序在浏览器(Mac 上的 Safari)中加载良好,我能够成功地对 Parse Cloud 进行 API 调用。
但是,如果我使用 Cordova 打包应用程序并在移动设备(iOS/Android)上运行它,则无法从 parsecdn.com 加载 Parse JS SDK,因此出现此错误消息(例如在 Android 中):
10-17 06:03:42.382: I/chromium(11792): [INFO:CONSOLE(20)] "Uncaught ReferenceError: Parse is not defined", source: file:///android_asset/www/index.html (20)
我尝试在 Android Emulator 和真正的 iPhone 设备(通过 USB 连接到 Xcode)中运行,两者都无法对 Parse.com 进行 API 调用,并且还验证了这些设备具有活动的 Internet 连接。
奇怪的是,在 Mac 上使用 Safari 进行本地浏览时,它甚至可以成功地将对象上传和存储到 Parse.com。
我做错了什么?