概述
Francis 的Notification学习之旅二
1.PaddingIntent与Intent的区别;
2.Notification的使用。
一、Intent和PendingIntent的区别
a. Intent是立即使用的,而PendingIntent可以等到事件发生后触发,PendingIntent可以cancel
b. Intent在程序结束后即终止,而PendingIntent在程序结束后依然有效
c. PendingIntent自带Context,而Intent需要在某个Context内运行
d. Intent在原task中运行,PendingIntent在新的task中运行
参考链接:http://blog.csdn.net/yuzhiboyi/article/details/8484771
http://blog.csdn.net/zeng622peng/article/details/6180190
二、Notification的使用
高版本通常使用Notification.builder来建立。
代码参考:
package cqmu.francisteam.com.myapplication; import android.annotation.TargetApi; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Intent; import android.os.Build; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private Button button; private NotificationManager manager; private Notification.Builder builder; @TargetApi(Build.VERSION_CODES.HONEYCOMB) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); builder = new Notification.Builder(this); button = (Button) findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @TargetApi(Build.VERSION_CODES.JELLY_BEAN) @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, MainActivity.class); PendingIntent contentIntent = PendingIntent.getActivity(MainActivity.this, 0, intent, 0); builder.setContentIntent(contentIntent); builder.setContentTitle("new notification is coming"); builder.setContentText("hello world"); builder.setSmallIcon(R.drawable.launcher); Notification notification = builder.build(); manager.notify(1000, notification); } }); } }
说明:DEFAULT_VIBRATE默认的震动需要注册权限到manifest,<uses-permission android:name = "android.permission.VIBRATE"/>
闪光灯也需要如同上述操作
最后
以上就是辛勤纸飞机为你收集整理的Notification二的全部内容,希望文章能够帮你解决Notification二所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复