【问题标题】:Android App is running in other devices but not in Samsung Galaxy s8Android 应用程序在其他设备上运行,但在三星 Galaxy s8 中没有
【发布时间】:2019-01-16 04:13:40
【问题描述】:

我开发了一款名为“iVest”的 Android 应用。我几乎在每台设备上都运行过这个应用程序,而且运行良好。但是有三星 Galaxy s8 的人下载了它,并说“iVest 现在停止了”。为此,我在此处共享 google play 控制台日志。

java.lang.RuntimeException: 
  at android.view.DisplayListCanvas.throwIfCannotDraw (DisplayListCanvas.java:260)
  at android.graphics.Canvas.drawBitmap (Canvas.java:1420)
  at android.graphics.drawable.BitmapDrawable.draw (BitmapDrawable.java:545)
  at android.widget.ImageView.onDraw (ImageView.java:1286)
  at android.view.View.draw (View.java:18394)
  at android.view.View.updateDisplayListIfDirty (View.java:17372)
  at android.view.View.draw (View.java:18156)
  at android.view.ViewGroup.drawChild (ViewGroup.java:3969)
  at android.view.ViewGroup.dispatchDraw (ViewGroup.java:3755)
  at android.support.constraint.ConstraintLayout.dispatchDraw (ConstraintLayout.java:2023)
  at android.view.View.draw (View.java:18397)
  at android.view.View.updateDisplayListIfDirty (View.java:17372)
  at android.view.View.draw (View.java:18156)
  at android.view.ViewGroup.drawChild (ViewGroup.java:3969)
  at android.view.ViewGroup.dispatchDraw (ViewGroup.java:3755)
  at android.view.View.updateDisplayListIfDirty (View.java:17367)
  at android.view.View.draw (View.java:18156)
  at android.view.ViewGroup.drawChild (ViewGroup.java:3969)
  at android.view.ViewGroup.dispatchDraw (ViewGroup.java:3755)
  at android.view.View.updateDisplayListIfDirty (View.java:17367)
  at android.view.View.draw (View.java:18156)
  at android.view.ViewGroup.drawChild (ViewGroup.java:3969)
  at android.view.ViewGroup.dispatchDraw (ViewGroup.java:3755)
  at android.view.View.updateDisplayListIfDirty (View.java:17367)
  at android.view.View.draw (View.java:18156)
  at android.view.ViewGroup.drawChild (ViewGroup.java:3969)
  at android.view.ViewGroup.dispatchDraw (ViewGroup.java:3755)
  at android.view.View.updateDisplayListIfDirty (View.java:17367)
  at android.view.View.draw (View.java:18156)
  at android.view.ViewGroup.drawChild (ViewGroup.java:3969)
  at android.view.ViewGroup.dispatchDraw (ViewGroup.java:3755)
  at android.view.View.draw (View.java:18397)
  at com.android.internal.policy.DecorView.draw (DecorView.java:967)
  at android.view.View.updateDisplayListIfDirty (View.java:17372)
  at android.view.ThreadedRenderer.updateViewTreeDisplayList (ThreadedRenderer.java:722)
  at android.view.ThreadedRenderer.updateRootDisplayList (ThreadedRenderer.java:728)
  at android.view.ThreadedRenderer.draw (ThreadedRenderer.java:836)
  at android.view.ViewRootImpl.draw (ViewRootImpl.java:3181)
  at android.view.ViewRootImpl.performDraw (ViewRootImpl.java:2977)
  at android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2565)
  at android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:1550)
  at android.view.ViewRootImpl$TraversalRunnable.run (ViewRootImpl.java:7189)
  at android.view.Choreographer$CallbackRecord.run (Choreographer.java:959)
  at android.view.Choreographer.doCallbacks (Choreographer.java:734)
  at android.view.Choreographer.doFrame (Choreographer.java:670)
  at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:945)
  at android.os.Handler.handleCallback (Handler.java:751)
  at android.os.Handler.dispatchMessage (Handler.java:95)
  at android.os.Looper.loop (Looper.java:154)
  at android.app.ActivityThread.main (ActivityThread.java:6776)
  at java.lang.reflect.Method.invoke (Native Method)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1520)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1410)

我还分享了应用崩溃的屏幕布局xml:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".KnowICLHomePage"
    android:background="@drawable/customborder">

    <android.support.constraint.ConstraintLayout
        android:id="@+id/constraintLayout2"
        android:layout_width="0dp"
        android:layout_height="380dp"
        android:layout_marginStart="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginTop="12dp"
        android:layout_marginEnd="8dp"
        android:layout_marginRight="8dp"
        android:paddingLeft="30dp"
        android:paddingRight="30dp"
        android:paddingBottom="20dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/imageView5">

        <ImageButton
            android:id="@+id/button_about_icl"
            style="@android:style/Widget.DeviceDefault.ImageButton"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_marginStart="16dp"
            android:layout_marginLeft="16dp"
            android:layout_marginTop="32dp"
            android:background="@null"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:srcCompat="@drawable/about_us_button" />

        <ImageButton
            android:id="@+id/button_our_products"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_marginStart="40dp"
            android:layout_marginLeft="40dp"
            android:layout_marginTop="32dp"
            android:background="@null"
            app:layout_constraintStart_toEndOf="@+id/button_about_icl"
            app:layout_constraintTop_toTopOf="parent"
            app:srcCompat="@drawable/our_products_button" />

        <ImageButton
            android:id="@+id/button_fund_performance"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_marginStart="16dp"
            android:layout_marginLeft="16dp"
            android:layout_marginTop="20dp"
            android:background="@null"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/textView_button_about_icl"
            app:srcCompat="@drawable/fund_performance_button" />

        <ImageButton
            android:id="@+id/button_how_to_invest"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_marginStart="40dp"
            android:layout_marginLeft="40dp"
            android:layout_marginTop="20dp"
            android:background="@null"
            app:layout_constraintStart_toEndOf="@+id/button_fund_performance"
            app:layout_constraintTop_toBottomOf="@+id/textView_button_our_products"
            app:srcCompat="@drawable/how_to_invest_button" />

        <TextView
            android:id="@+id/textView_button_about_icl"
            android:layout_width="100dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="16dp"
            android:layout_marginLeft="16dp"
            android:text="@string/knowicl_about_icl"
            android:textAlignment="center"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/button_about_icl" />

        <TextView
            android:id="@+id/textView_button_our_products"
            android:layout_width="100dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="40dp"
            android:layout_marginLeft="40dp"
            android:text="@string/knowicl_our_products"
            android:textAlignment="center"
            app:layout_constraintStart_toEndOf="@+id/textView_button_about_icl"
            app:layout_constraintTop_toBottomOf="@+id/button_our_products" />

        <TextView
            android:id="@+id/textView_button_fund_performance"
            android:layout_width="100dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="16dp"
            android:layout_marginLeft="16dp"
            android:text="@string/knowicl_fund_performance"
            android:textAlignment="center"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/button_fund_performance" />

        <TextView
            android:id="@+id/textView_button_how_to_invest"
            android:layout_width="100dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="40dp"
            android:layout_marginLeft="40dp"
            android:text="@string/knowicl_how_to_invest"
            android:textAlignment="center"
            app:layout_constraintStart_toEndOf="@+id/textView_button_fund_performance"
            app:layout_constraintTop_toBottomOf="@+id/button_how_to_invest" />

    </android.support.constraint.ConstraintLayout>


    <ImageButton
        android:id="@+id/button_call_now_for_details"
        android:layout_width="40dp"
        android:layout_height="45dp"
        android:layout_marginStart="60dp"
        android:layout_marginLeft="60dp"
        android:layout_marginBottom="30dp"
        android:background="@null"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:srcCompat="@drawable/call_now_button" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="32dp"
        android:layout_marginLeft="32dp"
        android:text="@string/knowicl_button_call_now_for_details"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/button_call_now_for_details" />

    <ImageButton
        android:id="@+id/button_visit_us"
        android:layout_width="40dp"
        android:layout_height="45dp"
        android:layout_marginEnd="60dp"
        android:layout_marginRight="60dp"
        android:layout_marginBottom="30dp"
        android:background="@null"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:srcCompat="@drawable/find_us_on_map" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginEnd="32dp"
        android:layout_marginRight="32dp"
        android:text="@string/knowicl_visit_our_office"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/button_visit_us" />

    <ImageView
        android:id="@+id/imageView5"
        android:layout_width="120dp"
        android:layout_height="71dp"
        android:layout_marginStart="4dp"
        android:layout_marginLeft="4dp"
        android:layout_marginEnd="8dp"
        android:layout_marginRight="8dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.505"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@drawable/icl_logo" />

</android.support.constraint.ConstraintLayout>

感谢您的友好合作。

【问题讨论】:

  • 检查here
  • 您如何加载此屏幕的邮政编码?如果您没有将图像加载到图像视图中,只是drawable大于imageview并且需要调整为imageview的边界 - 我建议调整drawable / image的大小或使用像glide这样的库来照顾给你的

标签: android android-layout


【解决方案1】:

从您的错误日志中可以清楚地看到。

 at android.view.DisplayListCanvas.throwIfCannotDraw (DisplayListCanvas.java:260)
  at android.graphics.Canvas.drawBitmap (Canvas.java:1420)
  at android.graphics.drawable.BitmapDrawable.draw (BitmapDrawable.java:545)
  at android.widget.ImageView.onDraw (ImageView.java:1286)

您的图像文件的分辨率或大小可能太高。在屏幕上渲染图像视图时会产生问题。首先检查您在该 xml 文件中使用的所有图像,如果可能,您可以使该图像更小或为此自定义可绘制

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-14
    • 1970-01-01
    • 1970-01-01
    • 2018-07-24
    • 2017-08-18
    • 1970-01-01
    • 2018-06-26
    相关资源
    最近更新 更多