Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.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
地图在android中不起作用_Android_Google Maps_Android Emulator_Android Maps - Fatal编程技术网

地图在android中不起作用

地图在android中不起作用,android,google-maps,android-emulator,android-maps,Android,Google Maps,Android Emulator,Android Maps,我正在使用以下地图类在我的android应用程序中使用地图 package com.wglxy.example.dash1; import java.io.IOException; import java.util.List; import android.app.AlertDialog; import android.content.Intent; import android.location.Address; import android.location.Geocoder; imp

我正在使用以下地图类在我的android应用程序中使用地图

 package com.wglxy.example.dash1;

import java.io.IOException;
import java.util.List;

import android.app.AlertDialog;
import android.content.Intent;
import android.location.Address;
import android.location.Geocoder;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;

public class map extends MapActivity {

    private MapView mapview;
    private Geocoder geocoder;
    private Button map1;
    String[] myadd;
    private int len;
    private GeoPoint p;
    private MapController controller;
    private TextView helloText;
    private List<Address> addresses;
    private int i;
    private String[] mynames;
    private ImageButton info;
    private String[] citysearch7 = new String[1];
    private ImageButton search;
    private ImageButton home;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.map);

        Intent intent = getIntent();
        myadd = intent.getStringArrayExtra("strings");
        mynames = intent.getStringArrayExtra("names");
        info = (ImageButton) findViewById(R.id.info);
        search = (ImageButton) findViewById(R.id.search1);
        home = (ImageButton) findViewById(R.id.hom);
        len = myadd.length;
        System.out.println("Length=" + len);
        mapview = (MapView) findViewById(R.id.mapview);
        mapview.setBuiltInZoomControls(true);
        geocoder = new Geocoder(this);
    //  check();
        while (i != len) {
            try {
                System.out.println("Coming inside try catch and adress="
                        + myadd[i]);

                addresses = geocoder
                        .getFromLocationName(myadd[i].toString(), 1);

            } catch (IOException e) {
                System.out.println("Catching");
                e.printStackTrace();
            }

            if (addresses.size() > 0) {
                p = new GeoPoint((int) (addresses.get(0).getLatitude() * 1E6),
                        (int) (addresses.get(0).getLongitude() * 1E6));

                controller = mapview.getController();
                controller.setZoom(12);

                MapOverlay mapOverlay = new MapOverlay(map.this, p, mynames[i]);
                List<Overlay> listOfOverlays = mapview.getOverlays();
                listOfOverlays.add(mapOverlay);

                controller.animateTo(p, new Runnable() {
                    public void run() {
                        controller.setZoom(12);
                    }
                });
                mapview.invalidate();

            } else {
                AlertDialog.Builder adb = new AlertDialog.Builder(map.this);
                adb.setTitle("Google Map");
                adb.setMessage("Please Provide the Proper Place");
                adb.setPositiveButton("Close", null);
                adb.show();
            }
            i++;
        }

    }

    void check() {
        info.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                startActivity(new Intent(getApplicationContext(),
                        AboutActivity.class));
            }
        });
        home.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent intent = new Intent(getApplicationContext(), start.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
            }
        });
        search.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent intent = new Intent(getApplicationContext(),
                        search.class);
                startActivity(intent);
            }
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case R.id.bloodmenu:
            startActivity(new Intent(getApplicationContext(), search.class));
            break;
        case R.id.bankmenu:
            citysearch7[0] = "";
            Intent intent = new Intent(getApplicationContext(),
                    searchbank.class);
            intent.putExtra("search", citysearch7);
            startActivity(intent);
            break;
        case R.id.updatemenu:
            startActivity(new Intent(getApplicationContext(), update.class));
            break;
        case R.id.registermenu:
            Intent intent1 = new Intent(getApplicationContext(), register.class);
            Bundle b = new Bundle();
            b.putString("name", "");
            b.putString("house", "");
            b.putString("street", "");
            b.putString("city", "");
            b.putString("blood", "");
            b.putString("phone", "");
            b.putString("file", "register");
            intent1.putExtras(b);
            startActivity(intent1);
            break;
        }
        return true;
    }

    @Override
    protected boolean isRouteDisplayed() {
        // TODO Auto-generated method stub
        return false;
    }

}
请考虑我已经使用过的打印语句,谁能帮助我理解我的问题?我还更改了我的密钥并进行了更新,但没有成功。我的仿真器有什么问题吗?我也尝试过创建一个新的仿真器,但仍然不起作用。另外,我已经注释了调用check方法的行,如果我不注释它,是否有问题?
-请帮助…提前感谢。

您应该搜索错误。。您会发现许多类似的错误

中规定,如果没有找到任何匹配项,地理编码器可以返回null


在一个像弗兰肯斯坦提到的实际设备上试试。或者,如果您使用的是仿真器,请确保它使用google api。

如果您的最低SDK设置允许,请尝试在api level 7仿真器上运行,它应该可以正常工作,

com.wglxy.example.dash1.map.onCreatemap.java:75该行导致空指针。检查@blessenm第75行:如果addresses.size>0{AddrRess似乎为空…但是为什么?我尝试了你提供的链接,在下面的链接中我发现了我的确切问题。我尝试了comment21中给出的解决方案,但对我无效。你能建议我如何继续我的android应用程序开发吗?你的应用程序和代码还可以…只需实际运行一次即可l设备而不是emulatorI,它在实际设备上运行,但是你能给我建议一些模拟器的解决方案吗,因为我没有自己的实际设备。嗯……可能你必须尝试使用较低的android版本,如1.6emulator/project api level,我想它会工作的。我试图通过呃,eclipse,但它没有启动。它给出如下错误…emulator:错误:未知的皮肤名称'WVGA800'我不知道我的所有平台都已正确下载。
D/dalvikvm(  466): GC_FOR_MALLOC freed 8171 objects / 631112 bytes in 54ms

D/dalvikvm(  466): GC_FOR_MALLOC freed 6139 objects / 371288 bytes in 55ms

I/System.out(  466): Length=3

I/System.out(  466): Coming inside try catch and adress=Surya Nagar Agra

I/System.out(  466): Catching

W/System.err(  466): java.io.IOException: Service not Available

W/System.err(  466):    at android.location.Geocoder.getFromLocationName(Geocoder.java:159)

W/System.err(  466):    at com.wglxy.example.dash1.map.onCreate(map.java:68)

W/System.err(  466):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)

W/System.err(  466):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)

W/System.err(  466):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)

W/System.err(  466):    at android.app.ActivityThread.access$2300(ActivityThread.java:125)

W/System.err(  466):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)

W/System.err(  466):    at android.os.Handler.dispatchMessage(Handler.java:99)

W/System.err(  466):    at android.os.Looper.loop(Looper.java:123)

W/System.err(  466):    at android.app.ActivityThread.main(ActivityThread.java:4627)

W/System.err(  466):    at java.lang.reflect.Method.invokeNative(Native Method)

W/System.err(  466):    at java.lang.reflect.Method.invoke(Method.java:521)

W/System.err(  466):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)

W/System.err(  466):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)

W/System.err(  466):    at dalvik.system.NativeStart.main(Native Method)

D/AndroidRuntime(  466): Shutting down VM

W/dalvikvm(  466): threadid=1: thread exiting with uncaught exception (group=0x4001d800)

E/AndroidRuntime(  466): FATAL EXCEPTION: main

E/AndroidRuntime(  466): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.wglxy.example.dash1/com.wglxy.example.dash1.map}: java.lang.NullPointerException

E/AndroidRuntime(  466):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)

E/AndroidRuntime(  466):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)

E/AndroidRuntime(  466):    at android.app.ActivityThread.access$2300(ActivityThread.java:125)

E/AndroidRuntime(  466):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)

E/AndroidRuntime(  466):    at android.os.Handler.dispatchMessage(Handler.java:99)

E/AndroidRuntime(  466):    at android.os.Looper.loop(Looper.java:123)

E/AndroidRuntime(  466):    at android.app.ActivityThread.main(ActivityThread.java:4627)

E/AndroidRuntime(  466):    at java.lang.reflect.Method.invokeNative(Native Method)

E/AndroidRuntime(  466):    at java.lang.reflect.Method.invoke(Method.java:521)

E/AndroidRuntime(  466):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)

E/AndroidRuntime(  466):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)

E/AndroidRuntime(  466):    at dalvik.system.NativeStart.main(Native Method)

E/AndroidRuntime(  466): Caused by: java.lang.NullPointerException

E/AndroidRuntime(  466):    at com.wglxy.example.dash1.map.onCreate(map.java:75)

E/AndroidRuntime(  466):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)

E/AndroidRuntime(  466):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)

E/AndroidRuntime(  466):    ... 11 more

W/ActivityManager(   70):   Force finishing activity com.wglxy.example.dash1/.map

W/ActivityManager(   70):   Force finishing activity com.wglxy.example.dash1/.search

W/ActivityManager(   70): Activity pause timeout for HistoryRecord{44efd6a8 com.wglxy.example.dash1/.map}

W/ActivityManager(   70): Launch timeout has expired, giving up wake lock!

W/ActivityManager(   70): Activity idle timeout for HistoryRecord{44ed9bb8 com.wglxy.example.dash1/.start}

W/ActivityManager(   70): Activity destroy timeout for HistoryRecord{44edc6e8 com.wglxy.example.dash1/.search}

W/ActivityManager(   70): Activity destroy timeout for HistoryRecord{44efd6a8 com.wglxy.example.dash1/.map}

D/dalvikvm(  275): GC_EXPLICIT freed 1903 objects / 139672 bytes in 196ms

D/dalvikvm(  407): GC_EXPLICIT freed 119 objects / 9440 bytes in 130ms

D/dalvikvm(  416): GC_EXPLICIT freed 635 objects / 50232 bytes in 145ms

D/dalvikvm(  196): GC_EXPLICIT freed 808 objects / 45672 bytes in 176ms