小编Pra*_*war的帖子

带圆角的Android CardView显示灰色边角

我正在布局中使用CardView对自定义布局进行充气.圆角按预期显示,但我也在角落后面得到灰色背景.

代码很简单,使用带有圆角半径和背景颜色的CardView.我试过设置透明背景但不起作用.但是,如果我设置另一个不透明的颜色,它将显示在角落中.

代码附后.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/transparent">

    <android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:cardBackgroundColor="@android:color/white"
        app:cardCornerRadius="6dp"
        app:cardElevation="5dp">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@android:color/transparent">

            <TextView
                android:id="@+id/tvProgress"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:layout_centerVertical="true"
                android:layout_toLeftOf="@+id/ivIcon"
                android:layout_toStartOf="@+id/ivIcon"
                android:background="@android:color/transparent"
                android:padding="@dimen/elementPaddingSmall"
                android:text="Initial Discussion"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textColor="@android:color/black" />

            <ImageView
                android:id="@+id/ivIcon"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_alignParentEnd="true"
                android:layout_alignParentRight="true"
                android:background="@color/lightBrown"
                android:scaleType="centerInside"
                android:src="@drawable/ic_checkmark_circle" />
        </RelativeLayout>


    </android.support.v7.widget.CardView>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

android material-design android-cardview

17
推荐指数
2
解决办法
1万
查看次数

Android WorkManager 不会触发两个预定的工作人员之一

我的应用程序中安排了两个定期工作人员,其中一个工作人员在 24 小时后重复,另一个在 15 分钟后重复。

最初在全新安装时,事情按预期工作,但几天后我在 2 台设备上遇到了问题(共 5 台)。24 小时工人被正确触发,但 15 分钟工人根本没有被触发。我现在已经监视了 24 小时。

我通过 Stetho 查看了 workmanager 的数据库,看到了一些 24 小时工人的条目和 15 分钟工人的 0 个条目。我在WorkSpec桌子上找。

我通过 Android Studio 进行了调试,在使用 WorkManager 查询之后,getWorkInfosByTag()我得到了 15 分钟工作人员的 80 个对象列表,其中 79 个处于CANCELED状态,一个处于ENQUEUED状态。

很明显,取消的工人没有添加到数据库中?

我没有找到任何来自谷歌的文件来解释工人被取消的情况。

我正在使用1.0.0-beta03工作运行时的版本。此外,我没有杀死应用程序或做任何有趣的事情。该应用程序在后台运行,并没有被杀死。设备为小米 A2 (Android 9)、红米 Note 4(Android 7)。

我需要了解为什么工人被取消了,有没有更好的方法来调试这个?任何指针都会有所帮助和赞成!

谢谢。

Edit1:发布代码以安排两个工作人员。

24小时定期工:

public static synchronized void scheduleWork() {
    checkPreviousWorkerStatus();
    if (isWorking()) {
        Log.i("AppDataCleanupWorker", "Did not schedule data cleanup work; already running."); …
Run Code Online (Sandbox Code Playgroud)

android android-workmanager

7
推荐指数
1
解决办法
5916
查看次数

调试APK分发用于在Android L上构建并安装在Android K上时进行崩溃测试

所以我现在面对这个问题一段时间了.调试时我正在使用运行Android 5.1(L)的设备.当我完成后,我app-debug.apk从中获取/app/build/output/apk并通过Beta(由Fabric)将其转发给测试部门.

所以在测试人员方面,当安装在运行Android 4.4(K)的设备上时,应用程序在打开时会崩溃.这不是Fabric的问题,因为其他渠道如松弛,电子邮件等也会发生同样的事情.

如果我在运行Android K的模拟器上再次构建应用程序并发送apk,它将在测试设备上正常运行.是的,应用程序在运行Android 4.4的多个设备上崩溃了.

我在SO上找不到与此有关的内容,所以想想把它放好.这是Android Studio的已知问题还是我错过了什么?

我正在使用:

  • Android Studio V2.1.3
  • 闵.SDK版本15
  • 目标SDK版本23
  • 编译的SDK版本23
  • 构建工具版本24.0.2

如果这不是一个错误,这是否意味着我们必须在较低的Android版本上生成签名的apk,以便它可以在所有设备上运行?

有谁知道这个问题?

更新: Android K上崩溃的版本在Android L及更高版本上运行正常.

更新:我能够获得Logcat:

FATAL EXCEPTION: mainProcess: com.myapp.qa, PID: 3570 java.lang.RuntimeException: Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication: java.lang.ClassNotFoundException: Didn't find class "com.android.tools.fd.runtime.BootstrapApplication" on path: DexPathList[[zip file "/data/app/com.myapp.qa-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.myapp.qa-2, /vendor/lib, /system/lib]]
    at android.app.LoadedApk.makeApplication(LoadedApk.java:516)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4317)
    at android.app.ActivityThread.access$1500(ActivityThread.java:135)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:136)
    at android.app.ActivityThread.main(ActivityThread.java:5017)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
    at dalvik.system.NativeStart.main(Native Method)
Caused …
Run Code Online (Sandbox Code Playgroud)

java android android-gradle-plugin android-multidex android-studio-2.1

1
推荐指数
1
解决办法
1499
查看次数