Вопрос по android – Начать деятельность по загрузке телефона в Android

2

Я хочу, чтобы мое приложение запускалось автоматически при загрузке телефона. Я объявил BroadcastReceiver в файле манифеста.

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

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

Я сделал файл Java для получателя.

Autostart.java

public class Autostart extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
    if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) {  

    Intent pushIntent = new Intent(context, MushTouchActivity.class); 
    pushIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(pushIntent);
    }
}

}

Но приложение не запускается при включении телефона. Может кто-нибудь сказать мне, что мне здесь не хватает?

Ваш Ответ

3   ответа
4

    if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){


        Intent i = new Intent(context, MushTouchActivity.class);
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

        context.startActivity(i);
    }
Nopes. Ничего не произошло. Swayam
Это действительно работает. Если вы хотите начать активность при загрузке, вам нужно добавить этот флаг. Благодарю.
это не работает..
2

Убедитесь, что вы запустили приложение хотя бы один раз вручную (например, открыв его из ящика приложения). В противном случае ваше приложение будет помечено как остановленное системой:

Applications are in a stopped state when they are first installed but are not yet launched

Остановленные приложения не получают никаких намерений вещания, в том числеBOOT_COMPLETED.

See Android 3.1. Платформа - запуск управления на остановленных приложениях для дополнительной информации.

Спасибо за ваш ответ, но я разрабатываю для 2.3.3, и я также запускаю свое приложение вручную один раз. Только тогда я перезагружаюсь. Swayam
@CodeDroid Учитывая подробности в вопросе, это, безусловно, возможно. Поскольку вы не предоставляете дополнительную информацию: я полагаю, что я отклонил один из ваших вопросов или что-то в этом роде, и вы сейчас просто сошли с ума? Редактировать: вероятно, потому что яclose-voted this one вчера.
Не настоящий ответ
0

апустить приложение из этого уведомления и использовать ожидающее намерение для этого действия в уведомлении.

Похожие вопросы