用ADT在做SuperMap iMobile的开发,写了一个只是打开地图的代码,出现了fatal signal 11的错误。
代码如下:
package com.example.supermapimobiledemo;
import com.supermap.data.Environment;
import com.supermap.data.Workspace;
import com.supermap.data.WorkspaceConnectionInfo;
import com.supermap.data.WorkspaceType;
import com.supermap.mapping.MapControl;
import com.supermap.mapping.MapView;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ZoomControls;
public class MainActivity extends Activity {
private MapControl m_mapControl = null;
private Workspace m_workspace;
private MapView m_mapView;
private ZoomControls m_zoom;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);//调用父类的onCreate构造函数,savedInstanceState是保存当前Activity的状态信息。
String rootPath = android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
//设置一些系统需要用到的路径
Environment.setLicensePath(rootPath + "/SuperMap/license/");
Environment.setTemporaryPath(rootPath + "/SuperMap/temp/");
Environment.setWebCacheDirectory(rootPath + "/SuperMap/WebCache/");
//组件功能必须在 Environment 初始化之后才能调用
Environment.initialization(this);
//如果机器中默认不包括需要显示的字体,可以把相关字体文件放在参数所代表的路径中。
//例如,如果需要显示阿拉伯文字(若机器中原先不包括相关字体文件),可以把需要的字体文件放在参数所代表的路径中。
Environment.setFontsPath(rootPath + "/SuperMap/fonts/");
setContentView(R.layout.activity_main); //设置当前的Activity显示的内容按main.xml布局
//打开工作空间
m_workspace=new Workspace();
WorkspaceConnectionInfo info = new WorkspaceConnectionInfo();
info.setServer(rootPath + "/SampleData/GeometryInfo/World.smwu");
info.setType(WorkspaceType.SMWU);
m_workspace.open(info);
//将地图显示控件和工作空间关联
m_mapView = (MapView)findViewById(R.id.Map_view);
m_mapControl = m_mapView.getMapControl();
m_mapControl.getMap().setWorkspace(m_workspace);
//打开地图
String mapName = m_workspace.getMaps().get(0);
m_mapControl.getMap().open(mapName);
m_zoom = (ZoomControls)findViewById(R.id.zoomControls1);
m_mapView = (MapView)findViewById(R.id.Map_view);
m_zoom.setIsZoomInEnabled(true);
m_zoom.setIsZoomOutEnabled(true);
//放大按钮
m_zoom.setOnZoomInClickListener(new OnClickListener(){
public void onClick(View v) {
m_mapControl.getMap().zoom(2);
m_mapControl.getMap().refresh();
}
});
//缩小按钮
m_zoom.setOnZoomOutClickListener(new OnClickListener(){
public void onClick(View v) {
m_mapControl.getMap().zoom(0.5);
m_mapControl.getMap().refresh();
}
});
m_mapControl.getMap().refresh();
}
}
报错情况如下:
刚上手android开发,从网上看到了许多程度比较深的分析解决方法,完全看不懂。求个简单易懂的解释和解决方法