【问题标题】:Execute tasks related to process startup执行与进程启动相关的任务
【发布时间】:2017-09-17 08:35:51
【问题描述】:

假设一个 Android 应用有多个入口点:活动、系统启动的服务等。

假设我们需要在应用程序(意味着它的任何组件)以上述任何选项启动时执行一些任务。把它放在某种上下文中,假设我们需要初始化崩溃报告系统。

首先想到的是在每个入口点(Activity.onCreate()Service..onCreate())放置代码,但看起来应该有更好的方法。

实施它的做法是什么?

【问题讨论】:

  • 请详细说明。如果调用Activity.onCreate(),那就很糟糕了

标签: android android-activity process android-service startup


【解决方案1】:

通常的方法是将该代码放在Application.onCreate() 中,即 在应用程序启动时调用,在任何活动、服务或接收器对象(不包括内容提供者)创建之前。这是初始化 Fabric/Crashlytics 等库的数量。

【讨论】:

  • 谢谢。当我启用 Fabric Crashlytics 时出现了这个问题。遗憾的是,他们的 Android Studio 插件中的代码示例实际上包含 Activity.onCreate() 中的初始化代码,而不是 Application.onCreate() 中更正确的代码。
  • 可能的原因是没有 Application 类,因此它选择将其添加到启动 Activity。如果您已经有一个 Application 类,我认为它会在那里添加初始化代码。
  • 我没有使用自动安装。我的意思是他们的指南根本没有提到应用程序类中的设置。例如,请参阅here
猜你喜欢
  • 2020-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-20
  • 2018-02-24
  • 1970-01-01
相关资源
最近更新 更多