我在XCode中收到此错误:
2013-08-23 14:36:18.284 Tell The DJ[14955:c07] ERROR: Plugin 'Device' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
2013-08-23 14:36:18.284 Tell The DJ[14955:c07] -[CDVCommandQueue executePending] [Line 116] FAILED pluginJSON = [
"Device1096677259",
"Device",
"getDeviceInfo",
[
]
]
2013-08-23 14:36:18.285 Tell The DJ[14955:c07] CDVPlugin class CDVConnection (pluginName: NetworkStatus) does not exist.
2013-08-23 14:36:18.285 Tell The DJ[14955:c07] ERROR: Plugin 'NetworkStatus' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
2013-08-23 14:36:18.285 Tell The DJ[14955:c07] …Run Code Online (Sandbox Code Playgroud) 我正在Phonegap/Cordova中构建一个应用程序.App目前相当简单,但确实需要网络状态和地理位置插件才能工作.
到目前为止,我已经在Android上开发了应用程序(它只由几个基本的HTML页面和一些JS构成),它一直运行良好.
今天早上我决定确保一切顺利.绝对没有任何意外,事实并非如此.
所以...它似乎是插件的问题.XCode吐出以下内容:
CDVPlugin class CDVLocation (pluginName: Geolocation) does not exist.
2013-10-18 11:24:29.437 Eye Cab[589:907] ERROR: Plugin 'Geolocation' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
2013-10-18 11:24:29.438 Eye Cab[589:907] -[CDVCommandQueue executePending] [Line 117] FAILED pluginJSON = [
"Geolocation1841912763",
"Geolocation",
"getLocation",
[
false,
0
]
]
Run Code Online (Sandbox Code Playgroud)
我想这意味着它无法加载Geolocation插件.我为网络连接插件得到了类似的东西.
下面是我在Phonegap项目中截断的config.xml:
<feature name="http://api.phonegap.com/1.0/device" />
<feature name="Geolocation">
<param name="ios-package" value="CDVLocation" />
</feature>
<feature name="NetworkStatus">
<param name="ios-package" value="CDVConnection" />
</feature>
Run Code Online (Sandbox Code Playgroud)
我也尝试使用ID作为功能名称(例如org.apache.cordova.geolocation),但是遇到了同样的问题.实际上完全相同的错误.
一切都在Android中完美运行; 在模拟器中,在我的Mac上的Chrome和设备上.
我使用以下版本:
我正在将使用Phonegap构建的iOS应用程序移植到带有Phonegap 3.1的iOS7,我遇到了一个小问题.
iOS 7似乎已经在超链接中做了一些重大更改,target="_blank" attribute现在默认情况下在应用程序本身内打开,而不是在系统浏览器中(这似乎不会发生在Android或iOS的早期版本上).这打破了应用程序的一些功能,我需要纠正这个问题.
使用InAppBrowser插件似乎是要走的路,所以我已经安装了插件.我修改了我的config.xml以包含这个:
<feature name="InAppBrowser">
<param name="ios-package" value="CDVInAppBrowser" />
</feature>
Run Code Online (Sandbox Code Playgroud)
现在模板中的链接看起来像这样(请注意我在这里使用Handlebars作为模板系统):
<a href="#" onclick="window.externalbrowser = window.open('{{this.url}}, ', '_system', 'location=yes');" data-transition="slide">
<img alt="Favicon" style="border: 1px solid #ccc;" title="Favicon" class="ui-li-icon" src="{{this.favicon_url}}"></img>
<p style="font-size: 100%"><strong>Submitted {{this.whenSubmitted}}</strong><br />Last changed {{this.lastChanged}}</p>
</a>
Run Code Online (Sandbox Code Playgroud)
每当我点击链接时,它都无法打开,我在日志中出现以下错误:
Plugin 'InAppBrowser' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
2013-11-08 10:22:56.753 MyApp[197:60b] -[CDVCommandQueue executePending] [Line 117] FAILED pluginJSON = [
"InAppBrowser814285423",
"InAppBrowser",
"open",
[
"http:\/\/www.site.co.uk\/deals-offers-savings\/b?ie=UTF8&node=350613011&tag=page0e-21,",
"_system",
"location=yes"
]
]
Run Code Online (Sandbox Code Playgroud)
关于CDVInAppBrowser.m …
我在使用Phonegap 3.0.0和他们的Facebook插件时遇到了这个问题.我按照他们对信的解释(两次),我开始认为要么我做了一些非常错误的事情,要么我的版本没有正确排列.
我从hackbook和simple.html得到的错误是:
ERROR: Plugin 'org.apache.cordova.facebook.Connect' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
Run Code Online (Sandbox Code Playgroud)
因此,根据我在网上找到的所有内容(在这种情况下并不是很多看到他们在最近的版本中进行了一些市长更改),它似乎与我的plist或xml有关.
所以我希望有人已经让它运行,或者知道我做错了什么.
至于config.xml,我正在使用www文件夹中的那个(是正确的吗?),并添加:
<gap:plugin name="com.phonegap.plugins.facebookconnect">
<param name="APP_ID" value="[app_id]" />
<param name="APP_NAME" value="[app_name]" />
</gap:plugin>
Run Code Online (Sandbox Code Playgroud)
至于plist我最后添加:
<key>FacebookDisplayName</key>
<string>[app_name]</string>
<key>FacebookAppID</key>
<string>[app_id]</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>[app_name]</string>
<key>CFBundleURLSchemes</key>
<array>
<string>fb[app_id]</string>
</array>
</dict>
</array>
Run Code Online (Sandbox Code Playgroud)
其余的工作按照github页面教程中的说明完成.