【问题标题】:Is it possible to start an Android app without launching an Activity是否可以在不启动 Activity 的情况下启动 Android 应用程序
【发布时间】:2012-05-06 01:54:26
【问题描述】:

具体来说,我正在寻找一种方法来防止在我运行我的应用程序时出现“黑屏”。

应用程序只要按下它就会运行一个快速程序,但由于它链接到一个 Activity,它会加载一个布局(黑色)。我知道我可以做一个小部件,但我需要它在启动器中......

有什么办法吗?

【问题讨论】:

  • 您可以设置一个Activity 来设置一个使其不可见的主题,尽管我并不特别喜欢这个想法。您没有深入研究,但您所描述的内容确实违反了良好的设计原则。如果用户必须以与使用“启动器”的任何其他方式相同的方式启动您的应用程序,那么他们至少应该获得一些视觉反馈,表明它确实启动并完成了任务。拥有一个完全匿名/不可见的进程与用户激活软件的工作方式背道而驰。
  • 通常我会同意你的观点,但在这种情况下我不同意 :) 屏幕上有反馈说它运行了,所以用户知道它可以工作。这真的只是我想改变的化妆品。闪烁黑屏看起来很俗气。

标签: android android-activity launch


【解决方案1】:

添加可以避免黑屏

android:theme="@android:style/Theme.NoDisplay"

到 AndroidManifest.xml 中的活动标签

例如:

<activity android:name=".Activity"
      android:theme="@android:style/Theme.NoDisplay" />          

【讨论】:

    【解决方案2】:

    要在启动器中有一个图标,你需要在你的 Android Manifest 中有正确的 intent-filter 标签。

    避免为 Activity 执行此操作的一种方法也许您可以尝试为服务添加意图过滤器...

    我不知道它是否会起作用,但可能值得一试......

    【讨论】:

    • 嗯...我认为服务不能真正满足我的需求。我真正需要的是我的应用程序来运行代码......只是不在一个活动中,所以它创建了那个布局。也许是一种防止创建布局的方法?或者中断它的方法(在布局之前运行代码并调用finish())?
    猜你喜欢
    • 1970-01-01
    • 2012-06-10
    • 1970-01-01
    • 2011-10-07
    • 1970-01-01
    • 1970-01-01
    • 2011-06-18
    • 2012-12-14
    • 1970-01-01
    相关资源
    最近更新 更多