草庐IT

active_flag

全部标签

Android 后台启动Activity适配

在Android9及以下版本,后台启动Activity相对自由,但是如果在Activity上下文之外启动Activity会有限制。CallingstartActivity()fromoutsideofanActivitycontextrequirestheFLAG_ACTIVITY_NEW_TASKflag所以此时需要给intent添加flag:FLAG_ACTIVITY_NEW_TASK。在Android版本10及以后版本,引入了后台执行限制,限制了应用在后台执行操作的能力。非核心任务的后台启动Activity可能会受到限制。详情可参见官方文档:从后台启动Activity的限制。根据文档可知

android - 在设备旋转时打开 Activity 泄漏窗口的 OptionsMenu

试图了解导致我的Activity窗口泄漏的原因。该Activity扩展了AppCompatActivity。它有一个单一的View,其中有一个RecyclerView和一个在旋转时不可见的ProgressBar。@OverrideprotectedvoidonCreate(@NullableBundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);if(savedInstanceState!=null){chosenSorting=savedIn

android - 在 Activity 生命周期中什么时候开始动画?

这很奇怪,但我从未见过关于我们如何在正确的时间执行动画以便在Activity的生命周期进行时顺利看到它们的详细记录。例如,如果您启动动画onCreate,那么您甚至看不到它的发生。此外,如果ActivityA使用startActivityForResult启动ActivityB,并且您想启动动画onActivityResult(以显示用户的选择),那么您将再次看不到任何内容,因为从ActivityB到ActivityA的转换需要一些时间。在这些情况下我们如何知道何时开始动画?我现在对onActivityResult案例更感兴趣。另外,我们一般如何才能知道View是否真的可以执行用户实际

android - 如何使用 Espresso 在 Instrumentation 测试中注入(inject) Mocked Presenter of Activity

我已经试了一个星期了。我已经抓取了所有可用的文章,但它们的实现或示例不尽如人意或停留在Espresso测试的步骤。我的Android应用程序遵循MVP架构(并且是在Java中)场景:[仅举一个例子]我有一个使用Dagger2获取HomePresenter的HomeActivity。(在通过HomeComponent中的voidinject(HomeActivityactivity)公开的HomeModule中提供方法。在我的HomeActivity的espressoTest中,我想注入(inject)一个mockpresent。我没有通过AppComponent在AppModule中公

android - 使用 OpenGL 处理 Activity 生命周期的正确方法是什么

我真的在这里挣扎,它阻碍了我。处理OpenGL和Activity的正确方法是什么-启动子Activity或返回主屏幕。让它恢复到原来的位置。我让它处于半工作状态,纹理/VBO在需要时在onResume()重新加载。但有时,当启动子Activity并返回时,或转到主屏幕并返回时,onCreate会再次被触发。这把整个事情搞砸了,最后我看到了黑屏。我确定我做错了整件事。有人可以解释应该如何处理这样的Activity吗? 最佳答案 您使用的是什么平台?我问的原因是,在Eclair之前,整个区域都充满了错误,导致暂停/恢复OpenGL基本上

android - 找不到处理 Intent 的 Activity

我对我的Intent有疑问。当我选择Intent时,我的应用程序似乎崩溃了。由于堆栈跟踪,我发现了错误代码行。但我找不到任何问题。希望任何人都可以帮助我。这是第121行的java代码:startActivity(newIntent(Intent.ACTION_INSERT,getIntent().getData()));这是堆栈跟踪:11-2416:09:24.634:ERROR/AndroidRuntime(222):Uncaughthandler:threadmainexitingduetouncaughtexception11-2416:09:24.834:ERROR/Andro

Android - 显示所有 Activity 的持久 View

我想重新创建一个类似于SwingGlassPane的功能,以便能够在用户“下方”正常使用应用程序时显示动画。我不能简单地创建一个单独的布局并将其附加到每个Activity,因为切换Activity时动画状态会丢失。有没有一种方法可以持续查看Android应用程序的所有Activity?谢谢。 最佳答案 不,不是。每个Activity都在自己的线程中运行,并且按照设计应该可以独立运行。但是您可以将动画状态保存到数据库或sharedPreferences中,并在新Activity中重新开始。您还可以使用Spinner或其他控件来代替单独

android - 在 xml 中为 PreferenceScreen 设置 Intent-flags

我的PreferencesActivityView是通过XML填充的,在该XML中我包含一个PreferencesScreen以导航到系统的同步首选项。使用下面的代码可以正常工作。我的问题是,当我打开Sync-Preferences,打开主屏幕,然后再次打开我的应用程序时,Sync-Settings被打开,因为它们位于堆栈的顶部。是否有可能在xml中包含NEW_TASK标志以告诉屏幕这是一个新任务并且与我的应用程序堆栈无关? 最佳答案 可以设置android:launchMode="singleInstance"。在您的代码示例中,

android - 如何检测 Android Activity 何时开始和结束

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:AndroidActivityLifeCycle-differencebetweenonPause()andOnStop()我的问题是关于是否有可能检测到AndroidActivity何时开始/结束。我的想法是让一个监听器或回调方法在这些事件期间执行一些代码,但我找不到任何人:_(非常感谢您的帮助!!!

偏好 Activity 中的 Android 更新语言

在我的Android应用程序中,我有一个偏好Activity,让用户可以覆盖应用程序的语言。为此,我在每个Activity的onResume()中调用此函数,然后重置内容View:publicstaticvoidcheckOverrideSystemLanguage(Contextcontext){SharedPreferencesprefs=PreferenceManager.getDefaultSharedPreferences(context);//Checkifsystem'slanguagesettingneedstobeoverriddenbooleanoverrideSy