我正在写一个(法律)Spy程序。 我想使这个程序中隐藏的启动器(使没有显示图标)。 我试图删除<category android:name="android.intent.category.LAUNCHER" />
线从AndroidManifest.xml
,但随后的用户不能够在第一起动模式(配置)中的应用。 谁有什么想法?
我该怎么做?
我正在写一个(法律)Spy程序。 我想使这个程序中隐藏的启动器(使没有显示图标)。 我试图删除<category android:name="android.intent.category.LAUNCHER" />
线从AndroidManifest.xml
,但随后的用户不能够在第一起动模式(配置)中的应用。 谁有什么想法?
我该怎么做?
你需要让你的应用程序到服务。 这里是机器人会采取创建服务组件:
http://developer.android.com/guide/components/services.html
发现这个以及上MobiWare:
当你想跟踪移动的使用或收集在用户不知情的一些数据,这可能会帮助你。
第一步:创建一个没有图标的应用程序。 通常情况下,一个活动被声明为在清单如下。
<activity
android:label="@string/app_name"
android:name="org.security.tracker.Tracker-activity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
删除分类标签,你不会得到应用程序图标了。 现在,你不需要再活动。 所以删除此片段。 但你可能会认为,应用程序将如何没有任何触发或者什么是应用程序的起点上运行。 这是解决方案。
<!-- Start the Service if applicable on boot -->
<receiver android:name="org.security.tracker.ServiceStarter" >
<intent-filter >
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
这会触发你的代码写在接收器那里通过,您可以运行服务来实现你的想法。
<service android:name="org.security.tracker.serviceCode" />
您需要添加此权限,
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
你的代码的时候,手机只能重新启动运行。
第2步:编写代码
在重新启动时,recevier会火,有你就可以开始你的服务。
class ServiceStarter extends BroadcastReceiver {
@Override
public void onReceive(Context _context, Intent _intent) {
Intent i = new Intent("com.prac.test.MyPersistingService");
i.setClass(_context, ServiceCode.class);
_context.startService(i);
}
}
去掉
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
从清单文件
您可以删除<category android:name="android.intent.category.LAUNCHER"/>
从AndroidManifest.xml文件。
但记得要加<category android:name="android.intent.category.LEANBACK_LAUNCHER"/>
让Android的工作室将能够编写你的应用程序(从启动又隐藏):):d