mapbox / mapbox/mapbox-navigation-android-examples

Android Examples: Bitmap too large

Ouverte
#40 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

jira-sync-complete
Langage dominant
Kotlin
Étoiles
65
Forks
56
Merge moyen
1 j 4 h
PR mergées (30 j)
2

Description

Samsung Galaxy S7, Android 8.0.0. App crashes when trying to bind the following bitmaps:

mapbox_screenshot_basic_camera.jpg
mapbox_screenshot_fetch_a_route.jpg
mapbox_screenshot_tbt_experience.jpg

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.mapbox.navigation.examples, PID: 1482
java.lang.RuntimeException: Canvas: trying to draw too large(241459200bytes) bitmap.
    at android.view.DisplayListCanvas.throwIfCannotDraw(DisplayListCanvas.java:229)
    at android.view.RecordingCanvas.drawBitmap(RecordingCanvas.java:97)
    at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:529)
    at android.widget.ImageView.onDraw(ImageView.java:1367)
    at android.view.View.draw(View.java:20373)
    at android.view.View.updateDisplayListIfDirty(View.java:19318)
    at android.view.View.draw(View.java:20096)
    at android.view.ViewGroup.drawChild(ViewGroup.java:4421)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4207)
    at androidx.constraintlayout.widget.ConstraintLayout.dispatchDraw(ConstraintLayout.java:1975)
    at android.view.View.updateDisplayListIfDirty(View.java:19309)
    at android.view.View.draw(View.java:20096)
    at android.view.ViewGroup.drawChild(ViewGroup.java:4421)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4207)
    at android.view.View.draw(View.java:20376)
    at android.view.View.updateDisplayListIfDirty(View.java:19318)
    at android.view.View.draw(View.java:20096)
    at android.view.ViewGroup.drawChild(ViewGroup.java:4421)
    at androidx.recyclerview.widget.RecyclerView.drawChild(RecyclerView.java:5030)
    at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4207)
    at android.view.View.draw(View.java:20376)
    at androidx.recyclerview.widget.RecyclerView.draw(RecyclerView.java:4429)
    at android.view.View.updateDisplayListIfDirty(View.java:19318)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4405)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4385)
    at android.view.View.updateDisplayListIfDirty(View.java:19277)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4405)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4385)
    at android.view.View.updateDisplayListIfDirty(View.java:19277)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4405)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4385)
    at android.view.View.updateDisplayListIfDirty(View.java:19277)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4405)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4385)
    at android.view.View.updateDisplayListIfDirty(View.java:19277)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4405)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4385)
    at android.view.View.updateDisplayListIfDirty(View.java:19277)
    at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4405)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4385)
    at android.view.View.updateDisplayListIfDirty(View.java:19277)
    at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:686)
    at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:692)
    at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:800)
    at android.view.ViewRootImpl.draw(ViewRootImpl.java:3496)
    at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:3283)
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2818)
    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1780)
    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7827)
    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)
    at android.view.Choreographer.doCallbacks(Choreographer.java:723)
    at android.view.Choreographer.doFrame(Choreographer.java:658)
    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897)
    at android.os.Handler.handleCallback(Handler.java:789)
    at android.os.Handler.dispatchMessage(Handler.java:98)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6944)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par localiser les trois ressources bitmap nommées : mapbox_screenshot_basic_camera.jpg, mapbox_screenshot_fetch_a_route.jpg et mapbox_screenshot_tbt_experience.jpg, puis reproduisez l’exemple sur la configuration Android signalée, si elle est disponible. C’est terminé lorsque les exemples peuvent lier et dessiner ces images sans le crash lié aux bitmaps volumineux signalé.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
android, kotlin
Domaine
mobile
Type d'issue
Bug
Difficulté
2/5
Temps estimé
1-3 heures
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.