intent

android 按home键返回到桌面后,再按桌面应用图标又重新打开该应用的解决方法

我与影子孤独终老i 提交于 2019-12-03 01:31:07
android 按home键返回到桌面后,再按桌面应用图标又重新打开该应用的解决方法 如题。 这个问题困扰了我一下午,查了好多资料都不太跟这个问题沾边,但还是查到了。。记录下来,为了自己,也为了方便别人。 这个问题是因为在AndroidManifest.xml中,你的启动activity中加了android:launchMode="singleTask",将这行 代码 去掉就可以了。如下图: 关于为什么会引起这个问题,主要还是不太了解activity的launchMode,查了下资料,感觉楼主整理的不错,就引用过来,如下文: 转自 http://hi.baidu.com/amauri3389/blog/item/a54475c2a4b2f040b219a86a.html 参见: http://mypyg.iteye.com/blog/919643 http://marshal.easymorse.com/archives/2950 http://blog.csdn.net/infsafe/article/details/5666964 Activity有四种加载模式:standard(默认), singleTop, singleTask和 singleInstance。以下逐一举例说明他们的区别: standard:Activity的默认加载方法

Activity 四种启动模式

浪尽此生 提交于 2019-12-03 01:30:56
standard:Activity的默认加载方法,即使某个Activity在Task栈中已经存在,另一个activity通过Intent跳转到该activity,同样会新创建一个实例压入栈中。例如:现在栈的情况为:A B C D,在D这个Activity中通过Intent跳转到D,那么现在的栈情况为: A B C D D 。此时如果栈顶的D通过Intent跳转到B,则栈情况为:A B C D D B。此时如果依次按返回键,D D C B A将会依次弹出栈而显示在界面上。 singleTop:如果某个Activity的Launch mode设置成singleTop,那么当该Activity位于栈顶的时候,再通过Intent跳转到本身这个Activity,则将不会创建一个新的实例压入栈中。例如:现在栈的情况为:A B C D。D的Launch mode设置成了singleTop,那么在D中启动Intent跳转到D,那么将不会新创建一个D的实例压入栈中,此时栈的情况依然为:A B C D。但是如果此时B的模式也是singleTop,D跳转到B,那么则会新建一个B的实例压入栈中,因为此时B不是位于栈顶,此时栈的情况就变成了:A B C D B。 singleTask:如果某个Activity是singleTask模式,那么Task栈中将会只有一个该Activity的实例。例如

standard(默认), singleTop, singleTask和 singleInstanc

一世执手 提交于 2019-12-03 01:30:41
Activity有四种加载模式:standard(默认), singleTop, singleTask和 singleInstance。以下逐一举例说明他们的区别: standard:Activity的默认加载方法,即使某个Activity在Task栈中已经存在,另一个activity通过Intent跳转到该activity,同样会新创建一个实例压入栈中。例如:现在栈的情况为:A B C D,在D这个Activity中通过Intent跳转到D,那么现在的栈情况为: A B C D D 。此时如果栈顶的D通过Intent跳转到B,则栈情况为:A B C D D B。此时如果依次按返回键,D D C B A将会依次弹出栈而显示在界面上。 singleTop:如果某个Activity的Launch mode设置成singleTop,那么当该Activity位于栈顶的时候,再通过Intent跳转到本身这个Activity,则将不会创建一个新的实例压入栈中。例如:现在栈的情况为:A B C D。D的Launch mode设置成了singleTop,那么在D中启动Intent跳转到D,那么将不会新创建一个D的实例压入栈中,此时栈的情况依然为:A B C D。但是如果此时B的模式也是singleTop,D跳转到B,那么则会新建一个B的实例压入栈中,因为此时B不是位于栈顶,此时栈的情况就变成了:A

android当中taskAffinity属性与launchMode相关

与世无争的帅哥 提交于 2019-12-03 01:29:53
一、本文尝试解释以下问题 1. Activity被启动之后放在哪个任务栈当中?与哪些因素有关? 2. Activity的四种启动模式对Activity的启动有哪些影响? 3. 在Activity中使用startActivityForResult(intent, REQUESTCODE);和onActivityResult() 是否与被启动的 Activity 的 launchMode 有关?如果有关,有什么关系? 二、 Activity 被启动之后放在哪个任务栈当中?与哪些因素有关? 1. 基本论断: Activity 启动之后对应的任务站与 Activity 的两个属性 taskAffinity 和 allowTask- Reparenting 有关 2. 原理 (1) 任务栈的标识 ---- 任务栈名称的确定 任务栈的标识是由任务栈的名称来确定的,例如,在通常情况下用包名标识一个唯一任务栈,清单文件如下: <? xml version = "1.0" encoding = "utf-8" ?> < manifest xmlns:android = "http://schemas.android.com/apk/res/android" package = "com.example.musictest01" android:versionCode = "1" android

Updating app widget using AlarmManager

匿名 (未验证) 提交于 2019-12-03 01:29:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I am trying to update a Widget more frequently than the 30 minute restriction imposed by the 1.6docs. After reading nearly every post in SO, and the developer docs, and various other sources, I thought I had got to a point where i could implement it. And so, I tried, and failed. Since then, I have trawled yet more forums and solutions, and I cannot seem to get it to update. I have an Update class that sets the AlarmManager: public class Update extends Service{ @Override public void onStart(Intent intent, int startId) { String currentTemp =

Android App to call a number on button click

匿名 (未验证) 提交于 2019-12-03 01:29:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I want to call a number given in a textbox but I'm getting the error: The application 'xyz'(process com.android) has stopped unexpectedly The following is my code. Where is it going wrong? EditText txtPhn; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button callButton = (Button)findViewById(R.id.btnCall); txtPhn = (EditText)findViewById(R.id.txtPhnNumber); callButton.setOnClickListener(new OnClickListener() { public void onClick(View v) { try { Intent

How to programmatically enable auto-start and floating window permissions, How to find which phone need to do auto-start code?

匿名 (未验证) 提交于 2019-12-03 01:27:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: How can I enable auto start permission programmatically, please help I have searched a lot ,I want to enable auto-start for device if it is not enabled.Some solutions I have found as below I have found code for xiaomi,honor and letv but I want same thing for Lenovo if(Build.BRAND.equalsIgnoreCase("xiaomi") ){ Intent intent = new Intent(); intent.setComponent(new ComponentName("com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity")); startActivity(intent); }else if(Build.BRAND.equalsIgnoreCase("Letv")){ Intent

Android AlarmManager.setExactAndAllowWhileIdle() and WakefulBroadcastReceiver Not working in some new manufactured and low price devices

匿名 (未验证) 提交于 2019-12-03 01:26:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I think this question is asked many time in stackoverflow but still so many people struggling to resolved it. In my android app I have to wake up device for every half hour to getting current location and send it to server. For this I have used AlarmManager with setExactAndAllowWhileIdle() method and WakefulBroadcastReceiver . Its working fine in almost all standard/popular devices like samsung, LG(Nexus), Sony, Panasonic, lenovo, Motorola, Micro max and so on....But some other devices mostly china devices not supporting or cannot allow

Android: Failure delivering result ResultInfo

匿名 (未验证) 提交于 2019-12-03 01:26:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have an Activity A in TabHost , A startActivityForResult(B) then B startActivityForResult(C) . The problem I meet is that: In C when I setResult(RESULT_OK, intent), occur java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { (has extras) }} to activity {com.hackingtrace.vancexu/com.hackingtrace.vancexu.task.B}: java.lang.NullPointerException In B, I start C by setTimeButton.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { Intent i = new Intent(view

Android开发指南-窗口小部件(App Widgets)

拜拜、爱过 提交于 2019-12-03 01:25:31
http://blog.csdn.net/iefreer/article/details/4626274# 应用程序窗口小部件 App Widgets 应用程序窗口小部件( Widget )是微小的应用程序视图,可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个 App Widget provider 来发布一个 Widget 。可以容纳其它 App Widget 的应用程序组件被称为 App Widget 宿主。下面的截屏显示了一个音乐 App Widget 。 这篇文章描述了如何使用 App Widget Provider 发布一个 App Widget 。 基础知识 The Basics 为了创建一个 App Widget ,你需要下面这些: AppWidgetProviderInfo 对象 描述一个 App Widget 元数据,比如 App Widget 的布局,更新频率,以及 AppWidgetProvider 类。这应该在 XML 里定义。 AppWidgetProvider 类的实现 定义基本方法以允许你编程来和 App Widget 连接,这基于广播事件。通过它,当这个 App Widget 被更新,启用,禁用和删除的时候,你都将接收到广播通知。 视图布局 为这个 App Widget 定义初始布局,在 XML 中。 另外,你可以实现一个