当前位置: 首页 > 知识库问答 >
问题:

当minifyEnable设置为true时,应用程序在特定布局上崩溃

慎俊雄
2023-03-14
-assumenosideeffects class android.util.Log {
    public static *** d(...);
}
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'

android {
    compileSdkVersion 28

    defaultConfig {
        applicationId "my.package.id"
        minSdkVersion 19
        targetSdkVersion 28
        versionCode 3
        versionName "0.3"
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
        vectorDrawables.useSupportLibrary = true
    }

    buildTypes {
        debug {
            minifyEnabled true
            debuggable true
        }
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
                    'proguard-rules.pro'
        }
    }
    compileOptions {
        targetCompatibility 1.8
        sourceCompatibility 1.8
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])

    //  Testing
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'

    //  Support library
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2'
    implementation 'com.google.android.material:material:1.1.0-alpha01'
    implementation 'androidx.vectordrawable:vectordrawable:1.0.1'
    implementation 'androidx.legacy:legacy-support-v4:1.0.0'

    //  Architecture components
    implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'

    //  Ads
    implementation 'com.google.android.gms:play-services-ads:17.1.2'

    //  Firebase
    implementation 'com.google.firebase:firebase-core:16.0.6'
    implementation 'com.google.firebase:firebase-firestore:17.1.3'
    implementation 'com.google.firebase:firebase-auth:16.0.5'
    implementation 'com.google.firebase:firebase-invites:16.0.6'
    implementation 'com.google.firebase:firebase-dynamic-links:16.1.5'

    //  FirebaseUI for Firebase Auth
    implementation 'com.firebaseui:firebase-ui-auth:4.2.0'

    //  Circular imageView
    implementation 'com.mikhaellopez:circularimageview:3.2.0'
    implementation 'de.hdodenhof:circleimageview:2.2.0'

    //  About libraries
    implementation 'com.mikepenz:aboutlibraries:6.2.0'
}
viewHolder.userOrderRecyclerViewItemDateTv.setText(MyDateUtils.getDateStringFromLong(Long.parseLong(order.getOrderDate())));

mydateutils.java:

public class MyDateUtils {

    private static String calenderToDateString(Calendar calendar) {

        //  Convert calender object to date string
        return String.format(Locale.ENGLISH, "%02d - %02d - %04d",
                (calendar.get(Calendar.DAY_OF_MONTH)), (calendar.get(Calendar.MONTH) + 1),
                calendar.get(Calendar.YEAR));
    }

    public static String getDateStringFromLong(long dateLong) {

        //  Create a new calender instance
        Calendar calendar = Calendar.getInstance();

        //  Set calender time to given value
        calendar.setTimeInMillis(dateLong);

        //  Return calender as date in string format
        return calenderToDateString(calendar);
    }
}

共有1个答案

吴德辉
2023-03-14

可以通过对任何生成类型使用minifyEnabled选项来启用ProGuard。如果您打算在生产中使用它,强烈建议您在上线测试之前也在开发中启用它(一次)。如果没有在您的开发构建中充分测试ProGuard,您可能会遇到意外的崩溃或应用程序不能按预期运行的情况。

您似乎没有为在build.gradle文件中使用的库添加规则

https://guides.codepath.com/android/configuring-proguard

 类似资料:
  • 我的android项目有个问题。每当我将minifyEnabled设置为true时,应用程序就会崩溃。应用程序正在firebase后端上运行。 下面是我在android studio中运行的日志 下面是我的身材 这是我的主要活动 下面是我的家庭片段 有人能帮我解决这个问题吗,为什么会出现这个错误。提前感谢!!还有新年快乐 附言:我是个新手

  • 我的日志猫: 2022-07-29 21:42:03.128 24303-24303/com.example。newcadviewerapp E/AndroidRuntime:致命异常:主进程:com.example。newcadviewerapp,PID:24303 java.lang.RuntimeException:无法启动活动组件信息{com.example.newcadviewerapp

  • 我正在Android中创建一个带有导航视图的tabLayout。我想将图标设置到选项卡布局的选项卡上。当我使用setIcon函数时,应用程序抛出一个空指针异常并崩溃。请帮帮我. 在android.app.activityThread.-wrap11(activityThread.java)在android.app.activityThread$H.HandleMessage(activityThr

  • 问题内容: 预期结果 单击切换按钮将显示菜单,并向右滑动内容视图。动画结束后,内容视图的布局参数将更新到最终位置。 问题 更新内容视图的最终位置时,该语句导致崩溃。错误消息是 源代码 问题答案: PARAMS应该RESP添加到您的父视图,假设你有作为父视图然后,必须使用。 说明 : 举个例子,并且,它们是不同的独立的类。他们存储有关子视图的不同其他信息。 可以将权重值与每个视图相关联,而不能。 可

  • 我正在创建我的第一个Firebase应用程序。它的要求之一是在网络不可用时运行。Firebase指南指出: 启用磁盘持久性允许我们的应用程序即使在重新启动应用程序后也保持其所有状态。我们只需一行代码就可以实现磁盘持久性。FirebaseDatabase。getInstance()。setPersistenceEnabled(true);启用磁盘持久性后,我们的同步数据和写入将在应用程序重新启动时持

  • 当我运行应用程序并转到用户的活动时,应用程序崩溃,显示mUsersList。setHasFixedSize(真);正在使应用程序崩溃。 这是消息“由以下原因引起:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法'void androidx.recyclerview.widget.recyclerview.setHasFixedSize(布尔)'”