相关疑难解决方法(0)

如何在将应用程序发布到Google Play之前删除所有调试日志记录调用?

据谷歌称,在发布我的Android应用程序之前,我必须" 停用源代码中对Log方法的任何调用 ".摘录自出版物清单的第5部分:

在构建应用程序以进行发布之前,请确保停用日志记录并禁用调试选项.您可以通过删除源文件中对Log方法的调用来停用日志记录.

我的开源项目很大,每次发布时手动执行都很痛苦.此外,删除日志行可能很棘手,例如:

if(condition)
  Log.d(LOG_TAG, "Something");
data.load();
data.show();
Run Code Online (Sandbox Code Playgroud)

如果我对日志行进行注释,则条件适用于下一行,并且可能不会调用load().这种情况是否足够罕见,我可以决定它不应该存在?

这是在官方清单上,所以我想很多人会定期这样做.
那么,如何有效但安全地删除所有日志行?

logging android proguard android-log

381
推荐指数
12
解决办法
16万
查看次数

对于DEBUG构建,无法禁用Fabric的Crashlytics with Firebase

我有一个应用程序,通过Firebase使用Fabric的Crashlytics.以下是我的Applications onCreate中执行的第一件事

CrashlyticsCore crashlyticsCore = new CrashlyticsCore.Builder()
    .disabled(BuildConfig.DEBUG)
    .build();
Fabric.with(this, new Crashlytics.Builder().core(crashlyticsCore).build());
Run Code Online (Sandbox Code Playgroud)

尽管如此,崩溃仍以DEBUG == true模式提交.

我使用以下版本

在我的build.gradle中 classpath "io.fabric.tools:gradle:1.25.1"

在我的app/build.gradle中 implementation "com.crashlytics.sdk.android:crashlytics:2.9.1"

不幸的是,崩溃仍然有报道.任何想法,我做错了什么?

android firebase crashlytics crashlytics-android google-fabric

29
推荐指数
4
解决办法
1万
查看次数

无法在Firebase应用中停用Crashlytics(不再)

升级到com.crashlytics.sdk.android:crashlytics:2.7.1@aar(从2.6.8开始)后,我无法在我的Firebase应用中禁用Crashlytics.

看起来Crashlytics库本身有一些代码,只要它检测到它在Firebase应用程序中运行,就会启用 Fabric with Crashlytics工具包.确实在启用Crashlytics的情况下进行初始化并ext.enableCrashlytics = false抛出UnmetDependencyException并在启动时崩溃应用程序(事实上,在我的代码Application.onCreate运行之前).

有谁知道解决方法吗?坚持2.6.8现在工作.这是我在我的代码中使用的,直到升级为止:

应用程序/的build.gradle:

ext.enableCrashlytics = false
Run Code Online (Sandbox Code Playgroud)

Application.java(onCreate,请求的完整方法体):

super.onCreate();
if (LeakCanary.isInAnalyzerProcess(this)) {
    return;
}
LeakCanary.install(this);
// First Fabric invocation
Fabric.with(this, new Crashlytics.Builder().core(
    new CrashlyticsCore.Builder().disabled(true).build()).build());
RxJavaPlugins.setErrorHandler(e -> LOGGER.error("Undeliverable RxJava error", e));
// First Firebase invocation
FirebaseDatabase db = FirebaseDatabase.getInstance();
if (BuildConfig.DEBUG) {
    db.setLogLevel(com.google.firebase.database.Logger.Level.DEBUG);
}
db.setPersistenceEnabled(true);
Run Code Online (Sandbox Code Playgroud)

firebase crashlytics crashlytics-android

16
推荐指数
2
解决办法
4232
查看次数

在Android中以开发模式禁用Firebase

我在我的android项目中使用Firebase.想知道如何在开发模式下禁用它.正在记录所有崩溃和使用/事件,并搞乱实际分析.

有没有更好的方法在开发模式下禁用它?

android firebase firebase-analytics

11
推荐指数
3
解决办法
7415
查看次数

禁用Firebase崩溃报告

我决定将Firebase Crash API 9.0.1包含在我的Android应用中.目前一切正常.现在,我想让我的用户有机会禁用,Firebase会自动发送崩溃报告.

可以使用此代码段禁用Firebase Analytics

FirebaseAnalytics.getInstance(this).setAnalyticsCollectionEnabled(false);
Run Code Online (Sandbox Code Playgroud)

你们中有谁知道类似的方法来禁用崩溃报告吗?

非常感谢

android firebase firebase-crash-reporting

6
推荐指数
2
解决办法
3069
查看次数