草庐IT

android - "Intent.FLAG_ACTIVITY_CLEAR_TASK"如何在pre-honeycomb设备上使用?

背景我需要在某些事件上启动一个Activity(比如通知点击,但它可以是任何其他事件,甚至来自broadcastReceiver),如果其他Activity正在运行,或者至少不提供,它也会关闭所有其他Activity专注于他们。为此,我使用Intent.FLAG_ACTIVITY_CLEAR_TASK旗帜。问题似乎Intent.FLAG_ACTIVITY_CLEAR_TASK标志仅适用于API11(hive)及更高版本。一些网站声称IntentCompat可能会有所帮助,但即使在那里,文档也明确指出:Thisflagwillonlybeobeyedondevicessupporting

android - Intent .FLAG_ACTIVITY_NEW_TASK

我在应用程序未激活的某个日期和时间显示对话框(具有对话框主题的Activity;否则无法执行)。if(!Utils.isApplicationInForeground(context)){Intenti=newIntent(context,DialogActivity.class);i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startActivity(i);}Intent.FLAG_ACTIVITY_NEW_TASK=>所以当我在通过主页按钮(最近的应用程序)显示对话框后启动应用程序时,DialogActivity打开而不是应用

android - FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY 未针对历史记录设置

在我的Activity中:我使用onNewIntent来处理新的Intent。我不需要处理来自历史的Intent,并且在开始时我已经放置了这段代码if((intent.getFlags()&Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY)!=0){return;}但是,对于KindleFire上的历史Intent,此标志并未设置。在其他Android设备上,此代码运行良好。也许还有其他方法可以避免处理历史Intent? 最佳答案 Kindle不支持所有android操作,请查看https://d

android - 清除 FLAG_NOT_TOUCHABLE 后接收过去的事件

我有一个Activity,我想在一段时间内避免用户触摸按钮。我做这个:WindowManager.LayoutParamsparams=getWindow().getAttributes();getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE|WindowManager.LayoutParams.FLAG_FULLSCREEN);getWindow().setAttributes(params);效果很好,但是当我回来接收触摸事件时:WindowManager.LayoutParamsparams=get

android - 使用 FLAG_SHOW_WHEN_LOCKED 时,在启动 Activity 之前会短暂显示 Keyguard

我在onAttachedToWindow()中使用以下标志来显示我的Activity在键盘锁上方:FLAG_DISMISS_KEYGUARD|FLAG_SHOW_WHEN_LOCKED|FLAG_TURN_SCREEN_ON这工作正常,但是,当屏幕关闭时从后台服务启动我的Activity时,keyguard有时会在我的应用程序显示之前显示1-2秒。这种情况尤其发生在速度较慢的手机上(或在内存不足的情况下)。我觉得这很奇怪,因为我的理解是onAttachedToWindow()被调用afteronCreate()/onResume(),所以当上面提到的标志被设置时,所有的“繁重的工作”应

Flag大全及其含义

FLAG_ALLOW_LOCK_WHILE_SCREEN_ON:允许在屏幕开启的情况下锁定屏幕。FLAG_ALT_FOCUSABLE_IM:当界面上有输入框时,该标志可以让输入法在弹出后覆盖输入框之上。FLAG_DIM_BEHIND:在当前Activity之后的Activity中设置一个灰色透明遮罩层。FLAG_FORCE_NOT_FULLSCREEN:当前Activity不全屏显示,即显示状态栏。FLAG_FULLSCREEN:当前Activity全屏显示,即隐藏状态栏。FLAG_HARDWARE_ACCELERATED:启用硬件加速。FLAG_IGNORE_CHEEK_PRESSES:忽略

android - 在 Activity 中保持屏幕开启 - 不适用于 FLAG_KEEP_SCREEN_ON

很长一段时间我都认为我知道如何阻止屏幕进入休眠模式,我只是在我的Activity中使用了这段代码:getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);但是,我意识到这仅在我的手机处于“开发者模式”时有效,即当启用/选中USB调试(设置-->开发者选项-->USB调试)时。然后上面的代码确实停止了屏幕/设备进入休眠状态。如果不检查调试,那么我的屏幕就会进入休眠状态,就像没有明天一样。我在我的设备上运行Android4.04,并且android:minSdkVersion="12"android:targ

android - 使用 Intent.FLAG_ACTIVITY_MULTIPLE_TASK 安全吗?

背景让我们来看看下一个场景:用户使用具有多项Activity的应用X(如gmail应用)。在应用X上浏览了一下之后,他转到了您的应用。在您的应用中,您需要使用Intent启动此X应用,以转到其中的特定Activity。现在用户在应用X上转到此特定Activity。用户按下后退按钮,希望返回到您的应用,而不是停留在应用X上。另一个类似的场景:用户在Activity之间浏览您的应用。您的应用进入后台(例如使用主页按钮)。您的应用会显示一条通知,一旦点击,它将打开您应用的特定Activity。用户点击通知并转到您应用的特定Activity。用户按下后退按钮,希望返回到在点击通知之前显示的应用

android - Android Canvas 中的平滑非常慢的文本动画,SUBPIXEL_TEXT_FLAG 不起作用

我无法在Canvas中实现平滑非常慢的文本动画,因为Canvas.drawText不想在“像素之间”绘制。例如,给定4个连续帧,我在其中绘制Y偏移量为0、0.5、1、1.5的文本,Canvas实际上将分别以偏移量0、0、1、1绘制它,这导致动画为“生涩的”。有一个名为Paint.SUBPIXEL_TEXT_FLAG的标志,它应该保持浮点精度。我发现了一个相关的线程,其中RomainGuy说这个标志目前在Android中不受支持:MeaningofsomePaintconstantsinAndroid.我的问题是:是否有任何现有的解决方法?注意:在另一个位图中绘制文本一次,然后使用浮点偏

android - Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK Android 不工作

好吧,那是我的问题。我需要,当用户按下返回底部时,删除所有打开的Activity的堆栈:@OverridepublicvoidonBackPressed(){Intenti=newIntent(context,CrisolMainApp.class);i.putExtra(CrisolMainApp.CERRAR_APP,true);i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);startActivity(i);}关键是这适用于我的大部分手机,但昨天我尝试使用SamsungGalaxy