gpt4 book ai didi

android - 第一次安装 .apk 时如何启动服务

转载 作者:IT老高 更新时间:2023-10-28 13:16:02 26 4
gpt4 key购买 nike

在我的应用程序中,我没有任何 UI 部分,因此我需要在设备上安装应用程序后立即启动服务。我看到很多链接,答案是不可能的,但我想这肯定是可能的。看看PlanB Android Market 上满足我要求的应用程序。下面是我的 list 文件,我是如何尝试的,但根本没有调用服务。所以,让我知道在安装应用程序时启动服务的最佳方式是什么。

更新

我也尝试使用 android.intent.action.PACKAGE_ADDED 它可以很好地检测其他应用程序的包,但不适用于自身。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.auto.start"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

<application
android:icon="@drawable/ic_launcher" >

<service android:name=".MyService">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</service>

<receiver android:name=".BootUpReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<category android:name="android.intent.category.DEFAULT"/>
<action android:name="android.intent.action.PACKAGE_INSTALL" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
<data android:scheme="package"/>
</intent-filter>
</receiver>
</application>
</manifest>

最佳答案

幸运的是,在 XOOM 和 Galaxy Nexus 上测试过,Plan B 不适用于 Android 3.1+。

Plan B 所做的是利用一个可能被偷偷摸摸的恶意软件利用的安全漏洞,这正是 Android 阻止它再次发生的原因。


更新

澄清:正如 inazaruk 发布的并且我对其他答案发表评论一样,所有应用程序在安装后都处于“停止”状态。这与用户从设置应用程序强制停止应用程序后应用程序结束的状态相同。在这种“停止”状态下,应用程序将不会因任何原因运行,除非手动启动 Activity 。值得注意的是,在用户手动运行应用程序之前,不会调用任何 BroadcastReceviers,无论他们注册了哪个事件。

此部分涵盖了他们之前利用的远程安装和运行的 B 计划方案。毕竟,这样一来,任何拥有被黑 Google 帐户的人都将面临设备被感染的风险,而无需动手操作。

所以,当 OP 说:

I need to start a Service as soon as the Applicaton gets installed on the Device

OP 将不成功,需要重新设计应用程序以避免这种所谓的“需要”。

关于android - 第一次安装 .apk 时如何启动服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8531926/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com