科尔多瓦 / phonegap 3.0 设备属性
Posted
技术标签:
【中文标题】科尔多瓦 / phonegap 3.0 设备属性【英文标题】:cordova / phonegap 3.0 device properties 【发布时间】:2013-08-28 14:24:09 【问题描述】:我是 phonegap / cordova 3.0 的新手,我似乎遇到了与 PhoneGap Help: device properties, cordova v phonegap, xcode debugging 类似的问题。 不幸的是,我现在无法在互联网上找到解决方案。
在为 ios 创建 Hello World 示例后,在模拟器中一切正常。但是在使用 den 文档中为设备属性给出的示例代码更改了 index.html 中的内容后,模拟器的屏幕仅显示“正在加载设备属性..”仅此而已。 由于某种原因,函数 onDeviceReady() 无法正常工作。 任何帮助都非常感谢
这里是设备属性的 index.html 代码
<!DOCTYPE html>
设备属性示例
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady()
var element = document.getElementById('deviceProperties');
element.innerHTML = 'Device Name: ' + device.name + '<br />' +
'Device Cordova: ' + device.cordova + '<br />' +
'Device Platform: ' + device.platform + '<br />' +
'Device UUID: ' + device.uuid + '<br />' +
'Device Model: ' + device.model + '<br />' +
'Device Version: ' + device.version + '<br />';
</script>
</head>
<body>
<p id="deviceProperties">Loading device properties...</p>
</body>
【问题讨论】:
你能发布一些你的代码吗? 在 index.html 中添加并将代码粘贴到设备就绪函数中的 js./index.js 中...它适用于 Cordova 3.6
【参考方案1】:正如我在您链接到的另一个问题中提到的,我认为这里的问题可能与缺少插件有关。您的 onDeviceReady 功能应该可以工作(尝试在其中发出警报,只是为了测试它)...但我认为您在尝试访问诸如 device.model 和 device.version。
为了访问设备对象,您需要安装插件。如果没有插件,复制示例代码将无法工作。如果您还没有这样做,请使用以下方法获取插件:
$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git
希望这对你有用。
【讨论】:
很高兴它成功了。如果这确实解决了您的问题,请将其标记为正确答案 - 这将有助于将来的搜索,任何遇到同样事情的人(也给我几点)。 :)【参考方案2】:对于像我这样的新手来说,必须在项目目录中使用插件链接,并且必须将插件的 .h 和 .m 文件移动到项目插件目录中。不要忘记 DeviceDetails.js 必须与 index.js 进入同一目录
【讨论】:
【参考方案3】:除了避免回答和避免Helmut遇到的路径问题:
-
打开终端/外壳
转到您的 Phonegap 项目目录 ($ cd path/to/project)
在终端/Shell 中输入以下内容:
cordova 插件添加 org.apache.cordova.device
很遗憾,这种方法无法区分同一平台的不同设备。例如,如果您必须确定应用程序是否在 iPhone 5 上查看,您可能应该检索屏幕尺寸。
【讨论】:
以上是关于科尔多瓦 / phonegap 3.0 设备属性的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap Cordova Ajax 请求 404(未找到)错误
如何将自定义平台添加到 Cordova 或 Phonegap