private void initNotification() {
mState = STATE_EXITED;
mHungup = mContext.getResources().getString(R.string.hungup);
mPlaying = mContext.getResources().getString(R.string.signalPrompt);
if (null == mNM) {
mNM = (NotificationManager) mContext
.getSystemService(Context.NOTIFICATION_SERVICE);
}
if (null == mNotification) {
mNotification = new Notification();
mNotification.flags = Notification.FLAG_NO_CLEAR;
}
setRemoteActivity(LAUNCHER);
setContentView();
}
/*
* set the activity to go when click the item in the notification area.
*/
public void setRemoteActivity(String launcher) {
ComponentName comp = new ComponentName(PKGNAME, PKGNAME + launcher);
Intent notificationIntent = new Intent();
notificationIntent.setComponent(comp);
if (launcher.equals(LAUNCHER)) {
notificationIntent.addCategory("android.intent.category.LAUNCHER");
notificationIntent.setAction("android.intent.action.MAIN");
notificationIntent.setFlags(0x10200000);
} else {
notificationIntent.putExtra(Define.INTENT_CHANNEL_POSITION,
MBBMSService.sCurrentPlayPosition);
notificationIntent.setAction(Action.ACTION_VIEW_PROGRAM_ACTION);
}
mNotification.contentIntent = PendingIntent.getActivity(mContext, 0,
notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
}
private void setContentView() {
mContentView = new RemoteViews(mContext.getPackageName(),
R.layout.status_bar_signal);
mContentView.setTextViewText(R.id.text, mPlaying);
mContentView.setImageViewResource(R.id.icon, R.drawable.icon_tvplayer);
mNotification.contentView = mContentView;
}
方法setRemoteActivity里面使得后台运行的应用显示到主界面上,同时使得最后一次运行的activity显示在activity堆栈的最上面
分享到:
相关推荐
这个问题涉及到Android的生命周期管理、服务、广播接收器以及通知的点击处理等多个方面。 首先,我们需要理解Android应用的生命周期。当一个app被关闭,实际上它并没有完全退出,而是进入了后台运行状态。如果系统...
综上所述,"android 通知栏跳转"涉及到Android的通知系统、Intent、PendingIntent的使用,以及如何在目标Activity中处理点击事件,实现用户从通知栏直接进入相应的界面。通过理解并熟练掌握这些知识点,开发者可以...
4. **处理点击事件**:`EasyNotify`支持在通知被用户点击时执行特定操作,例如启动指定的Activity或执行其他逻辑。 5. **兼容性**:该库确保与多种Android版本和设备的兼容,减轻了开发者适配不同设备的工作负担。 6...
在Android开发中,Activity和Intent是两个非常核心的概念,它们都与应用组件的生命周期紧密相关。本文将深入浅出地介绍如何定义多个Activity、Intent的数据结构及作用、以及Android中的backstack和Activity的生命...
《Android中文API合集》是Android开发者不可或缺的资源库,它包含了丰富的Android开发相关的中文文档,旨在...通过这个合集,开发者可以快速定位到需要的API,查找使用方法,解决开发过程中遇到的问题,提高开发效率。
例如,我们可以在Activity中订阅`GpsLocationEvent`: ```java @Subscribe(threadMode = ThreadMode.MAIN) public void onGpsLocationChanged(GpsLocationEvent event) { Location location = event.getLocation()...
4. **Intent**:Intent是Android中的一种消息对象,用于启动Activity或Service,或者在它们之间传递数据。Intent分为显式Intent和隐式Intent,前者指定接收者,后者通过Action、Data、Category等匹配接收者。 5. **...
这份“帮助文档 中文 Android”将覆盖以上知识点,以及其他高级主题,如多线程、异步任务、通知、定位服务、蓝牙通信等。对于初学者,它将提供清晰的引导;对于有经验的开发者,它将作为参考手册,解答日常开发中的...
在Activity中启动和停止Service,可以通过发送带有特定Action的Intent来实现。在Service中,可以通过`startForeground()`方法显示一个通知,告知用户Service正在运行,以满足Android系统的前台服务要求。 6. **...
如果Activity位于任务栈底部,系统会将任务栈中的所有Activity弹出,然后将该Activity移动到栈顶。 - **singleInstance**:与`singleTask`类似,但该Activity总是位于一个独立的任务栈中。 #### 8. Intent启动方式...
在Android Studio中,你可以选择"Start a new Android Studio project"模板,然后指定项目名称、包名以及应用的基本配置。这个过程中,你会接触AndroidManifest.xml文件,它是每个Android应用的核心组件,记录了应用...
在Android开发中,Location服务是获取用户位置信息的关键组件,特别是在GPS系统中。这篇讨论主要集中在如何在没有用户界面的情况下,通过Service实现GPS位置的后台监控。Service在Android应用程序中扮演着后台运行...
----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...
在 Activity 中,需要创建一个 Intent 对象,指定服务的类名,例如 ForegroundLocationService.class,然后调用 bindService() 方法绑定服务。同时,需要实现 ServiceConnection 接口,重写 onServiceConnected() 和...
- **搜索功能**:快速查找关键词,定位到相关的备忘。 - **同步与备份**:支持云同步,防止数据丢失,可以在不同设备上查看备忘。 **4. 开发流程** - **项目初始化**:使用Android Studio新建项目,选择应用的最小...
通过清单文件中的activity属性来控制Activity在Android的特定版本中显示。 19. 程序锁的实现: 涉及在后台监视当前启动程序的包名,并与数据库中的数据进行比较,若不在数据库中则弹出密码对话框。 20. Android...
在Android开发中,应用间的跳转以及与系统功能的交互是一项基本且重要的技能。通过合理的使用Intent,开发者能够实现各种跨应用或系统级别的操作,极大地增强了应用的功能性和用户体验。以下是对给定文件中的示例...
- **Android:taskAffinity**: 定义了 Activity 所属的任务,如果值为空,则 Activity 会加入到启动它的 Activity 的任务中;如果指定了一个非空字符串,则 Activity 会被放到一个单独的任务中。 #### 3. 通过 ...
十、Android通知(Notifications) 通知是Android中向用户展示应用状态的一种方式,即使应用不在前台运行,也能提醒用户。通过NotificationManager和Notification类可以创建和管理通知。 十一、Android数据存储 ...
这涉及到Android系统的定时任务管理和用户通知机制。 七、权限管理 根据Android权限模型,开发者需要在AndroidManifest.xml中声明所需权限,如访问网络、定位、读写存储等,并在运行时处理权限请求。 八、异常处理...