/* * Copyright (C) 2018 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package com.android.launcher3.testcomponent; import static android.content.Intent.ACTION_MAIN; import static android.content.Intent.CATEGORY_LAUNCHER; import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK; import static android.content.Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED; import static com.android.launcher3.testing.shared.TestProtocol.LAUNCHER_ACTIVITY_STOPPED_MESSAGE; import android.app.LauncherActivity; import android.content.Intent; import android.view.accessibility.AccessibilityEvent; import android.view.accessibility.AccessibilityManager; public class TestLauncherActivity extends LauncherActivity { @Override protected Intent getTargetIntent() { return new Intent(ACTION_MAIN, null) .addCategory(CATEGORY_LAUNCHER) .addFlags(FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); } @Override protected void onStop() { super.onStop(); final AccessibilityManager accessibilityManager = getSystemService(AccessibilityManager.class); if (accessibilityManager == null || !accessibilityManager.isEnabled()) return; final AccessibilityEvent e = AccessibilityEvent.obtain( AccessibilityEvent.TYPE_ANNOUNCEMENT); e.setClassName(LAUNCHER_ACTIVITY_STOPPED_MESSAGE); e.setPackageName(getApplicationContext().getPackageName()); accessibilityManager.sendAccessibilityEvent(e); } }