Phonegap:解析不在 ios 或 android 上初始化
Posted
技术标签:
【中文标题】Phonegap:解析不在 ios 或 android 上初始化【英文标题】:Phonegap: Parse not initilizing on ios or android 【发布时间】:2015-06-30 18:14:13 【问题描述】:我正在使用 Phonegap 3.0,并尝试将其与 parse 集成,以便我可以在我的应用程序上登录用户。我有用 javascript 编写的代码并对其进行了测试,它在浏览器上运行时可以工作。我只能在浏览器上初始化解析和创建对象。当我在 ios 或 android 设备上运行应用程序时,解析代码似乎不起作用/没有被执行。
我尝试过的事情: - 安装 Parse phonegap 插件 - 将 Parse 建议的所有相关 SDK 添加到源代码中 - 从 XCode 运行项目,而不是使用“Cordova emulate ios”
过去几天我一直在四处寻找答案,但似乎找不到任何答案。我假设有一种方法可以做到这一点,我再次希望能够通过解析注册用户。当项目在浏览器上运行时,我可以做到这一点,但在 ios 或 android 模拟器和真实设备上运行时它会停止工作。
function tryMe()
Parse.initialize("My APP ID", "My Client ID"); //I have my actuals id's here
alert("Button Clicked");
var TestObject = Parse.Object.extend("TestObject");
var testObject = new TestObject();
testObject.save(foo: "bar").then(function(object)
alert("yay! it worked");
);
alert("Done")
此代码在单击按钮时运行,它只是创建一个简单的测试对象。执行了第一个警报,但之后没有执行任何操作,我从来没有看到“是的,它工作了”或“完成”警报。
任何帮助将不胜感激
编辑:
这是我的 html 文件的内容,我已将解析初始化封装在 device.ready 函数中,我可以确认它正在被调用,并且我已将 cordova.js 包含在文件中。还是不行
<!DOCTYPE html>
<!--<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">-->
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
<link rel="stylesheet" type="text/css" href="css/index.css">
<script src="//www.parsecdn.com/js/parse-1.4.2.min.js"></script>
<!-- Include meta tag to ensure proper rendering and touch zooming -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Include jQuery Mobile stylesheets -->
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<!-- Include the jQuery library -->
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<!-- Include the jQuery Mobile library -->
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
<title>Hello World</title>
<div id="login_form">
<input type="text" id="first_name" placeholder="First Name">
<input type="text" id="last_name" placeholder="Last Name">
<input type="text" id="email" placeholder="Email">
<input type="text" id="password" placeholder="Password">
<button id='submit' onclick="submit()">Submit</button>
<button id='register' onclick="segue('register')">Register</button>
<button id='login' onclick="segue('login')">Login</button>
<button id='forgot' onclick="segue('forgot')">Forgot</button>
<button id='facebook' onClick="facebook()">Facebook</button>
<button id='twitter' onclick="tryMe()">Twitter</button>
</div>
<script>
document.addEventListener("deviceready", function()
Parse.initialize("fVPIrAy0Q5ymJitJPRNALwaVUcNYe9vNL0gGj8hx", "IJ3lsGc6USWSaOlxsc8wJsjNxRA8XuvJ3mI04YuN");
, false);
</script>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="js/index.js"></script>
【问题讨论】:
【参考方案1】:我设法找出了问题所在。似乎是因为我从 Parse 的网站上提取了 Parse sdk
<script src="//www.parsecdn.com/js/parse-1.4.2.min.js"></script>
它不适用于任何模拟器,但它可以在浏览器上运行。我手动为 sdk 创建了一个文件,一切正常。
【讨论】:
以上是关于Phonegap:解析不在 ios 或 android 上初始化的主要内容,如果未能解决你的问题,请参考以下文章
ajax中的phonegap XML解析器在iOS上出现错误
如何将cordova插件添加到不在phonegap注册表中的meteor?
iPhone JSON框架不解析不在对象或数组内的JSON字符串对象