【发布时间】:2013-04-12 17:13:26
【问题描述】:
我目前正在为 phonegap android 项目使用截图插件(插件版本 2.0.0),该插件返回一些错误,例如
未捕获的类型错误:无法调用文件中未定义的方法“saveScreenshot”:///android_asset/www/index.html
我的代码:
<script src="cordova-2.5.0.js"></script>
<script src="js/jquery-1.8.1.min.js"></script>
<script src="js/Screenshot.js"></script>
<script>
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady() {
$('#screen').click(function(){
window.plugins.screenshot.saveScreenshot();
});
}
</script>
<button id="screen">ScreenSave</button>
我做错了什么有人指导我。
谢谢
编辑
配置.xml
<?xml version="1.0" encoding="utf-8"?>
<cordova>
<!--
access elements control the Android whitelist.
Domains are assumed blocked unless set otherwise
-->
<access origin="http://127.0.0.1*"/>
<!-- allow local pages -->
<!-- <access origin="https://example.com" /> allow any secure requests to example.com -->
<!-- <access origin="https://example.com" subdomains="true" /> such as above, but including subdomains, such as www -->
<access origin=".*"/>
<!-- <content src="http://mysite.com/myapp.html" /> for external pages -->
<content src="index.html" />
<log level="DEBUG"/>
<preference name="useBrowserHistory" value="true" />
<preference name="exit-on-suspend" value="false" />
<plugins>
<plugin name="App" value="org.apache.cordova.App"/>
<plugin name="Geolocation" value="org.apache.cordova.GeoBroker"/>
<plugin name="Device" value="org.apache.cordova.Device"/>
<plugin name="Accelerometer" value="org.apache.cordova.AccelListener"/>
<plugin name="Compass" value="org.apache.cordova.CompassListener"/>
<plugin name="Media" value="org.apache.cordova.AudioHandler"/>
<plugin name="Camera" value="org.apache.cordova.CameraLauncher"/>
<plugin name="Contacts" value="org.apache.cordova.ContactManager"/>
<plugin name="File" value="org.apache.cordova.FileUtils"/>
<plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager"/>
<plugin name="Notification" value="org.apache.cordova.Notification"/>
<plugin name="Storage" value="org.apache.cordova.Storage"/>
<plugin name="FileTransfer" value="org.apache.cordova.FileTransfer"/>
<plugin name="Capture" value="org.apache.cordova.Capture"/>
<plugin name="Battery" value="org.apache.cordova.BatteryListener"/>
<plugin name="SplashScreen" value="org.apache.cordova.SplashScreen"/>
<plugin name="Echo" value="org.apache.cordova.Echo" />
<plugin name="Globalization" value="org.apache.cordova.Globalization"/>
<plugin name="InAppBrowser" value="org.apache.cordova.InAppBrowser"/>
<plugin name="Screenshot" value="org.apache.cordova.Screenshot"/>
</plugins>
</cordova>
EDIT-2
AndroidManifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
【问题讨论】:
-
你能把你的config.xml贴在这里吗?
-
@Whizkid747 现在我更新了我的 config.xml
-
看起来不错……你检查过 LogCat 吗?
-
@DanteSparda 是的,我检查过我得到了 Uncaught TypeError: Cannot call method 'saveScreenshot' of undefined at file:///android_asset/www/index.html
标签: android cordova phonegap-plugins phonegap-build