为什么包管理器总是为空?

时间:2015-11-13 08:46:28

标签: java android

我尝试在我的Android应用程序中显示用户位置,但它运行正常!包管理器始终为空。

private void openPrefredLocationInMap (){
    String location =
            PreferenceManager.getDefaultSharedPreferences(this)
                    .getString(getString(R.string.pref_location_key)
                            , getString(R.string.pref_defult));

    Uri geoLocation = Uri.parse("geo:0,0?").buildUpon()
            .appendQueryParameter("q", location).build();

    Intent intent= new Intent(Intent.ACTION_VIEW,geoLocation);
    if (intent.resolveActivity(getPackageManager()) != null)
        startActivity(intent);
     else
        Log.d("package","couldnt call"+location);
}

1 个答案:

答案 0 :(得分:4)

您的设备没有可以处理此类意图的应用程序。安装可以处理该意图的应用程序或自行创建。更具体地说,您可能没有能够显示geoLocation意图的地图应用程序。

例如,尝试安装Google地图。