通知按钮返回原始活动后

时间:2015-11-04 15:47:46

标签: android android-activity notifications activity-manager

我写了一个应用程序,它通过alarmIntent每隔一定时间显示一次通知。用户单击通知并进入活动。在执行此活动后,他应该按一个按钮返回到他所在的原始应用程序(如浏览器或主屏幕等),然后再单击通知。 我的问题是,用户总是返回我的应用程序的主要活动。 我怎么能改变它?

谢谢!

4 个答案:

答案 0 :(得分:2)

尝试在您的活动中添加此行

<!DOCTYPE html>
<html>
<head>
  <title>Muzic4U</title>
  <link href='https://fonts.googleapis.com/css?family=Ubuntu' rel='stylesheet' type='text/css'>
</head>
<body>

<div style="max-width: 100%; background-color: #0099FF; text-align: center; color: #fff; padding: 20px; margin: 0;">
	<h1 style="margin: 0;"> Muzic4U </h1>
</div>

  
<div id="main">
  
  <div class="tab">
	<img src="http://cdn.albumoftheyear.org/album/25168-blast-radius.jpg" />
	<p class="caption"> <b> Insight </b><br> <i>The Blast Radius</i><br>2004</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
  </div>
  
  <div class="tab">
	<img src="http://static.marapcana.com/wp-content/uploads/2015/05/Orgasmi-Meccanici-cover.jpg" />
	<p class="caption"> <b> Alien Army </b><br> <i>Orgasmi Meccanici</i><br>1999</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
  </div>
  
  <div class="tab">
	<img src="http://img.maniadb.com/images/album/187/187420_1_f.jpg" />
	<p class="caption"> <b> Surreal & The Sound Providers </b><br> <i>True Indeed</i><br>2003</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>	
  </div>
  
  <div class="tab">
	<img src="https://pbs.twimg.com/media/COxJmdQWcAAFauN.jpg" />
	<p class="caption"> <b> Ohmega Watts </b><br> <i>The Find</i><br>2005</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
  </div>
  
  <div class="tab">
	<img src="https://pbs.twimg.com/media/COxJmdQWcAAFauN.jpg" />
	<p class="caption"> <b> Ohmega Watts </b><br> <i>The Find</i><br>2005</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>	
  </div>
  
  <div class="tab">
	<img src="https://pbs.twimg.com/media/COxJmdQWcAAFauN.jpg" />
	<p class="caption"> <b> Ohmega Watts </b><br> <i>The Find</i><br>2005</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
  </div>
  
  <div class="tab">
	<img src="https://pbs.twimg.com/media/COxJmdQWcAAFauN.jpg" />
	<p class="caption"> <b> Ohmega Watts </b><br> <i>The Find</i><br>2005</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
  </div>
  
  <div class="tab">
	<img src="https://pbs.twimg.com/media/COxJmdQWcAAFauN.jpg" />
	<p class="caption"> <b> Ohmega Watts </b><br> <i>The Find</i><br>2005</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
	
  </div>
  
  <div class="tab">
	<img src="https://pbs.twimg.com/media/COxJmdQWcAAFauN.jpg" />
	<p class="caption"> <b> Ohmega Watts </b><br> <i>The Find</i><br>2005</p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
  </div>
  
  <div class="tab">
	<img src="https://pbs.twimg.com/media/COxJmdQWcAAFauN.jpg" />
	<p class="caption"> <b> Ohmega Watts </b> <br> <i>The Find</i> <br> 2005 </p>
	<div class="dw">
	  <a href="">Download</a>
	</div>
  </div>
  
  <span class="clear"></span>
  
</div>

<style>
	body {
		font-family: Ubuntu, sans-serif;
        padding: 0;
        margin: 0;
        background-color: #333;
	}
	
		/* unvisited link */
	a:link {
		color: #fff;
	}
	
	/* visited link */
	a:visited {
		color: #fff;
	}
	
	/* mouse over link */
	a:hover {
		color: #fff;
	}
	
	/* selected link */
	a:active {
		color: #fff;
	}
	
	img {
	  display: table-cell;
	  max-width: 100%;
	}
	
	#main {
	  margin: 0 auto;
	  padding: 5px 0 0 5px;
	  max-width: 70%;
	}
	
	.tab {
	  max-width: calc((100% / 5) - 5px);
	  background-color: #666;
	  text-align: center;
	  float: left;
	  display: inline-block; 
	  margin: 0 5px 5px 0; 
	  }
	
	.dw {
	  max-width: 100%;
	  background-color: #000;
	  padding: 10px;
	}
	
	span.clear {
	  clear: left;
	  display: block;
	}
	
	.caption {
	  font-size: smaller;
      min-height: 80px;
	}			
    
</style>

</body>

答案 1 :(得分:1)

所以我最终找到了解决方案: 您需要将Intent.FLAG_ACTIVITY_MULTIPLE_TASKS标志添加到意图中,如该问题中所述: Go back to previous screen on backbutton pressed after responding to notification

答案 2 :(得分:0)

在按钮单击侦听器功能中尝试Activity.finish()。这类似于按后退按钮。

答案 3 :(得分:0)

通知启动了两种类型的活动:常规&amp;特别。 常规活动始终返回到Launcher或您之前的活动。 特殊活动将返回您的申请。

根据你的描述,你应该使用Regular Activity并通过TaskStackBuilder获取PendingIntent,它将为通知活动创建一个人工后台。

例如:

PendingIntent resultPendingIntent =
    stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);

这是文档,你可以在这里找到详细信息。 http://developer.android.com/guide/topics/ui/notifiers/notifications.html