当前位置: 首页 > 知识库问答 >
问题:

启动服务,当设备重置时

那开济
2023-03-14

我有广播接收器

@Override
public void onReceive(Context context, Intent intent) {
    Log.d("TEST", " start");
    context.startService(new Intent(context, MyService.class));
}
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<application
    android:name=".AnalyticsApplication"
    android:allowBackup="true"
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".Activity.MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>

            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
    <activity android:name=".Activity.ListCitiesActivity">
    </activity>
    <activity android:name=".Activity.InfoActivity">
    </activity>
    <activity
        android:name=".Settings.SettingsActivity"
        android:label="@string/title_activity_settings"
        android:theme="@style/Theme.AppCompat.Light">
    </activity>
    <activity android:name=".Activity.DetailActivity"></activity>

    <service android:name=".MyService"/>

    <receiver
        android:name=".StartServiceReceiver"
        android:permission="android.permission.RECEIVE_BOOT_COMPLETED"
        android:enabled="true">

        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver>

</application>

但是服务不启动,当我启动我的设备日志log.d(“test”,“start”);不要显示我如何修复它?

共有1个答案

俞飞鸣
2023-03-14

在清单文件中添加此权限:

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

Update1:尝试添加此

 <receiver
            android:name=".StartServiceReceiver"
            android:enabled="true"
            android:exported="true"
            android:permission="android.permission.RECEIVE_BOOT_COMPLETED">

            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.intent.action.QUICKBOOT_POWERON" />
            </intent-filter>
        </receiver>
 类似资料:
  • 本文向大家介绍linux jexus服务设置开机启动,包括了linux jexus服务设置开机启动的使用技巧和注意事项,需要的朋友参考一下 本文为大家分享jexus服务设置开机启动的具体代码,供大家参考,具体内容如下 linux的服务开机设置一般在 /etc/init.d/里 而jexus的默认安装目录在 /usr/jexus里 启动文件为 jws 参数 有start stop restart 这

  • 我正在使用xampp v1.8.1 虽然没有将Mysql和Apache作为服务安装,但一切都很好,我可以在默认端口上运行它们。 但是当我将它们安装为服务时,只有Apache正常运行。但是Mysql被冻结在“尝试启动MySQL服务......”并且其日志文件中没有错误,xampp控制面板日志中也没有任何内容。 端口号没有问题,因为它可以在默认端口上运行,而无需选中服务复选框 仅供参考,我的操作系统是

  • 设备服务 网络状态 1.BdHiJs.device.connection.get 单次获取网络状态 BdHiJs.device.connection.get({ onsuccess: function (data) { console.log(data) }, onfail: function (err) {

  • 设备服务 网络状态 1.BdHiJs.device.connection.get 单次获取网络状态 BdHiJs.device.connection.get({ onsuccess: function (data) { console.log(data) }, onfail: function (err) {

  • 我正在尝试将php中的更改为。伊尼。我运行了phpinfo()并验证了加载的配置文件(它位于这里:/Library/Application-Support/appsolute/MAMP-PRO/conf/php.ini)。 每次我编辑这个php.ini文件的值并重启我的MAMP服务器时,php.ini文件似乎都会重置。如果我在重启MAMP后再次打开php.ini文件,它会显示。 为什么MAMP会重

  • 我们在Android8.1及以上版本中偶然发现了一个我们以前从未见过的问题,不幸的是,这使得我们的应用程序对我们的用户来说不太方便。在Android 8.1及以上版本中,当用户刷屏杀死应用程序时,后台粘性服务不会重新启动。