Я пытаюсь загрузить JS SDK Parse.com в приложении Phonegap/Cordova.Parse.com JS SDK не загружается в PhoneGap/Cordova
Вот что мой 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>
Я заменил MY_APPLICATION_ID
и MY_JS_KEY
с соответствующими строками из Parse.com.
Приложение загружается в браузере (Safari на Mac), и я могу успешно выполнить вызовы API в Parse Cloud.
Однако, если пакет приложения с помощью Кордовы и запустить его на мобильном устройстве (IOS/Android) он не может загрузить Синтаксическую JS SDK от parsecdn.com, поэтому это сообщение об ошибке (например, 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), оба из которых не могут вызвать вызовы API на Parse.com, а также подтвердили, что эти устройства имеют активное интернет-соединение ,
Странно, что все работает отлично, и оно даже загружает и сохраняет объекты успешно на Parse.com при просмотре локально с помощью Safari на Mac.
Что я мог сделать неправильно?
на самом деле [вы \ * MUST *] (http://docs.phonegap.com/en/2.3.0/cordova_events_events.md.html#deviceready) дождаться события 'deviceready', прежде чем вы сможете делать НИЧЕГО. Кроме того, что касается * лучшей практики * загружает столько ресурсов, сколько вы можете локально. Это тоже может помочь - [Новые ошибки от разработчиков, новых для Кордовы/Phonegap] (https://github.com/jessemonroy650/top-phonegap-mistakes/blob/master/new-to-Phonegap.md) – JesseMonroy650