IntentService - startService 上的 NullPointerExecption

IntentService - NullPointerExecption on startService

我正在尝试使用 Android 提供的 IntentService 功能 尝试 运行 在后台进行一些计算

我从昨天开始就一直在研究这个问题,但我似乎找不到任何有效的解决方案。
我已经查看了很多关于 IntentService 的 SO 问题并尝试应用建议的修复,但我的似乎无法工作。

我尝试从我调用函数的 Activity 传递各种不同的 context / Activies / getApplicationContext() / this / getBaseContext()但我仍然收到 空对象引用 错误

"Attempt to invoke virtual method 'android.content.ComponentName android.content.Context.startService(android.content.Intent)' on a null object reference"

应用程序在调用 startService() 的函数的第 3 行崩溃(请参阅下面的代码)

//This function is from MyCurrentClass.class - it is a Singleton and its being called from another activity where it passes in its context
public void notify (Context context, JSONObject responseFromDb){

    Intent inputIntent = new Intent(context, MyCurrentClass.class);
    inputIntent.putExtra("responseFromDB", responseFromDb.toString());
    this.startService(inputIntent); //crashes here!
}

P.S.: 我看过的大多数解决方案似乎只有 1 Activity,但我的应用程序在不同的 Activity 之间切换。 (不确定这是否重要)但最重要的是 我正在处理的 class 是一个普通的 Java class,它扩展了 IntentService 而不是 Activity class.

我还在我的 Android 清单中将服务声明为 link 到 MyCurrentClass 并尝试 Activity 中的 bindService():它被调用了,但它没有也工作

以下是我查看并尝试但失败的一些questions/solutions:

其实我也看了很多其他帖子,但是实在是太多了。

希望我提供的信息足够了。如果不是,请让我知道可能缺少什么,我会用所需信息更新问题。

使用 context 您在 activity 收到的评论中提到的内容,因为在这种情况下,您当前的 class 没有上下文。read for further details

context.startService(inputIntent); 

而不是

this.startService(inputIntent);