0

我正在使用 Codorva 2.5。我使用这种方式来显示警报视图:

navigator.notification.confirm(
            message,
            callback,
            'Warning', //title
            options
            );

它在 iOS 上运行良好,但在 Android 上却不行。我不想使用 javascript 的 alert() 函数。我犯了什么错误吗?

这是配置文件:

<?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="www/page/main/main.html" />

    <log level="DEBUG"/>
    <preference name="useBrowserHistory" value="false" />
    <preference name="exit-on-suspend" value="false" />
    <preference name="splashscreen" value="splash" />
    <preference name="disallowOverscroll" value="true" />
<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"/>

</plugins>
</cordova>

我的安卓应用结构: 在此处输入图像描述

4

1 回答 1

1

有一个幻灯片错误。你没有写任何东西。这样写。

navigator.notification.confirm('Hello World',onConfirm,'Confirm','No,Yes');

function onConfirm(buttonIndex)
{
}

并将这句话添加到您的config.xml文件中。

<gap:plugin name="Notification" value="org.apache.cordova.Notification"/>

好的。现在我知道你的错误了。你显示的代码是用于plugin.xml文件的。这不是文件的代码。config.xml你声明的所有插件都对黑莓设备有用。所以它肯定不会在 android 中打开。

项目的根目录中必须有一个config.xmlandplugin.xml文件。所以将此代码另存为plugin.xml文件 - >创建一个文件作为config.xml文件并编写以下代码。

<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns = "http://www.w3.org/ns/widgets"
        xmlns:gap = "http://phonegap.com/ns/1.0"
        id = "xyz"
    versionCode="1"
        version = "1.0.0">

<gap:plugin name="Notification" value="org.apache.cordova.Notification"/>

</widget>

当然,这会成功的。

于 2013-05-24T07:17:05.510 回答