即使添加了控制台插件,console.log也无法在iOS Phonegap App中运行

我在Cordova CLI中创建了一个Phonegap iOS应用程序。 我已经添加了控制台插件,并且yes deviceready被成功调用但是console.log不能正常工作,并且不会在XCode日志中打印任何内容。

插件安装: –

cordova-v
3.3.1-0.3.1

sudo cordova plugins添加org.apache.cordova.console
通过插件注册表获取插件“org.apache.cordova.console”
为ios开始安装“org.apache.cordova.console”
准备ios项目
oros.apache.cordova.console安装在ios上。

sudo cordova plugins ls
[‘org.apache.cordova.console’,
‘org.apache.cordova.device’,
‘org.apache.cordova.dialogs’,
‘org.apache.cordova.geolocation’,
‘org.apache.cordova.globalization’,
‘org.apache.cordova.inappbrowser’,
‘org.apache.cordova.media’,
“org.apache.cordova.network信息”,
‘org.apache.cordova.splashscreen’,
‘org.apache.cordova.vibration’]

Java脚本: –

var app = { initialize: function() { this.bindEvents(); }, bindEvents: function() { document.addEventListener('deviceready', this.onDeviceReady, false); }, onDeviceReady: function() { app.receivedEvent('deviceready'); }, receivedEvent: function(id) { console.log('Device Ready Received'); //It is not working alert("Device ready called"); //It is Working } }; 

我通过这些步骤解决了这个问题

步骤1 :

我只是从另一个cord.log正在运行的cordova项目中复制一个目录

 sudo cp -r DIFF_CORDOVA_PROJECT_PATH/platforms/ios/www/plugins/org.apache.cordova.console CURRENT_CORDOVA_PROJECT_PATH/platforms/ios/www/plugins/ 

第2步 :

在module.exports JSON数组下的CURRENT_CORDOVA_PROJECT_PATH / platforms / ios / www / cordova_plugins.js文件中添加代码

 { "file": "plugins/org.apache.cordova.console/www/console-via-logger.js", "id": "org.apache.cordova.console.console", "clobbers": [ "console" ] }, { "file": "plugins/org.apache.cordova.console/www/logger.js", "id": "org.apache.cordova.console.logger", "clobbers": [ "cordova.logger" ] } 

第3步:

在module.exports.metadata JSON数组中的同一个cordova_plugins.js文件中添加元数据: –

“org.apache.cordova.console”:“0.2.7”

在我的情况下,原因可能是因为该插件是第一次从Windows机器安装而且以前仅适用于Android平台。 当我尝试从我的Macintosh重新安装它时遇到了同样的Shashi问题。

这是由于编译源列表中缺少源文件CDVLogger.m引起的。 所以我建议检查这个文件是否已经添加:

单击Xco​​de资源管理器>构建阶段>编译源部分中的根项目文件

如果CDVLogger.m文件不存在,请添加它并尝试再次运行该项目。 这为我解决了这个问题。

编辑:此外,请确保您的index.html页面包含此HTML:

  

我在stackoverflow中尝试了很多解决方案,但没有任何对我有用。 将cordova.js放在我个人的JS文件夹console.log之后工作正常。

  

在代码部分中添加

我也有这个。 我没有控制台输出,我的应用程序的default.html文件永远不会真正加载。 在我的情况下的问题是我的控制台插件实际上是一个十进制/旧(0.2.12而不是0.2.13)。 很快我更新了所有东西再次开始工作……唉!

相关: https : //stackoverflow.com/a/32035260/826308

确保执行以下操作:

 function onDeviceReady() { if (window.cordova.logger) { window.cordova.logger.__onDeviceReady(); } } document.addEventListener('deviceready', onDeviceReady, false);` 

在我的情况下,以下div失踪了