phonegap navigator.notification.alert不工作

编程入门 行业动态 更新时间:2024-10-14 16:26:49
本文介绍了phonegap navigator.notification.alert不工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

标题是自解释的,我不知道为什么。

The title is self explanatory, I ca't figure out why tho.

源: www / index.html:

sources: www/index.html:

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="format-detection" content="telephone=no" /> <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" /> <link rel="stylesheet" type="text/css" href="css/index.css" /> <title>Hello World</title> </head> <body> <div class="app"> <h1>PhoneGap</h1> <div id="deviceready" class="blink"> <p class="event listening">Connecting to Device</p> <p class="event received">Device is Ready</p> </div> </div> <script type="text/javascript" src="phonegap.js"></script> <script type="text/javascript" src="js/index.js"></script> <script type="text/javascript"> app.initialize(); </script> </body> </html>

index.js:

var app = { // Application Constructor initialize: function() { this.bindEvents(); }, // Bind Event Listeners // // Bind any events that are required on startup. Common events are: // 'load', 'deviceready', 'offline', and 'online'. bindEvents: function() { document.addEventListener('deviceready', this.onDeviceReady, false); }, // deviceready Event Handler // // The scope of 'this' is the event. In order to call the 'receivedEvent' // function, we must explicity call 'app.receivedEvent(...);' onDeviceReady: function() { app.receivedEvent('deviceready'); }, // Update DOM on a Received Event receivedEvent: function(id) { var parentElement = document.getElementById(id); var listeningElement = parentElement.querySelector('.listening'); var receivedElement = parentElement.querySelector('.received'); listeningElement.setAttribute('style', 'display:none;'); receivedElement.setAttribute('style', 'display:block;'); console.log('Received Event: ' + id); navigator.notification.alert('PhoneGap Alert', null, 'Title', 'Button'); } };

在android / res / xml中的config.xml:

config.xml in android/res/xml:

<?xml version='1.0' encoding='utf-8'?> <widget id="io.cordova.helloCordova" version="2.0.0" xmlns="www.w3/ns/widgets"> <name>Hello Cordova</name> <description> A sample Apache Cordova application that responds to the deviceready event. </description> <author email="dev@cordova.apache" href="cordova.io"> Apache Cordova Team </author> <content src="index.html" /> <feature name="App"> <param name="android-package" value="org.apache.cordova.App" /> </feature> <feature name="Notification"> <param name="android-package" value="org.apache.cordova.Notification" /> </feature> <access origin="127.0.0.1*" /> <preference name="useBrowserHistory" value="true" /> <preference name="exit-on-suspend" value="false" /> <preference name="permissions" value="none" /> <preference name="orientation" value="default" /> <preference name="target-device" value="universal" /> <preference name="fullscreen" value="true" /> <preference name="webviewbounce" value="true" /> <preference name="prerendered-icon" value="true" /> <preference name="stay-in-webview" value="false" /> <preference name="ios-statusbarstyle" value="black-opaque" /> <preference name="detect-data-types" value="true" /> <preference name="show-splash-screen-spinner" value="true" /> <preference name="auto-hide-splash-screen" value="true" /> <preference name="disable-cursor" value="false" /> <preference name="android-minSdkVersion" value="8" /> <preference name="android-installLocation" value="auto" /> </widget>

和androidmanifest.xml:

and androidmanifest.xml:

<?xml version='1.0' encoding='utf-8'?> <manifest android:hardwareAccelerated="true" android:versionCode="1" android:versionName="1.0.0" android:windowSoftInputMode="adjustPan" package="com.acs.acs_mobile" xmlns:android="schemas.android/apk/res/android"> <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.VIBRATE" /> <application android:debuggable="true" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/app_name" android:name="main" android:theme="@android:style/Theme.Black.NoTitleBar"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="18" /> </manifest>

我想知道为什么它不工作,没有运气的过去几个小时。 我是realtivley新的phonegap所以如果我遗漏的东西让我知道...

I'm trying to figure out why it doesn't work with no luck for the past hours. I'm realtivley new to phonegap so please If I'm missing something let me know...

PS。 Phonegap -version:3.0.0-0.14.3,device sdk 8,AVD sdk 8(两个相同的结果)

PS. Phonegap -version : 3.0.0-0.14.3 , device sdk 8 , AVD sdk 8 (both same result)

更新代码里面的try catch我得到这个错误消息:

Update after wrapping the code inside a try catch I got this error message:

result of expression 'navigator.notification' undefined is not an object

如 Android的PhoneGap示例应用程序不工作和

原因是:可能在index.html中的phonegap * js或cordova * js的名称与assets / www目录中的文件名不匹配。但我只有phonegap.js和cordova.js在平台/ android /资产/ www和我包括完全相同的名称...仍然无法想出这个...

The cause is : Likely the name of phonegap*js or cordova*js in your index.html does not match the file name in the assets/www directory. but I only have phonegap.js and cordova.js in platforms/android/assets/www and I'm including with the exact same name... Still can't figure this out...

UPDATE

如果我做一个远程构建,我已经安装了版本3中提到的插件

If I do a remote build the app is working ok with local build it doesn;t altho I have installed the plugins as mentioned for version 3

推荐答案

我使用Cordova CLI 3.0.9构建您的项目,命令行工具,并遵循此处列出的文档( cordova.apache/ docs / en / edge / cordova_notification_notification.md.html#Notification )。我使用你的HTML和JS代码,对话框弹出就好了。

I built your project using Cordova CLI 3.0.9, using the command line tools and following the docs listed here (cordova.apache/docs/en/edge/cordova_notification_notification.md.html#Notification). I used your HTML and JS code and the dialog popped up just fine.

当查看其他文件时,我注意到 config的区别。 xml ;我的 config.xml 看起来像这样:

When looking through the other files, I noticed a difference in config.xml; my config.xml looks like this:

<?xml version='1.0' encoding='utf-8'?> <widget id="io.cordova.helloCordova" version="2.0.0" xmlns="www.w3/ns/widgets"> <name>Hello Cordova</name> <description> A sample Apache Cordova application that responds to the deviceready event. </description> <author email="dev@cordova.apache" href="cordova.io"> Apache Cordova Team </author> <content src="index.html" /> <feature name="App"> <param name="android-package" value="org.apache.cordova.App" /> </feature> <feature name="Vibration"> <param name="android-package" value="org.apache.cordova.vibration.Vibration" /> </feature> <feature name="Notification"> <param name="android-package" value="org.apache.cordova.dialogs.Notification" /> </feature> <access origin="*" /> <preference name="useBrowserHistory" value="true" /> <preference name="exit-on-suspend" value="false" /> <preference name="fullscreen" value="true" /> <preference name="webviewbounce" value="true" /> </widget>

请注意,我有 org.apache.cordova.dialogs.Notification 由于某种原因,您的 c>缺少对话框命名空间。这是有意的吗?如果你添加dialogs命名空间,它工作?如果使用最新的CLI版本重建?

Notice that mine has org.apache.cordova.dialogs.Notification - yours is missing the dialogs namespace for some reason. Is this on purpose? If you add "dialogs" namespace, does it work? What about if you rebuild using the latest CLI version?

更多推荐

phonegap navigator.notification.alert不工作

本文发布于:2023-11-27 19:52:29,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1639377.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:工作   navigator   phonegap   alert   notification

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!