Extended test to support launching assist above lock screen
Change-Id: Ic65e638eed214a240cc13666f857e9b297f28168
This commit is contained in:
@@ -30,10 +30,20 @@
|
||||
<meta-data
|
||||
android:name="com.android.systemui.action_assist_icon"
|
||||
android:resource="@drawable/assistant" />
|
||||
<meta-data
|
||||
android:name="com.android.keyguard.layout"
|
||||
android:resource="@layout/keyguard_preview" />
|
||||
</service>
|
||||
<service android:name="AssistInteractionSessionService"
|
||||
android:permission="android.permission.BIND_VOICE_INTERACTION"
|
||||
android:process=":session">
|
||||
</service>
|
||||
<activity android:name=".AboveKeyguardActivity"
|
||||
android:label="Test Above Keyguard Activity"
|
||||
android:theme="@android:style/Theme.NoTitleBar"
|
||||
android:excludeFromRecents="true"
|
||||
android:launchMode="singleTask"
|
||||
android:exported="false" >
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
||||
|
||||
61
tests/Assist/res/layout/keyguard_preview.xml
Normal file
61
tests/Assist/res/layout/keyguard_preview.xml
Normal file
@@ -0,0 +1,61 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
~ Copyright (C) 2015 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
|
||||
-->
|
||||
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
android:background="#d3d3d3">
|
||||
|
||||
<View
|
||||
android:id="@+id/background"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="350dp"
|
||||
android:layout_gravity="bottom"
|
||||
android:elevation="30dp"
|
||||
android:background="#e0e0e0"/>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="350dp"
|
||||
android:orientation="vertical"
|
||||
android:elevation="30dp"
|
||||
android:layout_gravity="bottom">
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/card1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="150dp"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:elevation="3dp"
|
||||
android:background="@drawable/round_rect">
|
||||
</FrameLayout>
|
||||
|
||||
<View
|
||||
android:id="@+id/card2"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="200dp"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:elevation="3dp"
|
||||
android:background="@drawable/round_rect"/>
|
||||
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
@@ -18,4 +18,5 @@
|
||||
<voice-interaction-service xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:sessionService="com.android.test.assist.AssistInteractionSessionService"
|
||||
android:recognitionService="com.android.test.assist.AssistRecognitionService"
|
||||
android:supportsAssist="true"/>
|
||||
android:supportsAssist="true"
|
||||
android:supportsLaunchVoiceAssistFromKeyguard="true"/>
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Copyright (C) 2015 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.test.assist;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.app.Activity;
|
||||
import android.os.Bundle;
|
||||
import android.view.WindowManager;
|
||||
|
||||
import com.android.test.assist.R;
|
||||
|
||||
/**
|
||||
* An activity which can be shown above the keyguard.
|
||||
*/
|
||||
public class AboveKeyguardActivity extends Activity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
|
||||
setContentView(R.layout.keyguard_preview);
|
||||
}
|
||||
}
|
||||
@@ -16,8 +16,15 @@
|
||||
|
||||
package com.android.test.assist;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.service.voice.VoiceInteractionService;
|
||||
|
||||
public class AssistInteractionService extends VoiceInteractionService {
|
||||
|
||||
@Override
|
||||
public void onLaunchVoiceAssistFromKeyguard() {
|
||||
super.onLaunchVoiceAssistFromKeyguard();
|
||||
Intent intent = new Intent(this, AboveKeyguardActivity.class);
|
||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
startActivity(intent);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user