Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 地图在OpenStreetMap(osm)中不可见_Java_Android_Api_Openstreetmap_Osmdroid - Fatal编程技术网

Java 地图在OpenStreetMap(osm)中不可见

Java 地图在OpenStreetMap(osm)中不可见,java,android,api,openstreetmap,osmdroid,Java,Android,Api,Openstreetmap,Osmdroid,我的目标是为android构建一个简单的应用程序。该应用程序需要一些来自OpenStreetMap(OSM)的地图数据。我决定在litle项目中使用osmdroid。现在我接近我想要看到的结果了,对我来说只有一个小困难。如果我现在尝试运行应用程序,则不会出现错误(异常或错误),但很遗憾,我没有看到地图: 我的猜测是,@Override public void onCreate()类中的命令行是必需的。但是,如果我删除命令行并将其设置为“real code”,则方法getInstance().l

我的目标是为android构建一个简单的应用程序。该应用程序需要一些来自OpenStreetMap(OSM)的地图数据。我决定在litle项目中使用osmdroid。现在我接近我想要看到的结果了,对我来说只有一个小困难。如果我现在尝试运行应用程序,则不会出现错误(异常或错误),但很遗憾,我没有看到地图:

我的猜测是,
@Override public void onCreate()
类中的命令行是必需的。但是,如果我删除命令行并将其设置为“real code”,则方法
getInstance().load(…)
会出现错误,因此我认为我的
配置
类有问题。没有建议我的代码查找/删除错误

这是我的MainActivity.java类:


import org.osmdroid.tileprovider.tilesource.TileSourceFactory;
import org.osmdroid.views.MapView;

import android.app.Activity;
import android.content.Context;
import android.content.res.Configuration;
import android.os.Bundle;
import android.preference.PreferenceManager;

import org.osmdroid.views.MapView;

public class MainActivity extends Activity {

    MapView map = null;
    @Override public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        Context ctx = getApplicationContext();
        //Configuration.getInstance().load(ctx, PreferenceManager.getDefaultSharedPreferences(ctx));

        setContentView(R.layout.activity_main);

        map = (MapView) findViewById(R.id.map);
        map.setTileSource(TileSourceFactory.MAPNIK);
    }

    public void onResume(){
        super.onResume();
        map.onResume();
    }

    public void onPause(){
        super.onPause();
        map.onPause();
    }

}```

我自己找到了安瑟。这个错误是错误的输入<代码>导入android.content.res.Configuration 这是正确的:
import org.osmdroid.config.Configuration
我的实际主要活动如下所示:


import org.osmdroid.api.IMapController;
import org.osmdroid.tileprovider.tilesource.TileSourceFactory;
import org.osmdroid.util.GeoPoint;
import org.osmdroid.views.MapView;

import android.app.Activity;
import android.content.Context;
import org.osmdroid.config.Configuration;
import android.os.Bundle;
import android.preference.PreferenceManager;


public class MainActivity extends Activity {

    MapView map = null;
    @Override public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        Context ctx = getApplicationContext();

        Configuration.getInstance().load(ctx, PreferenceManager.getDefaultSharedPreferences(ctx));


        setContentView(R.layout.activity_main);

        map = (MapView) findViewById(R.id.map);
        map.setTileSource(TileSourceFactory.MAPNIK);

        map.setBuiltInZoomControls(true);
        map.setMultiTouchControls(true);



        IMapController mapController = map.getController();
        mapController.setZoom(13);

        GeoPoint startPoint = new GeoPoint(52.516181, 13.376935);
        mapController.setCenter(startPoint);
    }

    public void onResume(){
        super.onResume();
        map.onResume();
    }

    public void onPause(){
        super.onPause();
        map.onPause();
    }



}```

您在
Configuration.getInstance().load()
处收到的确切错误是什么?
错误:找不到符号配置.getInstance().load(ctx,PreferenceManager.getDefaultSharedReferences(ctx))