«Намерение» не содержит определения для «FLAG_ACTIVITY_NEW_TASK» - PullRequest
0 голосов
/ 04 октября 2018

Я начал программировать приложение для Android Xamarin, которое изменяет активность при срабатывании будильника.Повсюду в Интернете все говорят, чтобы использовать FLAG_ACTIVITY_NEW_TASK или подобные флаги для вызова нового действия.По какой-то причине в моем намерении не определены эти флаги.

[BroadcastReceiver(Enabled = true)]
public class AlarmReceiver : BroadcastReceiver
{
    public override void OnReceive(Context context, Intent intent)
    {
        Toast.MakeText(context, "THIS IS MY ALARM", ToastLength.Long).Show();

        Intent i = new Intent();
        i.SetClassName("AlarmReceiver", "AlarmActivated");
        i.SetFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //error
        context.StartActivity(i);
    }
}

Есть ли причина, по которой этот флаг или другие подобные флаги не определены?Благодарю.

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Xamarin "C # нормализует" методы / свойства Android / Java и время от времени перемещает перечисления / флаги в свои собственные перечисления "sub", FLAG_ACTIVITY{_XXX} становится перечислением ActivityFlags.

Итак Intent.FLAG_ACTIVITY_NEW_TASKстановится ActivityFlags.NewTask

0 голосов
/ 04 октября 2018
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);

В моем случае addFlags помогло вместо setFlags

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...