gpt4 book ai didi

java - 无法在 android 5.1.1 中加载带有标记的 map

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

我开发了一个 Android 应用程序,其中有一个 map ,上面显示标记和一些信息(需要 android 4.0.3 及更高版本)。

在发布之前,我在大多数 Android 操作系统(从 4.0.3 到 5)中测试了我的应用程序,没有遇到任何问题。今天,我尝试在带有 NEXUS 7 google 和 Android 版本 5.1.1 的平板电脑设备中安装我发布的应用程序(来自 Play 商店)。该应用程序根本不加载我的地​​图,消息显示为“应用程序已停止”。

我在 NEXUS 7 平板电脑中尝试了我的应用程序的较旧私有(private)版本(在 Debug模式下),并且成功,唯一的区别是我不显示 toast 消息。 Toast 消息指示用户设备中的连接是否可用。加载 map 时,此消息会显示在用户的屏幕上,以通知用户是否已连接到互联网。请找到下面的代码:

ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

//mobile
NetworkInfo.State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();

//wifi
NetworkInfo.State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();


if (mobile == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTED)
{
Toast.makeText(getApplicationContext(),"Connection available",Toast.LENGTH_LONG).show();
}
else
{
Toast.makeText(getApplicationContext(),"Connection not available",Toast.LENGTH_LONG).show();
}

我遇到的问题真的与 toast 有关吗? NEXUS 7 设备是否阻止连接管理器从设备读取 wi-fi 或 3G 状态的任何尝试?那么问题是否与设备上应用的安全配置有关?您能帮我解决这个问题吗?

更新代码:

    ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

if (conMan != null) {
//mobile
NetworkInfo.State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();

//wifi
NetworkInfo.State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();


if (mobile == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTED)
{
Toast.makeText(getApplicationContext(),"Connection available",Toast.LENGTH_LONG).show();
}
else
{
Toast.makeText(getApplicationContext(),"Connection not available",Toast.LENGTH_LONG).show();
}
} // end if
else
{ //do nothing
}

最佳答案

conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE)添加空检查和conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI) , getNetworkInfo如果设备不支持连接类型,则返回 null。

来自 API 文档

a NetworkInfo object for the requested network type or null if the type is not supported by the device.

我猜测 Nexus 7 不支持 SIM 卡,因为它可能会抛出 NullPointerException。

关于java - 无法在 android 5.1.1 中加载带有标记的 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30213627/

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