MapView适用于模拟器,但不适用于手机
问题描述:
我在我的应用程序中正确安装了google map api,所有工作都可以正常使用模拟器。但是,当我将它传输到我的手机时,它不再工作(有那个网格的东西),我找不到错在哪里。MapView适用于模拟器,但不适用于手机
public class Main extends MapActivity {
/** Called when the activity is first created. */
MapView map ;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
map = (MapView)findViewById(R.id.mapview);
map.setSatellite(true);
List<Overlay> mapOverlays = map.getOverlays();
Drawable drawable = this.getResources().getDrawable(R.drawable.pins);
HelloItem itemizedoverlay = new HelloItem(drawable, this);
GeoPoint point = new GeoPoint(19240000,-99120000);
OverlayItem overlayitem = new OverlayItem(point, "Hola, Mundo!", "I'm in Mexico City!");
itemizedoverlay.addOverlay(overlayitem);
mapOverlays.add(itemizedoverlay);
map.setBuiltInZoomControls(true);
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}
public class HelloItem extends ItemizedOverlay {
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
private Context mContext;
public HelloItem(Drawable defaultMarker) {
super(boundCenterBottom(defaultMarker));
}
public HelloItem(Drawable defaultMarker, Context context) {
super(boundCenterBottom(defaultMarker));
mContext = context;
}
@Override
protected OverlayItem createItem(int i) {
// TODO Auto-generated method stub
return mOverlays.get(i);
}
public void addOverlay(OverlayItem overlay) {
mOverlays.add(overlay);
populate();
}
@Override
public int size() {
return mOverlays.size();
}
protected boolean onTap(int index) {
OverlayItem item = mOverlays.get(index);
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
dialog.setTitle(item.getTitle());
dialog.setMessage(item.getSnippet());
dialog.show();
return true;
}
}
答
这是因为你需要使用不同的.keystore,一个是仿真器(调试),一个是设备(释放)。当您从Google获取您的debug.keystore MD5 & Map API密钥时,请遵循相同的步骤。这次您需要为your_own.keystore获取这两个信息,这是用于在设备上发布的信息。然后在地图布局中更改地图API密钥,地图将显示在您的设备上。
这是一个重复的问题。看到类似的问题:http://*.com/questions/1809507/android-hello-mapview-tutorial-map-tiles-do-not-load – Brian 2011-03-31 14:33:50
我做了所有这一切,它与日食,但不是在我的手机上正常工作。 – Tsunaze 2011-03-31 14:37:17
缺少互联网连接? – 2red13 2011-03-31 14:39:18