Android - 如何为 LeakCanary 扩展应用程序类中间项目

Rya*_*yan 1 android

TLDR: 我必须扩展应用程序类,但不知道从哪里开始。

好吧...我知道这是一个愚蠢的但我不得不问它。

我需要安装LeakCanary并且我在他们的文档中看到它要求我将代码放入应用程序类中。

我了解如何创建一个扩展应用程序类的 java 类,但是在我这样做之前我有一些问题。

情况:

  1. 我的应用程序中已经有 9 个课程。
  2. 我的应用程序的入口点是 MainActivity.class(数字,对吧?)
  3. 我还没有扩展应用程序类。
  4. 应用名称是“CST-ALERT”

问题:

  1. 我是否只是在我的 java 源文件夹中创建一个新的 Java 类并将其命名为与我的整体包名称相同的名称?我给这个新班级起什么名字?
  2. 我现在是否需要调整清单以将其作为入口点而不是 MainActivity?我想这会给我带来很大的改变。
  3. 我是否必须更改清单中的其他内容?我想我至少必须在那里声明它。

希望我的情况和问题能让您了解我在问什么。

Com*_*are 5

我是否只是在我的 java 源文件夹中创建一个新的 Java 类

是的。

并将其命名为与我的整体包名称相同的名称?

如果“它”是指 Java 包,那么您已经有一个存放现有 Java 代码的目录。将您的子类Application放在那里,除非您有明确的理由不这样做。

这个简单的示例应用程序中,我将我的Application子类放在与我的启动器相同的目录中Activity,这是我的 Java 包 ( com.commonsware.android.button)的目录。

我给这个新班级起什么名字?

那取决于你。我叫它CanaryApplication。如果你认为你泄漏了很多,就打电话给它CoalMine。只要是合法的Java类名,就没有关系。

我现在是否需要调整清单以将其作为入口点而不是 MainActivity?

嗯,好吧,我不会将其描述MainActivity为切入点。无论如何,MainActivity被单独留下。您需要向元素添加一个android:name属性,以<application>标识您的Application子类。

我是否必须更改清单中的其他内容?

不,应该够了。