Задание убийства после запуска из уведомления приводит к неисправимому повреждению канала - PullRequest
0 голосов
/ 23 декабря 2018

Я пытался найти и решить мою проблему самостоятельно и с помощью Интернета, но все еще не могу ее решить.

У меня есть приложение, которое отображает информацию для пользователя (если она добавлена) на каждомСлужба вызова в течение 5 секунд.

Когда я принудительно убиваю свое приложение в «Недавних приложениях», оно обычно останавливается, и служба сбрасывается.Сервис ищет любую новую информацию для показа.Он определяет, запущено ли приложение, и показывает уведомление, если нет.

Когда я запускаю свое приложение, используя уведомление, а затем принудительно завершаю работу в «Недавних приложениях», моя служба останавливается и не перезапускается.

У меня есть следующие ошибки в Logcat:

2018-12-23 04:16:19.034 1875-2464/system_process I/ActivityManager: Killing 17805:com.example.tomek.securego/u0a97 (adj 900): remove task 2018-12-23 04:16:19.035 1875-1893/system_process W/libprocessgroup: kill(-17805, 9) failed: No such process 2018-12-23 04:16:19.064 1875-1968/system_process W/InputDispatcher: channel 'd9d87a6 com.example.tomek.securego/com.example.tomek.securego.activity_AppAuth (server)' ~ Consumer closed input channel or an error occurred. events=0x9 2018-12-23 04:16:19.065 1875-1968/system_process E/InputDispatcher: channel 'd9d87a6 com.example.tomek.securego/com.example.tomek.securego.activity_AppAuth (server)' ~ Channel is unrecoverably broken and will be disposed! 2018-12-23 04:16:19.066 1875-2792/system_process I/WindowManager: WIN DEATH: Window{d9d87a6 u0 com.example.tomek.securego/com.example.tomek.securego.activity_AppAuth} 2018-12-23 04:16:19.067 1875-2792/system_process W/InputDispatcher: Attempted to unregister already unregistered input channel 'd9d87a6 com.example.tomek.securego/com.example.tomek.securego.activity_AppAuth (server)'

Это всегда происходит, когда я запускаю свое приложение с уведомлением.

Код активности_AppAuth:

public class activity_AppAuth extends AppCompatActivity {
private static final int REQUEST_CODE_ENABLE = 11;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_appauth);

    // -- Continue -- //
    final String appID = getIntent().getStringExtra("appID");
    final String appName = getIntent().getStringExtra("appName");
    final String operation = getIntent().getStringExtra("operation");

    TextView textView_Application = findViewById(R.id.textView_Application);
    TextView textView_Header = findViewById(R.id.textView_Header);

    if (operation.equals("add")) {
        textView_Header.setText(getString(R.string.text_AddApp_Header_Add));
    }
    else if (operation.equals("authorization")) {
        textView_Header.setText(getString(R.string.text_AddApp_Header_Auth));
    }

    textView_Application.setText(appName);

    Button button_Authorize = findViewById(R.id.button_Authorize);

    LockManager<activity_AppAuth_Handler> lockManager = LockManager.getInstance();
    lockManager.enableAppLock(activity_AppAuth.this, activity_AppAuth_Handler.class);

    button_Authorize.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (LockManager.getInstance().getAppLock().isPasscodeSet()) {
                class_SaveSharedPreference.setAddAppResponse(activity_AppAuth.this, "");

                Intent activity_AddApp_Handler = new Intent(activity_AppAuth.this, activity_AppAuth_Handler.class);
                activity_AddApp_Handler.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                activity_AddApp_Handler.putExtra("appID", appID);
                activity_AddApp_Handler.putExtra("appName", appName);
                activity_AddApp_Handler.putExtra("operation", operation);
                startActivityForResult(activity_AddApp_Handler, REQUEST_CODE_ENABLE);
            }
        }
    });
}

@Override
public void onDestroy() {
    super.onDestroy();
}
}

Я не уверен, что здесь не так и как я могу избежать этой ошибки ... Я прошу вас о помощи.

С Рождеством :):!

...