标签: android-activitymanager

Android - 恢复上次查看的活动

我有3个不同的活动,用户之间没有特定的顺序导航.我的目标是双重的:

  1. 当用户在恢复应用时切换到其他内容时,即使应用已终止,我也希望从用户离开的位置开始
  2. 当最后一个活动恢复时,我想将它恢复到上次查看状态(这个我认为我对如何实现这个状态非常好)

我认为问题不是开始/停止 - 我几乎得到了我需要的东西,但是onCreate()如果app被终止了.在这种情况下 - 它选择我在清单中配置的Activity.我想我可以在onCreate()默认活动的方法中加入一些东西,但是有更好的方法可能会让我失踪吗?

android android-activity android-activitymanager

9
推荐指数
1
解决办法
2万
查看次数

java.lang.NoClassDefFoundError:无法解决以下问题:Landroidx / core / app / ActivityManagerCompat

描述


我想构建待办事项应用程序。我想使用RoomDatabse存储信息。我用空间构建数据库,并获取信息,而不是保存到数据库。但是,当我单击添加按钮时,我得到了例外。我已经在网络上搜索了合适的解决方案,但没有发现任何有用的方法。请帮我。

我的例外

 Caused by: java.lang.ClassNotFoundException: Didn't find class
"androidx.core.app.ActivityManagerCompat" while store data using Room.
Run Code Online (Sandbox Code Playgroud)

我的Android Studio配置

compileSdkVersion 27
buildToolsVersion '28.0.3'
minSdkVersion 15
targetSdkVersion 27
Run Code Online (Sandbox Code Playgroud)

我的数据库类

@Database(entities = {TaskEntry.class},version = 1,exportSchema = false)
Run Code Online (Sandbox Code Playgroud)

@TypeConverters(DateConverter.class)公共抽象类AppDatabase扩展了RoomDatabase {

private static final String LOG_TAG=AppDatabase.class.getSimpleName();
private static final Object LOCK=new Object();
private static final String DATABASE_NAME="todolist";
private static AppDatabase mInstance;

public static AppDatabase getInstance(Context context){

    if(mInstance==null){
        synchronized (LOCK){
            Log.d(LOG_TAG,"Creating new database instance");
            mInstance= Room.databaseBuilder(context.getApplicationContext(),
                    AppDatabase.class,AppDatabase.DATABASE_NAME)
                    .allowMainThreadQueries()
                    .build();
        }
    }
    Log.d(LOG_TAG,"getting the database instance");
    return mInstance; …
Run Code Online (Sandbox Code Playgroud)

java android android-activitymanager android-room

8
推荐指数
1
解决办法
5649
查看次数

5
推荐指数
1
解决办法
2244
查看次数

在这种情况下,为什么 android 会杀死将光标保留在另一个进程上的内容提供者上的客户端进程?

我的应用程序在 Process1 中运行,并且我正在使用在 Process2 下运行的另一个应用程序提供的内容提供程序。当 Process2 终止时,会导致在 Process1 下运行的我的应用程序被终止。

09-14 23:31:52.583   782  1351 I ActivityManager: Killing 11797:com.example.myapp/1000 (adj 100): depends on provider com.example.exampleapp/com.example.exampleapp.MyContentProvider in dying proc com.example.exampleapp (adj 100)
09-14 23:31:52.585   782   812 W libprocessgroup: kill(-11797, 9) failed: No such process
09-14 23:31:52.585   782   812 I libprocessgroup: Successfully killed process cgroup uid 1000 pid 11797 in 0ms
09-14 23:31:52.623   368   368 I Zygote  : Process 11797 exited due to signal (9)
Run Code Online (Sandbox Code Playgroud)

我在 SO 中遇到了这个很好的答案,它基本上解释了当我们对内容提供商进行内容观察者与查询时会发生什么。

但我不清楚为什么 android 会杀死整个过程。为什么不能在应用程序级别处理这个问题,DeadObjectException …

android android-contentprovider contentobserver android-activitymanager contentproviderclient

5
推荐指数
0
解决办法
3049
查看次数

Android检查应用程序是否关闭

我有一个android应用程序,我需要一个功能或任何广播接收器,可以检查应用程序是否关闭。.我不需要在每个活动中调用destroy(该应用程序中大约有20个活动)应用程序类中的功能

public class ApplicationLifeCycleManager implements ActivityLifecycleCallbacks {

/** Manages the state of opened vs closed activities, should be 0 or 1.
 * It will be 2 if this value is checked between activity B onStart() and
 * activity A onStop().
 * It could be greater if the top activities are not fullscreen or have
 * transparent backgrounds.
 */
private static int visibleActivityCount = 0;

/** Manages the state of opened vs closed activities, should be 0 or 1 …
Run Code Online (Sandbox Code Playgroud)

android android-lifecycle android-activity android-activitymanager

0
推荐指数
3
解决办法
6298
查看次数