質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.33%

  • Android

    6748questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

AndroidでViewを4000個addViewすると落ちるのでオーバーフローする閾値を変更したい

受付中

回答 1

投稿

  • 評価
  • クリップ 2
  • VIEW 241

amery

score 99

タイトルの通りですが、
▼やりたいこと
xml定義されたViewを4000個ScrollViewにaddViewしたいです。
4000回inflateするViewの構成は以下の通りです。

  • LinearLayout 6個
  • TextView 2個
  • ImageView 2個

▼エラー

06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427] JNI ERROR (app bug): weak global reference table overflow (max=51200)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427] weak global reference table dump:
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]   Last 10 entries (of 51200):
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51199: 0x17d1b178 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51198: 0x17d1b160 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51197: 0x17d1b148 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51196: 0x17d1b088 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51195: 0x17d10f58 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51194: 0x17d10e98 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51193: 0x17d10df0 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51192: 0x17d10dd8 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51191: 0x17d10dc0 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51190: 0x17d10da8 android.view.RenderNode
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]   Summary:
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of com.google.android.gms.dynamite.zzg
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of ad
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of java.lang.Thread
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         3 of byte[] (576 elements) (3 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         3 of byte[] (2200 elements) (3 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (3072 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         5 of byte[] (4096 elements) (5 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         4 of byte[] (4480 elements) (4 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (7680 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         9 of byte[] (9216 elements) (9 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]        27 of byte[] (11664 elements) (27 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         2 of byte[] (15376 elements) (2 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         2 of byte[] (15488 elements) (2 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]        14 of byte[] (16384 elements) (14 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         3 of byte[] (20736 elements) (3 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         2 of byte[] (21120 elements) (2 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         3 of byte[] (35328 elements) (3 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         3 of byte[] (36864 elements) (3 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         2 of byte[] (46080 elements) (2 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         4 of byte[] (49600 elements) (4 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (80400 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (112896 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         5 of byte[] (119716 elements) (5 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         6 of byte[] (123904 elements) (6 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (144400 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (160000 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (232320 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (246016 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (278784 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (291600 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (404496 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (409600 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (440896 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (553344 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         2 of byte[] (577600 elements) (2 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (719680 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (1725440 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (2919456 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (3456000 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         1 of byte[] (8640000 elements)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         2 of byte[] (13307904 elements) (2 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]         7 of dalvik.system.PathClassLoader (4 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]        60 of java.lang.DexCache (60 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427]     51010 of android.view.RenderNode (51010 unique instances)
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427] 
06-19 13:45:52.757 17071-17071/xx.xx.xxxxxx.xxxx A/art: art/runtime/runtime.cc:427] 
06-19 13:45:52.821 17071-17071/xx.xx.xxxxxx.xxxx A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 17071 (.xx.xxxx.xxxx)

                                                         [ 06-19 13:45:52.845   438:  438 W/         ]
                                                         debuggerd: handling request: pid=17071 uid=10349 gid=10349 tid=17071

▼やってみたと
メモリ不足だと思ってappのbuild.gradleに以下を追加しましたが変わりませんでした。

    dexOptions {
        javaMaxHeapSize "4g"
    }


▼環境
android studio 2.3.3
min sdk 21
target sdk 25
compile sdk 25

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • maisumakun

    2018/06/19 14:14

    1画面に4000個も表示しきれないでしょうし、正攻法でやるより「RecyclerViewなどを使って、表示数自体を節約する」という方が合理的だと思われますが、どうしても「4000個をaddViewする」方法でやらないといけない理由はありますでしょうか。

    キャンセル

  • amery

    2018/06/19 14:26

    「どうしても」ということではありませんが、要件はマスタデータを4000件表示する処理で今までは数が少なかったので、起こらなかった問題です。既存処理をすべて生かしたいので、できるだけaddViewする方法でお願いしたいです。

    キャンセル

回答 1

+1

大量にデータがある場合は、RecyclerViewなどを使って
リソースの消費を抑えた方が幸せになれると思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

同じタグがついた質問を見る

  • Android

    6748questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。