我遇到Cordova / Phonetgap Device API问题,找不到objetc设备。我回调device.model或任何设备并返回:
ReferenceError:找不到变量:device at file:///android_asset/www/index.html:16
我正在执行以下步骤:http://cordova.apache.org/docs/en/3.3.0/cordova_device_device.md.html#Device firts创建了cordova android项目,之后我通过以下方式安装插件设备:“cordova plugin add org.apache.cordova.device”我正在使用此index.html进行测试:
<!DOCTYPE html>
<html>
<head>
<title>Device Properties Example</title>
<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 string = device.platform;
var element = document.getElementById('deviceProperties');
element.innerHTML = string;
}
</script>
</head>
<body>
<p id="deviceProperties">Loading device properties...</p>
</body>
</html>
我在app / res / xml / config.xml这行:
<feature name="Device">
<param name="android-package" value="org.apache.cordova.device.Device" />
</feature>
这里有截图了解更多详情: https://dl.dropboxusercontent.com/u/6404856/Helpme.JPG
答案 0 :(得分:1)
当我看到你正在使用eclipse时,你是否在安装插件后运行cordova prepare android
或cordova build android
? (请注意,它将使用项目根目录中www文件夹的内容覆盖您的assets / www文件夹)
答案 1 :(得分:0)
您的代码对我来说很好。尝试运行cordova plugin ls
并确保设备插件显示。还尝试卸载然后重新安装它。如果这不起作用,那么尝试删除your_project/plugins/android.json
文件,重新安装插件,然后构建android平台。有时android.json
无法正确更新,这会让一切都混乱。