[ИСПРАВЛЕНО] Xamarin мое приложение вылетает при загрузке, когда оно невидимо - PullRequest
0 голосов
/ 13 июля 2020

Я могу скрыть свое приложение с помощью этого кода;

PackageManager p = PackageManager;
            ComponentName componentName = new ComponentName(this, Class);
            p.SetComponentEnabledSetting(componentName, 
            ComponentEnabledState.Disabled, ComponentEnableOption.DontKillApp);

но мое приложение при загрузке перестает работать, когда оно невидимо с приведенными выше кодами. Мое приложение запускается при загрузке без ошибок, когда оно отображается.

Как я могу запустить мое приложение при загрузке как невидимое без ошибок cra sh?

1 Ответ

0 голосов
/ 14 июля 2020

Я решил проблему, сделав свое приложение видимым в классе BroadCastReceiver. Затем мое приложение снова становится невидимым в классе MainActivity.

Мой широковещательный приемник:

[BroadcastReceiver(Enabled = true, DirectBootAware = true, Exported = true)]
[IntentFilter(new[] { Intent.ActionBootCompleted }, Priority = (int)IntentFilterPriority.LowPriority)]
public class BootReceiver : BroadcastReceiver
{
    public ContextWrapper context_;
    public async override void OnReceive(Context context, Intent intent)
    {
        PackageManager p = context_.PackageManager;
        ComponentName componentName = new ComponentName(context,
        Java.Lang.Class.FromType(typeof(MainActivity)).Name);
        p.SetComponentEnabledSetting(componentName,
        ComponentEnabledState.Enabled, ComponentEnableOption.DontKillApp);

        await Task.Delay(8000);
        Intent start = new Intent(context, typeof(MainActivity));
        start.AddFlags(ActivityFlags.NewTask);
        context.StartActivity(start);
        
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...