分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
实现类似微信,QQ的前后台切换:back键切换后台;点击通知栏恢复前台。
1、back键切换后台的实现:
这个实现需要在主activity重写onbackpressed()方法。代码如下:
@Override public void onBackPressed() { Intent intent= new Intent(Intent.ACTION_MAIN); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.addCategory(Intent.CATEGORY_HOME); startActivity(intent); }
实现原理其实很简单,本来系统按back键的话是会destroy activity的,在这里,我们重写,改为使用intent启动HOME桌面
public static final String CATEGORY_HOME:
This is the home activity, that is the first activity that is displayed when the device boots. Constant Value: "android.intent.category.HOME"
谷歌的官方文档写的很清楚,这会启动home activity,也就是手机的桌面程序。这样,我们应用的主activity不会destroy,而只是stop。实现了按home键相同的效果。
2、点击通知栏恢复前台:
在我们收到消息时,会在通知栏显示消息,并且点击通知栏消息后,程序可以切换到前台。下面是程序的结构:
程序结构如上图所示:MainActivity为主Activity,类似于微信,QQ的主界面;ShowPushActivity显示消息内容,类似于微信,QQ的聊天activity;MyApplication继承Application,实现通知栏的显示等操作;BringToFrontReceiver接受通知栏广播,将程序切换至前台。
/** * Created by neal on 2014/11/18. */public class MyApplication extends Application { @Override public void onCreate() { super