gpt4 book ai didi

java - 文件观察者 onEvent() 中的 startActivity() 出现问题

转载 作者:太空宇宙 更新时间:2023-11-04 13:39:58 26 4
gpt4 key购买 nike

我已经运行了一个 fileObserver,现在我需要在调用 onEvent 后启动一个 Activity ,考虑到我无法获取 startActivity(),我不太确定如何执行此操作。

这是我当前的代码:

public class snapObserver extends FileObserver {

public final String TAG = "DEBUG";
public static Context mContext;

public snapObserver(String path) {
super(path, FileObserver.CREATE);
}

@Override
public void onEvent(int event, String path) {
if (path == null){
Log.d(TAG, "path is null");
}

Log.d(TAG, "File created!!!!");
mContext.startActivity(new Intent(mContext, editActivity.class));
}
}

这段代码抛出一个java.lang.NullPointerException

java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.Context.getPackageName()' on a null object reference at android.content.ComponentName.(ComponentName.java:77) at android.content.Intent.(Intent.java:3996) at com.samplersnapshoot.domiq.samplersnapshoot.snapObserver.onEvent(snapObserver.java:28) at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:122) at android.os.FileObserver$ObserverThread.observe(Native Method) at android.os.FileObserver$ObserverThread.run(FileObserver.java:85)

我有一个在后台运行的服务,它通过简单的 startWatching 调用 fileObserver。

最佳答案

尝试这样做:

public class snapObserver extends FileObserer {
private Context mContext;

//any code

public snapObserver(String path, Context context) {
super(path, FileObserver.CREATE);

this.mContext = context;
}

//any code
}

关于java - 文件观察者 onEvent() 中的 startActivity() 出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31325660/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com