Android - 在启动设备时立即启动程序

时间:2014-04-13 08:32:08

标签: android speech-recognition

大家好,感谢您的麻烦,

我有一个程序detailed here。这使用麦克风图标开始收听语音。但是,我希望此程序在启动设备时立即运行。这怎么可能?此外,我希望程序在没有任何视觉效果的情况下运行,只需将文本转换返回到正在运行的程序,该程序将处理要执行的命令。有关这些主题的任何帮助吗?非常感谢。

1 个答案:

答案 0 :(得分:1)

是的,你可以做到。为此,您需要设置AndroidManifest.xml的权限。

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

AndroidManifest.xml中,为BOOT_COMPLETED操作定义您的服务和听众:

<service android:name=".MyService" android:label="My Service">
    <intent-filter>
        <action android:name="com.myapp.MyService" />
    </intent-filter>
</service>

<receiver
    android:name=".receiver.StartMyServiceAtBootReceiver"
    android:enabled="true"
    android:exported="true"
    android:label="StartMyServiceAtBootReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>

然后你必须定义接收器,它将获得BOOT_COMPLETED动作并启动你的服务。

public class StartMyServiceAtBootReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
            Intent serviceIntent = new Intent(context, MySystemService.class);
            context.startService(serviceIntent);
        }
    }
}

希望这会有所帮助.. :)