发出在具有多个SIM卡的设备中检索ConnectivityManager的问题

Die*_*era 9 android connectivity nullpointerexception

我在获取ConnectivityManager时遇到问题:

ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
Run Code Online (Sandbox Code Playgroud)

我正在使用应用程序上下文,我收到此错误:

Caused by: java.lang.NullPointerException: missing IConnectivityManager
at com.android.internal.util.Preconditions.checkNotNull(Preconditions.java:52)
at android.net.ConnectivityManager.<init>(ConnectivityManager.java:1045)
at android.net.MultiSimConnectivityManager.<init>(MultiSimConnectivityManager.java:86)
at android.app.ContextImpl$12.createService(ContextImpl.java:463)
at android.app.ContextImpl$ServiceFetcher.getService(ContextImpl.java:346)
at android.app.ContextImpl.getSystemService(ContextImpl.java:2036)
at android.content.ContextWrapper.getSystemService(ContextWrapper.java:551)
Run Code Online (Sandbox Code Playgroud)

你看过这个问题吗?有什么办法可以解决吗?

谢谢,迭戈.

You*_*Kim 0

连接服务为空。

public ConnectivityManager(Context context, IConnectivityManager service) {
    mContext = checkNotNull(context, "missing context");
    mService = checkNotNull(service, "missing IConnectivityManager");
    sInstance = this;
}
Run Code Online (Sandbox Code Playgroud)

请检查您的设备上是否正在运行连接服务。

adb shell service list | grep connectivity
13      connectivity_metrics_logger: [android.net.IConnectivityMetricsLogger]
64      connectivity: [android.net.IConnectivityManager]
Run Code Online (Sandbox Code Playgroud)