Android 应用程序AcharEngine已意外停止。请再试一次
我刚刚尝试使用achartengine演示,但每次单击某个内容以显示图表时,都会出现一个错误,显示“achartengine应用程序意外停止。请重试”。有人知道我该怎么做?我遵循本页中建议的说明,使用api级别为7的仿真器标准。我有以下错误:Android 应用程序AcharEngine已意外停止。请再试一次,android,achartengine,Android,Achartengine,我刚刚尝试使用achartengine演示,但每次单击某个内容以显示图表时,都会出现一个错误,显示“achartengine应用程序意外停止。请重试”。有人知道我该怎么做?我遵循本页中建议的说明,使用api级别为7的仿真器标准。我有以下错误: 04-15 09:08:43.285: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org
04-15 09:08:43.285: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.AverageTemperatureChart.execute
04-15 09:08:43.325: E/dalvikvm(333): Could not find class 'org.achartengine.model.XYSeries', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.addXYSeries
04-15 09:08:43.345: E/dalvikvm(333): Could not find class 'org.achartengine.model.XYMultipleSeriesDataset', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildBarDataset
04-15 09:08:43.387: E/dalvikvm(333): Could not find class 'org.achartengine.renderer.XYMultipleSeriesRenderer', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildBarRenderer
04-15 09:08:43.395: E/dalvikvm(333): Could not find class 'org.achartengine.model.CategorySeries', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildCategoryDataset
04-15 09:08:43.425: E/dalvikvm(333): Could not find class 'org.achartengine.renderer.DefaultRenderer', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildCategoryRenderer
04-15 09:08:43.425: E/dalvikvm(333): Could not find class 'org.achartengine.model.XYMultipleSeriesDataset', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildDataset
04-15 09:08:43.445: E/dalvikvm(333): Could not find class 'org.achartengine.model.XYMultipleSeriesDataset', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildDateDataset
04-15 09:08:43.445: E/dalvikvm(333): Could not find class 'org.achartengine.model.MultipleCategorySeries', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildMultipleCategoryDataset
04-15 09:08:43.485: E/dalvikvm(333): Could not find class 'org.achartengine.renderer.XYMultipleSeriesRenderer', referenced from method org.achartengine.chartdemo.demo.chart.AbstractDemoChart.buildRenderer
04-15 09:08:43.525: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.AverageCubicTemperatureChart.execute
04-15 09:08:43.545: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.TrigonometricFunctionsChart.execute
04-15 09:08:43.555: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.ScatterChart.execute
04-15 09:08:43.555: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.SalesComparisonChart.execute
04-15 09:08:43.565: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.ProjectStatusChart.execute
04-15 09:08:43.576: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.SalesGrowthChart.execute
04-15 09:08:43.595: E/dalvikvm(333): Could not find class 'org.achartengine.model.XYMultipleSeriesDataset', referenced from method org.achartengine.chartdemo.demo.chart.ProjectStatusBubbleChart.execute
04-15 09:08:43.606: E/dalvikvm(333): Could not find class 'org.achartengine.model.XYMultipleSeriesDataset', referenced from method org.achartengine.chartdemo.demo.chart.TemperatureChart.execute
04-15 09:08:43.606: E/dalvikvm(333): Could not find class 'org.achartengine.model.CategorySeries', referenced from method org.achartengine.chartdemo.demo.chart.WeightDialChart.execute
04-15 09:08:43.615: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.SensorValuesChart.execute
04-15 09:08:43.615: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.CombinedTemperatureChart.execute
04-15 09:08:43.626: E/dalvikvm(333): Could not find class '[Lorg.achartengine.chart.PointStyle;', referenced from method org.achartengine.chartdemo.demo.chart.MultipleTemperatureChart.execute
04-15 09:13:51.145: E/AndroidRuntime(333): Uncaught handler: thread main exiting due to uncaught exception
04-15 09:13:51.155: E/AndroidRuntime(333): java.lang.NoClassDefFoundError: [Lorg.achartengine.chart.PointStyle;
04-15 09:13:51.155: E/AndroidRuntime(333): at org.achartengine.chartdemo.demo.chart.AverageTemperatureChart.execute(AverageTemperatureChart.java:72)
04-15 09:13:51.155: E/AndroidRuntime(333): at org.achartengine.chartdemo.demo.ChartDemo.onListItemClick(ChartDemo.java:102)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.app.ListActivity$2.onItemClick(ListActivity.java:312)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.widget.AdapterView.performItemClick(AdapterView.java:284)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.widget.ListView.performItemClick(ListView.java:3285)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.widget.AbsListView$PerformClick.run(AbsListView.java:1640)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.os.Handler.handleCallback(Handler.java:587)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.os.Handler.dispatchMessage(Handler.java:92)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.os.Looper.loop(Looper.java:123)
04-15 09:13:51.155: E/AndroidRuntime(333): at android.app.ActivityThread.main(ActivityThread.java:4363)
04-15 09:13:51.155: E/AndroidRuntime(333): at java.lang.reflect.Method.invokeNative(Native Method)
04-15 09:13:51.155: E/AndroidRuntime(333): at java.lang.reflect.Method.invoke(Method.java:521)
04-15 09:13:51.155: E/AndroidRuntime(333): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
04-15 09:13:51.155: E/AndroidRuntime(333): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
04-15 09:13:51.155: E/AndroidRuntime(333): at dalvik.system.NativeStart.main(Native Method)
04-15 09:13:51.175: E/dalvikvm(333): Unable to open stack trace file '/data/anr/traces.txt': Permission denied
如果您想知道achartengine是如何工作的,那么将achartengine 0.7.0 jar添加到libs文件夹中,并将其与您的项目链接。下面还有这些活动
public class GeneratedChartDemo extends ListActivity {
private static final int SERIES_NR = 2;
private String[] mMenuText;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// I know, I know, this should go into strings.xml and accessed using
// getString(R.string....)
mMenuText = new String[] { "Line chart", "Scatter chart", "Time chart", "Bar chart" };
setListAdapter(new SimpleAdapter(this, getListValues(), android.R.layout.simple_list_item_1,
new String[] { "name"}, new int[] { android.R.id.text1 }));
}
private List<Map<String, String>> getListValues() {
List<Map<String, String>> values = new ArrayList<Map<String, String>>();
int length = mMenuText.length;
for (int i = 0; i < length; i++) {
Map<String, String> v = new HashMap<String, String>();
v.put("name", mMenuText[i]);
values.add(v);
}
return values;
}
private XYMultipleSeriesDataset getDemoDataset() {
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
final int nr = 10;
Random r = new Random();
for (int i = 0; i < SERIES_NR; i++) {
XYSeries series = new XYSeries("Demo series " + (i + 1));
for (int k = 0; k < nr; k++) {
series.add(k, 20 + r.nextInt() % 100);
}
dataset.addSeries(series);
}
return dataset;
}
private XYMultipleSeriesDataset getDateDemoDataset() {
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
final int nr = 10;
long value = new Date().getTime() - 3 * TimeChart.DAY;
Random r = new Random();
for (int i = 0; i < SERIES_NR; i++) {
TimeSeries series = new TimeSeries("Demo series " + (i + 1));
for (int k = 0; k < nr; k++) {
series.add(new Date(value + k * TimeChart.DAY / 4), 20 + r.nextInt() % 100);
}
dataset.addSeries(series);
}
return dataset;
}
private XYMultipleSeriesDataset getBarDemoDataset() {
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
final int nr = 10;
Random r = new Random();
for (int i = 0; i < SERIES_NR; i++) {
CategorySeries series = new CategorySeries("Demo series " + (i + 1));
for (int k = 0; k < nr; k++) {
series.add(100 + r.nextInt() % 100);
}
dataset.addSeries(series.toXYSeries());
}
return dataset;
}
private XYMultipleSeriesRenderer getDemoRenderer() {
XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
renderer.setAxisTitleTextSize(16);
renderer.setChartTitleTextSize(20);
renderer.setLabelsTextSize(15);
renderer.setLegendTextSize(15);
renderer.setPointSize(5f);
renderer.setMargins(new int[] {20, 30, 15, 0});
XYSeriesRenderer r = new XYSeriesRenderer();
r.setColor(Color.BLUE);
r.setPointStyle(PointStyle.SQUARE);
r.setFillBelowLine(true);
r.setFillBelowLineColor(Color.WHITE);
r.setFillPoints(true);
renderer.addSeriesRenderer(r);
r = new XYSeriesRenderer();
r.setPointStyle(PointStyle.CIRCLE);
r.setColor(Color.GREEN);
r.setFillPoints(true);
renderer.setXLabels(0);
renderer.addXTextLabel(1, "aga");
renderer.addXTextLabel(2, "agar");
renderer.addSeriesRenderer(r);
renderer.setAxesColor(Color.DKGRAY);
renderer.setLabelsColor(Color.LTGRAY);
return renderer;
}
public XYMultipleSeriesRenderer getBarDemoRenderer() {
XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
renderer.setAxisTitleTextSize(16);
renderer.setChartTitleTextSize(20);
renderer.setLabelsTextSize(15);
renderer.setLegendTextSize(15);
renderer.setMargins(new int[] {20, 30, 15, 0});
SimpleSeriesRenderer r = new SimpleSeriesRenderer();
r.setColor(Color.BLUE);
renderer.addSeriesRenderer(r);
r = new SimpleSeriesRenderer();
r.setColor(Color.GREEN);
renderer.addSeriesRenderer(r);
return renderer;
}
private void setChartSettings(XYMultipleSeriesRenderer renderer) {
renderer.setChartTitle("Chart demo");
renderer.setXTitle("x values");
renderer.setYTitle("y values");
renderer.setXAxisMin(0);
renderer.setXAxisMax(5);
renderer.setYAxisMin(0);
renderer.setYAxisMax(250);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
switch (position) {
case 0:
Intent intent = ChartFactory.getLineChartIntent(this, getDemoDataset(), getDemoRenderer());
startActivity(intent);
break;
case 1:
intent = ChartFactory.getScatterChartIntent(this, getDemoDataset(), getDemoRenderer());
startActivity(intent);
break;
case 2:
intent = ChartFactory.getTimeChartIntent(this, getDateDemoDataset(), getDemoRenderer(), null);
startActivity(intent);
break;
case 3:
XYMultipleSeriesRenderer renderer = getBarDemoRenderer();
setChartSettings(renderer);
intent = ChartFactory.getBarChartIntent(this, getBarDemoDataset(), renderer, Type.DEFAULT);
startActivity(intent);
break;
}
}
}
public类GeneratedChartDemo扩展了ListActivity{
专用静态最终整数系列\u NR=2;
私有字符串[]mMenuText;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
//我知道,我知道,这应该进入strings.xml并使用
//getString(R.string…)
mMenuText=新字符串[]{“折线图”、“散点图”、“时间图”、“条形图”};
setListAdapter(新的SimpleAdapter(此,getListValues(),android.R.layout.simple\u列表\u项\u 1,
新字符串[]{“name”},新int[]{android.R.id.text1});
}
私有列表getListValues(){
列表值=新的ArrayList();
int length=mMenuText.length;
for(int i=0;i
有关此问题的解决方案,请参见此:
丹
引述:
在Eclipse中:
->右键单击项目-转到生成路径-选择配置生成路径
->转到“订单和导出”选项卡
->选中“achartengine-1.0.0.jar”框,然后单击其名称
->把它向上移动,这样它就