精华内容
下载资源
问答
  • PhoneGap API帮助文档翻译Notification提醒是本文要介绍的内容,主要是来了解PhoneGap API文档的内容,具体PhoneGap API文档内容的详解来看本文,设备的视觉、听觉和触觉通知。 方法: notification.alert ...

    PhoneGap API帮助文档翻译Notification提醒是本文要介绍的内容,主要是来了解PhoneGap API文档的内容,具体PhoneGap API文档内容的详解来看本文,设备的视觉、听觉和触觉通知。

    方法:

    1. notification.alert  
    2. notification.confirm  
    3. notification.beep  
    4. notification.vibrate  
    5. notification.alert  

    显示一个定制的警告或对话框。

    1. navigator.notification.alert(message, alertCallback, [title], [buttonName]);    
    2. navigator.notification.alert(message, alertCallback, [title], [buttonName]); 

    message:对话框信息。(字符串类型)

    alertCallback:当警告对话框被忽略时调用的回调函数。(函数类型)

    title:对话框标题。(字符串类型)(可选项,默认值为“Alert”)

    buttonName:按钮名称(字符串类型)(可选项,默认值为“OK”)

    说明:

    大多数PhoneGap使用本地对话框实现该功能。然而,一些平台只是简单的使用浏览器的alert函数,而这种方法通常是不能定制的。

    支持的平台:

    Android

    BlackBerry (OS 4.6)

    BlackBerry WebWorks (OS 5.0或更高版本)

    iPhone

    简单的范例:

    1. // Android / BlackBerry WebWorks (OS 5.0 and higher) // iPhone    
    2. function alertDismissed() {    
    3.     // 进行处理    
    4. }    
    5.     
    6. navigator.notification.alert(    
    7.     'You are the winner!',  // 显示信息    
    8.     alertDismissed,         // 警告被忽视的回调函数    
    9.     'Game Over',            // 标题    
    10.     'Done'                  // 按钮名称    
    11. );    
    12.     
    13. // BlackBerry (OS 4.6) // webOS    
    14. navigator.notification.alert('You are the winner!');    
    15. // Android / BlackBerry WebWorks (OS 5.0 and higher) // iPhone  
    16. function alertDismissed() {  
    17.  // 进行处理  
    18. }  
    19.  
    20. navigator.notification.alert(  
    21.  'You are the winner!',  // 显示信息  
    22.     alertDismissed,         // 警告被忽视的回调函数  
    23.     'Game Over',            // 标题  
    24.     'Done'                  // 按钮名称  
    25. );  
    26.  
    27. // BlackBerry (OS 4.6) // webOS  
    28. navigator.notification.alert('You are the winner!');  
    29. 完整的范例:  
    30. view plaincopy to clipboardprint?>    
    31. <html>    
    32. <head>        
    33. <title>Notification Exampletitle>    
    34.     
    35. <script type="text/javascript" charset="utf-8" src="phonegap.js">script>    
    36. <script type="text/javascript" charset="utf-8">    
    37.     
    38.     // 等待加载PhoneGap    
    39.     document.addEventListener("deviceready", onDeviceReady, false);     
    40.         
    41.     // PhoneGap加载完毕    
    42.     function onDeviceReady() {    
    43.         // 空    
    44.     }    
    45.         
    46.     // 警告对话框被忽视    
    47.     function alertDismissed() {    
    48.         // 进行处理    
    49.     }    
    50.         
    51.     // 显示一个定制的警告框    
    52.     function showAlert() {    
    53.         navigator.notification.alert(    
    54.             'You are the winner!',  // 显示信息    
    55.             alertDismissed,         // 警告被忽视的回调函数    
    56.             'Game Over',            // 标题    
    57.             'Done'                  // 按钮名称    
    58.         );    
    59.     }    
    60.     
    61. script>    
    62. head>    
    63. <body>    
    64.     <p><a href="#" onclick="showConfirm(); return false;">Show Confirma>p>    
    65. body>    
    66. html>    
    67. > 
    68. <html> 
    69. <head>   
    70. <title>Notification Exampletitle> 
    71.  
    72. <script type="text/javascript" charset="utf-8" src="phonegap.js">script> 
    73. <script type="text/javascript" charset="utf-8"> 
    74.  
    75.  // 等待加载PhoneGap  
    76.  document.addEventListener("deviceready", onDeviceReady, false);   
    77.    
    78.  // PhoneGap加载完毕  
    79.  function onDeviceReady() {  
    80.   // 空  
    81.  }  
    82.    
    83.  // 警告对话框被忽视  
    84.  function alertDismissed() {  
    85.   // 进行处理  
    86.  }  
    87.    
    88.  // 显示一个定制的警告框  
    89.  function showAlert() {  
    90.   navigator.notification.alert(  
    91.    'You are the winner!',  // 显示信息  
    92.    alertDismissed,         // 警告被忽视的回调函数  
    93.    'Game Over',            // 标题  
    94.    'Done'                  // 按钮名称  
    95.   );  
    96.  }  
    97.  
    98. script> 
    99. head> 
    100. <body> 
    101.  <p><a href="#" onclick="showConfirm(); return false;">Show Confirma>p> 
    102. body> 
    103. html> 
    104. notification.confirm   

    显示一个可定制的确认对话框。

    1. navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels]);    
    2. navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels]); 

    message:对话框信息。(字符串类型)

    confirmCallback:按下按钮后触发的回调函数,返回按下按钮的索引(1、2或3)。(函数类型)

    title:对话框标题。(字符串类型)(可选项,默认值为“Confirm”)

    buttonLabels:逗号分隔的按钮标签字符串。(字符串类型)(可选项,默认值为“OK、Cancel”)

    转载于:https://www.cnblogs.com/mingforyou/archive/2013/03/04/2942948.html

    展开全文
  • PhoneGap API帮助文档翻译Notification(提醒) “ 设备的视觉、听觉和触觉通知。 方法: notification.alert notification.confirm notification.beep notification.vibrate ...

    PhoneGap API帮助文档翻译—Notification(提醒)

    设备的视觉、听觉和触觉通知。
    方法:
    • notification.alert
    • notification.confirm
    • notification.beep
    • notification.vibrate
    notification.alert
    显示一个定制的警告或对话框。
    navigator.notification.alert(message, alertCallback, [title], [buttonName]);
    • message:对话框信息。(字符串类型)
    • alertCallback:当警告对话框被忽略时调用的回调函数。(函数类型)
    • title:对话框标题。(字符串类型)(可选项,默认值为“Alert”)
    • buttonName:按钮名称(字符串类型)(可选项,默认值为“OK”)
    说明:
    大多数PhoneGap使用本地对话框实现该功能。然而,一些平台只是简单的使用浏览器的alert函数,而这种方法通常是不能定制的。
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // Android / BlackBerry WebWorks (OS 5.0 and higher) // iPhone function alertDismissed() { // 进行处理 } navigator.notification.alert( 'You are the winner!', // 显示信息 alertDismissed, // 警告被忽视的回调函数 'Game Over', // 标题 'Done' // 按钮名称 ); // BlackBerry (OS 4.6) // webOS navigator.notification.alert('You are the winner!');
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { // 空 } // 警告对话框被忽视 function alertDismissed() { // 进行处理 } // 显示一个定制的警告框 function showAlert() { navigator.notification.alert( 'You are the winner!', // 显示信息 alertDismissed, // 警告被忽视的回调函数 'Game Over', // 标题 'Done' // 按钮名称 ); } </script> </head> <body> <p><a href="#" οnclick="showConfirm(); return false;">Show Confirm</a></p> </body> </html>
    notification.confirm
    显示一个可定制的确认对话框。
    navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels]);
    • message:对话框信息。(字符串类型)
    • confirmCallback:按下按钮后触发的回调函数,返回按下按钮的索引(1、2或3)。(函数类型)
    • title:对话框标题。(字符串类型)(可选项,默认值为“Confirm”)
    • buttonLabels:逗号分隔的按钮标签字符串。(字符串类型)(可选项,默认值为“OK、Cancel”)
    说明:
    notification.confirm函数显示一个定制性比浏览器的confirm函数更好的本地对话框。
    支持的平台:
    • Android
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // 处理确认对话框返回的结果 function onConfirm(button) { alert('You selected button ' + button); } // 显示一个定制的确认对话框 function showConfirm() { navigator.notification.confirm( 'You are the winner!', // 显示信息 onConfirm, // 按下按钮后触发的回调函数,返回按下按钮的索引 'Game Over', // 标题 'Restart,Exit' // 按钮标签 ); }
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { // 空 } // 处理确认对话框返回的结果 function onConfirm(button) { alert('You selected button ' + button); } // 显示一个定制的确认对话框 function showConfirm() { navigator.notification.confirm( 'You are the winner!', // 显示信息 onConfirm, // 按下按钮后触发的回调函数,返回按下按钮的索引 'Game Over', // 标题 'Restart,Exit' // 按钮标签 ); } </script> </head> <body> <p><a href="#" οnclick="showConfirm(); return false;">Show Confirm</a></p> </body> </html>
    notification.beep
    设备将发出蜂鸣声。
    navigator.notification.beep(times);
    • times:蜂鸣声的重复次数。(数字类型)
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // 蜂鸣2次! navigator.notification.beep(2);
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { // 空 } // 显示一个定制的警告框 function showAlert() { navigator.notification.alert( 'You are the winner!', // 显示信息 'Game Over', // 标题 'Done' // 按钮名称 ); } // 蜂鸣三次 function playBeep() { navigator.notification.beep(3); } // 震动两秒 function vibrate() { navigator.notification.vibrate(2000); } </script> </head> <body> <p><a href="#" οnclick="showAlert(); return false;">Show Alert</a></p> <p><a href="#" οnclick="playBeep(); return false;">Play Beep</a></p> <p><a href="#" οnclick="vibrate(); return false;">Vibrate</a></p> </body> </html>
    Android的特异情况:
    • Androids会播放在“设置/音效及显示”面板中指定的默认“通知铃声”。
    iPhone的特异情况:
    • 忽略蜂鸣次数参数。
    • iPhone没有本地的蜂鸣API。
      • PhoneGap通过多媒体API播放音频文件来实现蜂鸣。
      • 用户必须提供一个包含所需的蜂鸣声的文件。
      • 此文件播放时长必须短于30秒,位于www/root,并且必须命名为beep.wav。
    notification.vibrate
    使设备震动指定的时长。
    navigator.notification.vibrate(milliseconds);
    • time:以毫秒为单位的设备震动时长,1000毫秒为1秒。(数字类型)
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // 震动2.5秒 navigator.notification.vibrate(2500);
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { //空 } // 显示定制警告框 function showAlert() { navigator.notification.alert( 'You are the winner!', // 显示信息 'Game Over', // 标题 'Done' // 按钮名称 ); } // 响三次 function playBeep() { navigator.notification.beep(3); } // 震动两秒 function vibrate() { navigator.notification.vibrate(2000); } </script> </head> <body> <p><a href="#" οnclick="showAlert(); return false;">Show Alert</a></p> <p><a href="#" οnclick="playBeep(); return false;">Play Beep</a></p> <p><a href="#" οnclick="vibrate(); return false;">Vibrate</a></p> </body> </html>
    iPhone的特异情况:
    • time:忽略时长参数,震动时长为预先设定值。
    简单的范例:
    <span style="font-size:13px;">navigator.notification.vibrate(); navigator.notification.vibrate(2500); // 2500被忽略掉</span>


    设备的视觉、听觉和触觉通知。
    方法:
    • notification.alert
    • notification.confirm
    • notification.beep
    • notification.vibrate
    notification.alert
    显示一个定制的警告或对话框。
    navigator.notification.alert(message, alertCallback, [title], [buttonName]);
    • message:对话框信息。(字符串类型)
    • alertCallback:当警告对话框被忽略时调用的回调函数。(函数类型)
    • title:对话框标题。(字符串类型)(可选项,默认值为“Alert”)
    • buttonName:按钮名称(字符串类型)(可选项,默认值为“OK”)
    说明:
    大多数PhoneGap使用本地对话框实现该功能。然而,一些平台只是简单的使用浏览器的alert函数,而这种方法通常是不能定制的。
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // Android / BlackBerry WebWorks (OS 5.0 and higher) // iPhone function alertDismissed() { // 进行处理 } navigator.notification.alert( 'You are the winner!', // 显示信息 alertDismissed, // 警告被忽视的回调函数 'Game Over', // 标题 'Done' // 按钮名称 ); // BlackBerry (OS 4.6) // webOS navigator.notification.alert('You are the winner!');
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { // 空 } // 警告对话框被忽视 function alertDismissed() { // 进行处理 } // 显示一个定制的警告框 function showAlert() { navigator.notification.alert( 'You are the winner!', // 显示信息 alertDismissed, // 警告被忽视的回调函数 'Game Over', // 标题 'Done' // 按钮名称 ); } </script> </head> <body> <p><a href="#" οnclick="showConfirm(); return false;">Show Confirm</a></p> </body> </html>
    notification.confirm
    显示一个可定制的确认对话框。
    navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels]);
    • message:对话框信息。(字符串类型)
    • confirmCallback:按下按钮后触发的回调函数,返回按下按钮的索引(1、2或3)。(函数类型)
    • title:对话框标题。(字符串类型)(可选项,默认值为“Confirm”)
    • buttonLabels:逗号分隔的按钮标签字符串。(字符串类型)(可选项,默认值为“OK、Cancel”)
    说明:
    notification.confirm函数显示一个定制性比浏览器的confirm函数更好的本地对话框。
    支持的平台:
    • Android
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // 处理确认对话框返回的结果 function onConfirm(button) { alert('You selected button ' + button); } // 显示一个定制的确认对话框 function showConfirm() { navigator.notification.confirm( 'You are the winner!', // 显示信息 onConfirm, // 按下按钮后触发的回调函数,返回按下按钮的索引 'Game Over', // 标题 'Restart,Exit' // 按钮标签 ); }
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { // 空 } // 处理确认对话框返回的结果 function onConfirm(button) { alert('You selected button ' + button); } // 显示一个定制的确认对话框 function showConfirm() { navigator.notification.confirm( 'You are the winner!', // 显示信息 onConfirm, // 按下按钮后触发的回调函数,返回按下按钮的索引 'Game Over', // 标题 'Restart,Exit' // 按钮标签 ); } </script> </head> <body> <p><a href="#" οnclick="showConfirm(); return false;">Show Confirm</a></p> </body> </html>
    notification.beep
    设备将发出蜂鸣声。
    navigator.notification.beep(times);
    • times:蜂鸣声的重复次数。(数字类型)
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // 蜂鸣2次! navigator.notification.beep(2);
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { // 空 } // 显示一个定制的警告框 function showAlert() { navigator.notification.alert( 'You are the winner!', // 显示信息 'Game Over', // 标题 'Done' // 按钮名称 ); } // 蜂鸣三次 function playBeep() { navigator.notification.beep(3); } // 震动两秒 function vibrate() { navigator.notification.vibrate(2000); } </script> </head> <body> <p><a href="#" οnclick="showAlert(); return false;">Show Alert</a></p> <p><a href="#" οnclick="playBeep(); return false;">Play Beep</a></p> <p><a href="#" οnclick="vibrate(); return false;">Vibrate</a></p> </body> </html>
    Android的特异情况:
    • Androids会播放在“设置/音效及显示”面板中指定的默认“通知铃声”。
    iPhone的特异情况:
    • 忽略蜂鸣次数参数。
    • iPhone没有本地的蜂鸣API。
      • PhoneGap通过多媒体API播放音频文件来实现蜂鸣。
      • 用户必须提供一个包含所需的蜂鸣声的文件。
      • 此文件播放时长必须短于30秒,位于www/root,并且必须命名为beep.wav。
    notification.vibrate
    使设备震动指定的时长。
    navigator.notification.vibrate(milliseconds);
    • time:以毫秒为单位的设备震动时长,1000毫秒为1秒。(数字类型)
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    // 震动2.5秒 navigator.notification.vibrate(2500);
    完整的范例:
    <!DOCTYPE html> <html> <head> <title>Notification Example</title> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script> <script type="text/javascript" charset="utf-8"> // 等待加载PhoneGap document.addEventListener("deviceready", onDeviceReady, false); // PhoneGap加载完毕 function onDeviceReady() { //空 } // 显示定制警告框 function showAlert() { navigator.notification.alert( 'You are the winner!', // 显示信息 'Game Over', // 标题 'Done' // 按钮名称 ); } // 响三次 function playBeep() { navigator.notification.beep(3); } // 震动两秒 function vibrate() { navigator.notification.vibrate(2000); } </script> </head> <body> <p><a href="#" οnclick="showAlert(); return false;">Show Alert</a></p> <p><a href="#" οnclick="playBeep(); return false;">Play Beep</a></p> <p><a href="#" οnclick="vibrate(); return false;">Vibrate</a></p> </body> </html>
    iPhone的特异情况:
    • time:忽略时长参数,震动时长为预先设定值。
    简单的范例:
    <span style="font-size:13px;">navigator.notification.vibrate(); navigator.notification.vibrate(2500); // 2500被忽略掉</span>


    展开全文
  • Notification

    2017-01-12 12:32:32
    翻译起来好像是通知经理,我每次使唤它, 总有种自己是总经理的感觉,非常爽)    那我们如何告知它要做什么呢? 通过Notification.Buider来构建,这相当于一个Word文档,你在里面把你要做什么给...

     新年将近,无钱过年,于是自我娱乐一下。(如有侵权,请告知)


    要实现的

    具体实现是在应用中有一个按钮,点击按钮后会退回到桌面,

    之后手机振动,然后你可以在别人的注视下很惊奇的拿起手机,然后看到以上的通知

    具体实现:

    首先是主界面的布局文件:activity_main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/activity_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin">
    
        <Button
            android:id="@+id/btn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="start"
            android:text="点击我"
            android:textSize="20dp"
            android:paddingLeft="40dp"
            android:paddingRight="40dp"
            android:paddingTop="20dp"
            android:paddingBottom="20dp"
            android:layout_centerInParent="true"/>
    </RelativeLayout>
    比较简单:就是在布局中央放置一个按钮,通过属性android:onClick="start"可知,点击按钮时会调用start函数


    下面是MainActivity.java:

    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        //点击按钮会调用start函数,start函数会启动Myservice服务
        public void start(View view){
            startService(new Intent(this,Myservice.class));
        }
    }

    比较简单,start函数中会启动服务Myservice


    下面重点来看看Myservice.java:
    Myservice的作用是1.发送通知,2.退回桌面


    1.android的发送通知需要 调用android的系统服务,android通过NotificationManager来管理,你要发送通知就让它去做就好了。(翻译起来好像是通知经理,我每次使唤它, 总有种自己是总经理的感觉,非常爽)

            那我们如何告知它要做什么呢?

    通过Notification.Buider来构建,这相当于一个Word文档,你在里面把你要做什么给写好,把word一保存仍给经理就好了。如下:

    //把经理先叫出来,用getSystemService(NOTIFICATION_SERVICE)方法来叫
    notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
    //把构建工具打开,相当于打开word文档吧
    builder = new NotificationCompat.Builder(this);

       然后如果你想在桌面出现提示:如下图

       

    就用setTicker来设置,如下

    //这个是设置图片的,一定要设置!!!否则通知不会显示在通知栏
    builder.setSmallIcon(R.mipmap.ic_launcher);
    
    //获得当前的时间
    Date startTime = new Date(System.currentTimeMillis());
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    String time = sdf.format(startTime);
    //设置桌面的提示
    builder.setTicker("尊敬的用户,您的账号于" +time+"转入100,000,000元");

    一。然后你打开通知栏,通知一般由标题,内容,和图片组成:

    分别对应builder.setContentTitle("我是标题啊");

                  builder.setContentText("我是内容啊");

              以及图片的builder.setSmallIcon(R.mipmap.ic_lancer);

    设置好后如何把word文档保存出来? 用build()方法像下面这样:

              Notification notification = builder.build();

    如何扔给经理:用notify(int id,Notification notification)方法,像下面这样:

              notificationManager.notify(1,notification);

    大功告成,然后你就可以得到:



    二。如果你想搞定高级的,比如收到通知时会振动,加上builder.setVibrate(new long[]{0,100,0,100});

    还有声音builder.setSound,  呼吸灯builder.setLights(),

    还可以设置通知的优先级builder.setPriority()


    三。偷偷告诉你,如果这时你这个通知点击后是不会消失的,要想让它消失,可以通过以下4种方式:

    • 点击通知栏的清除按钮,会清除所有可清除的通知
    • 设置了 setAutoCancel() 或 FLAG_AUTO_CANCEL的通知,点击该通知时会清除它
    • 通过 NotificationManager 调用 cancel() 方法清除指定ID的通知
    • 通过 NotificationManager 调用 cancelAll() 方法清除所有该应用之前发送的通知
    四。最后我们还得装装B,不用系统的格式,用自定义的
    先贴上我们打算用的布局activitys.xml:
    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/activity_main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context="com.example.testing.myapplication.MainActivity">
        <ImageView
            android:id="@+id/icon_iv"
            android:layout_width="64dp"
            android:layout_height="100dp"
            android:src="@mipmap/ic_launcher"/>
        <TextView
            android:id="@+id/title_tv"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:layout_toRightOf="@id/icon_iv"/>
        <TextView
            android:id="@+id/content_tv"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/icon_iv"
            android:layout_margin="10dp"
            android:layout_below="@id/title_tv" />
        <TextView
            android:id="@+id/time_tv"
            android:singleLine="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/title_tv"
            android:layout_alignTop="@id/title_tv"
            android:layout_alignParentRight="true"
            android:layout_marginRight="10dp"/>
    </RelativeLayout>
    然后是具体的设置代码:
    RemoteViews remoteViews = new RemoteViews(getPackageName(),R.layout.activitys);
    //自定义布局的标题
    remoteViews.setTextViewText(R.id.title_tv, "交通银行");
    //自定义布局的内容
    remoteViews.setTextViewText(R.id.content_tv, "尊敬的用户,您的账号于" +time+"转入100,000,000元");
    //自定义布局的显示的时间
    remoteViews.setTextViewText(R.id.time_tv, time);
    //自定义布局显示的图片
    remoteViews.setImageViewResource(R.id.icon_iv, R.drawable.gogo);
    //创建点击通知时调用的意图
    Intent intent = new Intent(this, SecondActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
    int requestCode = (int) SystemClock.uptimeMillis();
    pendingIntent = PendingIntent.getActivity(this, requestCode, intent, PendingIntent.FLAG_UPDATE_CURRENT);
    //设置点击时调用的意图
    remoteViews.setOnClickPendingIntent(R.id.time_tv, pendingIntent);
    //把word创建出来
    Notification notification = builder.build();
    //给通知设置自定义布局
    if(android.os.Build.VERSION.SDK_INT >= 16) {
        notification = builder.build();
        notification.bigContentView = remoteViews;
    }
    notification.contentView = remoteViews;
    //把word扔给经理,搞定了
    notificationManager.notify(1,notification);


    注意:如果使用contentView,通知展示的高度只有64dp,一般只有两行文字的高度,很多自定义布局都可能展示不全,而如果用bigContentView,高度可以达到256dp,就绰绰有余了。


    以下是Myservice.java代码,大功告成

    import android.app.Notification;
    import android.app.NotificationManager;
    import android.app.PendingIntent;
    import android.app.Service;
    import android.content.Intent;
    import android.os.Handler;
    import android.os.IBinder;
    import android.os.SystemClock;
    import android.support.v7.app.NotificationCompat;
    import android.util.Log;
    import android.widget.RemoteViews;
    
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    /**
     * Created by devel on 2017/1/12.
     */
    
    public class Myservice extends Service {
        NotificationManager notificationManager ;
        NotificationCompat.Builder builder;
        PendingIntent pendingIntent;
    
        public void click(){
            //把经理先叫出来,用getSystemService(NOTIFICATION_SERVICE)方法来叫
            notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
            //把构建工具打开,相当于打开word文档吧
            builder = new NotificationCompat.Builder(this);
            //这个是设置图片的,一定要设置!!!否则通知不会显示在通知栏
            builder.setSmallIcon(R.mipmap.ic_launcher);
    
            //获得当前的时间
            Date startTime = new Date(System.currentTimeMillis());
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            String time = sdf.format(startTime);
            //设置桌面的提示
            builder.setTicker("尊敬的用户,您的账号于" +time+"转入100,000,000元");
            //builder.setFullScreenIntent(pendingIntent, true);
    
            RemoteViews remoteViews = new RemoteViews(getPackageName(),R.layout.activitys);
            //自定义布局的标题
            remoteViews.setTextViewText(R.id.title_tv, "交通银行");
            //自定义布局的内容
            remoteViews.setTextViewText(R.id.content_tv, "尊敬的用户,您的账号于" +time+"转入100,000,000元");
            //自定义布局的显示的时间
            remoteViews.setTextViewText(R.id.time_tv, time);
            //自定义布局显示的图片
            remoteViews.setImageViewResource(R.id.icon_iv, R.drawable.gogo);
            //创建点击通知时调用的意图
            Intent intent = new Intent(this, SecondActivity.class);
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
            int requestCode = (int) SystemClock.uptimeMillis();
            pendingIntent = PendingIntent.getActivity(this, requestCode, intent, PendingIntent.FLAG_UPDATE_CURRENT);
            //设置点击时调用的意图
            remoteViews.setOnClickPendingIntent(R.id.time_tv, pendingIntent);
            //把word创建出来
            Notification notification = builder.build();
            //给通知设置自定义布局
            if(android.os.Build.VERSION.SDK_INT >= 16) {
                notification = builder.build();
                notification.bigContentView = remoteViews;
            }
            notification.contentView = remoteViews;
            //把word扔给经理,搞定了
            notificationManager.notify(1,notification);
            //退回桌面
            Intent i = new Intent(Intent.ACTION_MAIN);
            i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            i.addCategory(Intent.CATEGORY_HOME);
            startActivity(i);
        }
    
        @Override
        public void onCreate() {
            super.onCreate();
    
        }
    
        @Override
        public int onStartCommand(Intent intent, int flags, int startId) {
            new Handler().postDelayed(new Runnable() {
                @Override
                public void run() {
                    click();
                }
            },3000);
            return super.onStartCommand(intent, flags, startId);
        }
    
        @Override
        public IBinder onBind(Intent intent) {
            return null;
        }


    另外,Android 5.0(API level 21)开始,通知可以显示在锁屏上。用户可以通过设置选择是否允许敏感的通知内容显示在安全的锁屏上。

    如果想在锁屏情况下也显示可以通过setVisibility()控制通知的显示等级:

    • VISIBILITY_PRIVATE : 显示基本信息,如通知的图标,但隐藏通知的全部内容
    • VISIBILITY_PUBLIC : 显示通知的全部内容
    • VISIBILITY_SECRET : 不显示任何内容,包括图标

    参考:Notification详解

    展开全文
  • PhoneGap API帮助文档翻译Notification(提醒) “   设备的视觉、听觉和触觉通知。 方法: notification.alertnotification.confirmnotification.beepnotification.vibrate ...

    PhoneGap API帮助文档翻译—Notification(提醒)

     设备的视觉、听觉和触觉通知。
    方法:
    • notification.alert
    • notification.confirm
    • notification.beep
    • notification.vibrate
    notification.alert
     
    显示一个定制的警告或对话框。
    • message:对话框信息。(字符串类型)
    • alertCallback:当警告对话框被忽略时调用的回调函数。(函数类型)
    • title:对话框标题。(字符串类型)(可选项,默认值为“Alert”)
    • buttonName:按钮名称(字符串类型)(可选项,默认值为“OK”)
    说明:
    大多数PhoneGap使用本地对话框实现该功能。然而,一些平台只是简单的使用浏览器的alert函数,而这种方法通常是不能定制的。
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    完整的范例:
    notification.confirm
     
    显示一个可定制的确认对话框。
    • message:对话框信息。(字符串类型)
    • confirmCallback:按下按钮后触发的回调函数,返回按下按钮的索引(1、2或3)。(函数类型)
    • title:对话框标题。(字符串类型)(可选项,默认值为“Confirm”)
    • buttonLabels:逗号分隔的按钮标签字符串。(字符串类型)(可选项,默认值为“OK、Cancel”)
    说明:
    notification.confirm函数显示一个定制性比浏览器的confirm函数更好的本地对话框。
    支持的平台:
    • Android
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    完整的范例:
    notification.beep
     
    设备将发出蜂鸣声。
    • times:蜂鸣声的重复次数。(数字类型)
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    完整的范例:
    Android的特异情况:
    • Androids会播放在“设置/音效及显示”面板中指定的默认“通知铃声”。
    iPhone的特异情况:
    • 忽略蜂鸣次数参数。
    • iPhone没有本地的蜂鸣API。
      • PhoneGap通过多媒体API播放音频文件来实现蜂鸣。
      • 用户必须提供一个包含所需的蜂鸣声的文件。
      • 此文件播放时长必须短于30秒,位于www/root,并且必须命名为beep.wav。
    notification.vibrate
     
    使设备震动指定的时长。
    • time:以毫秒为单位的设备震动时长,1000毫秒为1秒。(数字类型)
    支持的平台:
    • Android
    • BlackBerry (OS 4.6)
    • BlackBerry WebWorks (OS 5.0或更高版本)
    • iPhone
    简单的范例:
    完整的范例:
    iPhone的特异情况:
    • time:忽略时长参数,震动时长为预先设定值。
    简单的范例:


    展开全文
  • 定义Notification通知事件。 android.app.Notification.Notification(int icon, CharSequence tickerText, long when)   public Notification (int icon, CharSequence tickerText, long when) Since: API ...
  • 文章源自:... 设备的视觉、听觉和触觉通知。 方法: notification.alert notification.confirm notification.beep notification.vibrate notification.alert 显示一个定制的警告或...
  • Notification学习

    2014-09-20 14:04:38
    Notification中的常量字段:
  • Notification API 允许开发者向用户界面以通知的形式提供事件,包括被动的事件(例如:新的E-mail,微博(tweets)或者日历事务提醒)并且在用户交互方面忽略标签页的聚焦状态(*1)。 你可以按照下面的步骤在几分钟内...
  • Apple Push Notification Service 苹果推送通知服务 Apple Push Notification service (APNs) is the centerpiece of the remote notifications feature. It is a robust and highly efficient service for ...
  • 一、Android中的Notification Notification翻译过来就是通知的意思,实际上我们在使用安卓手机实经常见,如果你没做特别设置,当你手机收到短信或是受到APP的推送,都会先显示在手机顶上方的通知栏
  • <p>I have created a plugin to customise the User Notification Email Template but I'm not able to get the translation working. If I switch the language in WordPress to Dutch the language of the Email ...
  • 1、creat a Notification Builder 一个Builder至少包含: a small icon 用setSmallIcon来设置a title 用setContentTitle来设置detail text 由setContentText来设置 eg: NotificationCompat.Builder mBuilder ...
  • 本文由DevDiv Vincent (vincent@devdiv.com) 翻译整理,转载请注明出处! NSNotificationCenter/UILocalNotification/remote notification/notification center令人困惑的关系梳理! 1. 三种类型的notification ...
  • android源码浅析--notification

    万次阅读 2013-01-16 23:05:50
    在上一篇文章中,用到了Notification,准备好好的看下notification的源码。 类概述:  一个表示如何使用NotificationManager把一个持久的通知呈现给用户的类。The Notification.Builder has been added to make ...
  • 笔者最近正在做一个项目,里面需要用到 Android Notification 机制来实现某些特定需求。我正好通过这个机会研究一下 Android Notification 相关的发送逻辑和接收逻辑,以及整理相关的笔记。我研究 Notification 机制...
  • use notification

    千次阅读 2010-09-03 17:04:00
      cocoa for mac 大牛翻译的   用户可能使用RaiseMan并打开了几个document, 然后他发现紫色的背景颜色实在是不利于阅读文档正文. 于是,他打开Preferences panel修改背景颜色,不过令人失望的...
  • Notification and Observer

    2019-08-22 01:11:17
    本篇会介绍Notification 和 observer 的基础用法,这里我先基本设定两个viewController,一个viewController,一个是detailViewController。我们的最终目的是点击Detail按键,去到detailViewController,点击RED,...
  • Notification是显示在手机状态栏的通知--手机状态栏位于设计屏幕的最上方,哪里一般显示手机当前的网络状态、电池状态、时间...翻译自官方API创建一个通知Android为Notification增加了NotificationCompat.Builder类,通
  • 最近接手的项目需要实现站内消息功能,因为以前一直用laravel,本能就想到Laravel 的消息通知系统可以完美实现此功能。 但是由于系统的特性,当前项目使用lumen...Command "make:notification" is not defined. 找...
  • Notification与多线程

    2015-09-04 22:37:00
    Notification与多线程
  • Notification使用指导与规范(原理篇)

    千次阅读 2017-03-18 00:02:38
    Notification使用指导与规范
  • Notification使用 大通知

    2016-03-22 01:15:46
    android api 指南上很多部分谷歌 官方 已经翻译成了 中文,先看下 谷歌官方对notificatio 的介绍: 通知是您可以在应用的常规 UI 外部向用户显示的消息。当您告知系统发出通知时,它将先以图标的形式显示在通知...
  • Notification chain in bridge

    2014-03-03 08:46:39
    这也是Bridge的副产品,真是好就没有没弄内核了,忘光了,还好...Notification chain,翻译成告诉链,用于内核不一样的子体系之间彼此告诉一些事情,并主动触发告诉链上的函数对其进行处置。内核中注册了数以十

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,275
精华内容 5,710
关键字:

notification翻译