我遇到连接管理器的问题:
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
我正在使用应用程序上下文,我收到此错误:
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)
你见过这个问题吗?有什么办法可以解决吗?
谢谢, 迭。
答案 0 :(得分:0)
连接服务为空。
public ConnectivityManager(Context context, IConnectivityManager service) {
mContext = checkNotNull(context, "missing context");
mService = checkNotNull(service, "missing IConnectivityManager");
sInstance = this;
}
请检查您的设备上是否正在运行连接服务。
adb shell service list | grep connectivity
13 connectivity_metrics_logger: [android.net.IConnectivityMetricsLogger]
64 connectivity: [android.net.IConnectivityManager]
答案 1 :(得分:0)
如果您遇到IconnectivityManager这样的问题,那么您可能会在某些时候或某些情况下将上下文设置为null。 因为您可能在上下文可能为null的服务中执行此操作,因此您可以执行以下操作:
if (context != null) {
ConnectivityManager cm =
(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
类似这样的&gt;&gt;