2011-01-13 16 views
1

私は開発者サイトでHello MapViewチュートリアルに従い、うまく動作しています。しかし、今私は約150のマーカーを追加するためにそれを拡張する必要があり、私の現在のメソッドは、私のアプリをクラッシュさせます。MapViewに複数のマークを追加する方法 - 100以上

理由:keyDispatchingTimedOut

次のように私のセットアップが..ですマップのデータと

四の文字列配列、すべてが持っている(と常にます)の正確な数が同じインデックスとFID [0] == fLatitude [0] == fLongitude [0] == fDetails [0]、など:今、これは私が地図上のポイントをプロットしていますどのようにあるのよう

String[] fId; 
    String[] fLatitude; 
    String[] fLongitude; 
    String[] fDetails; 

。地図がクラッシュし続けるため、これは明らかに正しい方法ではありません。

 List<Overlay> mapOverlays = mapView.getOverlays(); 
    Drawable drawable = this.getResources().getDrawable(R.drawable.androidmarker); 
    FriendItemizedOverlay itemizedoverlay = new FriendItemizedOverlay(drawable, mapView.getContext()); 

    for(int i=0;i<aLatitude.length;i++){ 

     Double intLon = Double.parseDouble(aLongitude[i]); 
     Double intLat = Double.parseDouble(aLatitude[i]); 

     GeoPoint point = new GeoPoint((int)(intLat * 1E6), 
       (int)(intLon * 1E6)); 
     OverlayItem overlayitem = new OverlayItem(point, "Friend ", "Something"); 

     itemizedoverlay.addOverlay(overlayitem); 
     mapOverlays.add(itemizedoverlay); 

    } 

これ以上の情報が必要な場合はお知らせください。ありがとうございます。

Logcat:

1月13日18:39:34.732:ERROR/MapActivity(1085):接続ファクトリクライアント取得できませんでした 1月13日18:40:14.473:ERROR/ActivityManager(69 ):原因:com.example.friendappのANR(com.example.friendapp/.FriendMaps) 01-13 18:40:14.473:エラー/アクティビティマネージャ(69):理由:keyDispatchingTimedOut 01-13 18:40:14.473:ERROR (69):ERROR/ActivityManager(69):6026msから0ms前のCPU使用率: 01-13 18:40:14.473:ERROR/ActivityManager(69):負荷:2.39/0.78/0.42 01-13 18:40:14.473: ActivityManager(69):93%1085/com.example.friendapp:ユーザー93%+ kernel/fa 0%システム・サーバー:1.8%ユーザー+ 0.8%カーネル/フォールト:3マイナー 01-13 18:40:14.473:ERROR /アクティビティー・マネージャー(69):エラー・アクティビティー・マネージャー/ ActivityManager(69):1.1%875/com.google.process.gapps:0%ユーザ+ 1.1%カーネル 01-13 18:40:14.473:ERROR/ActivityManager(69):1.1%980/com.android。 Quicksearchbox:0%ユーザー+カーネル1.1% 01-13 18:40:14.473:ERROR/ActivityManager(69):0.9%133/com.android.launcher:0%ユーザー+ 0.9%カーネル 01-13 18:40 :エラー/アクティビティマネージャ(69):0.1%40 /ユーザ:0%ユーザ+ 0.1%カーネル 01-13 18:40:14.473:ERROR/ActivityManager(69):100%合計:95%ユーザ+ 4.1%カーネル 01-13 ERROR/ActivityManager(69):CPU使用率が2192msから2863msへ: 01-13 18:40:14.473:ERROR/ActivityManager(69):80%1085/com.example.friendapp:80%ユーザ+ 0%カーネル/フォールト:3マイナー 01-13 18:40:14.473:ERROR/ActivityManager(69):77%1085/bile.friendapp:77%ユーザ+カーネル0% 01-13 18:40:14.473:ERROR/ActivityManager(69):16%69/system_server:4.8%ユーザー+カーネル11% 01-13 18:40:14.473:ERROR/ActivityManager(69):14%101/InputDispatcher:ユーザー3.2%+カーネル11% 01-13 18:40:14.473:ERROR/ActivityManager(69):1.6%70/HeapWorker:ユーザー1.6%+カーネル0% 01-13 18:40:14.473: ERROR/ActivityManager(69):0.5%133/com.android.launcher:0%ユーザー+カーネル0.5% 01-13 18:40:14.473:ERROR/ActivityManager(69):0.5%134/HeapWorker:ユーザー0% + 0.5%カーネル 01-13 18:40:14.473:ERROR/ActivityManager(69):0.6%980/com.android.quicksearchbox:0%ユーザー+ 0.6%カーネル 01-13 18:40:1 4.113:エラー/ ActivityManager(69):1.3%981/HeapWorker:ユーザー0%+カーネル1.3% 01-13 18:40:14.473:ERROR/ActivityManager(69):100%TOTAL:ユーザー80%+カーネル19% 01-13 18:40:20.702:ERROR/InputDispatcher(69):チャネル '406f88b8 com.example.friendapp/com.example。friendapp.FriendMaps(サーバー) '〜コンシューマーが入力チャネルをクローズしたか、エラーが発生しました。イベント= 0x8 01-13 18:40:20.712:ERROR/InputDispatcher(69):チャンネル '406f88b8 com.example.friendapp/com.example.friendapp.FriendMaps(server)'〜チャンネルは回復不能に壊れて処分されます!

+0

どのようにクラッシュしていますか?あなたのlogcatは何ですか。 – Falmarri

+0

@Falmarri - タグ - ActivityManager - com.example.friendsのANR、理由:keyDispatchingTimedOut ... – bMon

+0

あなたのlogcatの詳細を表示します。質問を編集し、関連するすべてのスタックトレースを含めます。 – Falmarri

答えて

0

マップに同じオーバーレイを150回追加しています。一度だけ追加してください。

+0

ありがとう、男だ。 – bMon

関連する問題