2012-04-15 19 views
10

Sadece achartengine demosunu kullanmayı denedim, ancak grafiği göstermek için bir şeye tıkladığımda, "Uygulama AChartengine beklenmedik bir şekilde durdu. Lütfen tekrar deneyin" diyerek hata veriyor. Birisi bana nasıl yapılacağını söyler mi? Bu sayfa http://www.achartengine.org/content/goodies.html önerilen talimatları takip ve ben bu hataları var API seviyesi 7 ile bir emülatör standardını kullanın: daha sonra kütüphanelerini için achartengine 0.7.0 kavanoz eklemek nasıl achartengine çalışma öğrenmek istiyorsanızUygulama AChartengine beklenmedik bir şekilde durdu. Lütfen tekrar deneyiniz.

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 
+0

Bu tam günlük kedi ya da bence logcat hata günlüğünden bir şeyler kaçırıldığını düşünüyorum –

+0

haklısın, tüm günlük, şimdi yeniden gönderdiğim tek şey. – Shilaghae

+0

, yazdığınız ve achartengine jar dosyasını libs klasörüne eklediğiniz kodu nasıl kullandığınızı gösterebilir. –

cevap

41

buna bir çözüm için bu bakınız: http://groups.google.com/group/achartengine/browse_thread/thread/4cb1efddad3c19d0/2b59e5164e05c469#2b59e5164e05c469

Dan

Alıntı:

Eclipse

: -> Sağ Projenizi tıklayın - yol inşa gidin - Oluşturma yolunu yapılandır -> "Sipariş ve Verme" sekmesine gidin -> "achartengine-1.0.0 .jar kutusu ve sonra tek adını tıklayın -> için Android dependancies altında sağ ok sonra projenizi temizlemek

tıklayın (birden fazla Kavanoz varsa bazen bu bir fark yaratabilir) yukarı hareket ettirin. (Proje -> Temizleyin ...)

Yeniden çalıştırmayı deneyin ve yardımcı olup olmadığını görün.

+0

Teşekkürler, sadece teklifinizi kullandım ve sorunu düzeltdim - link için bonus puanları :) – fuzzyanalysis

+1

+1. ** Konudan: **, 'lib' ismiyle dizinde bulunuyorsa, bunu' libs' ya da başka bir şeye yeniden adlandırın ve yapı yolunu yeniden ekleyin. –

+1

Onu src'nin hemen altına taşıdım. Çalıştı .. Teşekkürler – Supun

1

klasör ve projenizle bağlantı kurmak da aşağıdaki aktivitelere sahiptir.

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; 
    } 
    } 
} 
İlgili konular