fixed build

This commit is contained in:
MrSluffy
2024-11-03 20:03:46 +08:00
parent 0e934f511e
commit 98b38fedf6
5 changed files with 7 additions and 215 deletions

View File

@@ -52,7 +52,7 @@ jobs:
echo ${{ secrets.KEYSTORE }} | base64 --decode > ${{ github.workspace }}/key.jks
fi
- name: Build debug APK
run: ./gradlew assembleLawnWithQuickstepGithubRelease
run: ./gradlew assembleLawnWithQuickstepGithubDebug assembleLawnWithQuickstepPlayDebug
- name: Upload artifact
uses: actions/upload-artifact@v4
with:

View File

@@ -1,203 +0,0 @@
/*
* Copyright (C) 2021 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.wm.shell.util;
import android.annotation.IntDef;
import android.app.ActivityManager;
import android.app.WindowConfiguration;
import android.os.Parcel;
import android.os.Parcelable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.util.Arrays;
import java.util.List;
/**
* Simple container for recent tasks. May contain either a single or pair of tasks.
*/
public class GroupedRecentTaskInfo implements Parcelable {
public static final int TYPE_SINGLE = 1;
public static final int TYPE_SPLIT = 2;
public static final int TYPE_FREEFORM = 3;
@IntDef(prefix = {"TYPE_"}, value = {
TYPE_SINGLE ,
TYPE_SPLIT ,
TYPE_FREEFORM
})
public @interface GroupType {
}
@NonNull
private final ActivityManager.RecentTaskInfo[] mTasks;
@Nullable
private final SplitBounds mSplitBounds;
@GroupType
private final int mType;
/**
* Create new for a single task
*/
public static GroupedRecentTaskInfo forSingleTask(
@NonNull ActivityManager.RecentTaskInfo task) {
return new GroupedRecentTaskInfo (new ActivityManager.RecentTaskInfo[]{task} , null ,
TYPE_SINGLE);
}
/**
* Create new for a pair of tasks in split screen
*/
public static GroupedRecentTaskInfo forSplitTasks(@NonNull ActivityManager.RecentTaskInfo task1 ,
@NonNull ActivityManager.RecentTaskInfo task2 , @Nullable SplitBounds splitBounds) {
return new GroupedRecentTaskInfo (new ActivityManager.RecentTaskInfo[]{task1 , task2} ,
splitBounds , TYPE_SPLIT);
}
/**
* Create new for a group of freeform tasks
*/
public static GroupedRecentTaskInfo forFreeformTasks(
@NonNull ActivityManager.RecentTaskInfo... tasks) {
return new GroupedRecentTaskInfo (tasks , null , TYPE_FREEFORM);
}
private GroupedRecentTaskInfo(@NonNull ActivityManager.RecentTaskInfo[] tasks ,
@Nullable SplitBounds splitBounds , @GroupType int type) {
mTasks = tasks;
mSplitBounds = splitBounds;
mType = type;
}
GroupedRecentTaskInfo(Parcel parcel) {
mTasks = parcel.createTypedArray(ActivityManager.RecentTaskInfo.CREATOR);
mSplitBounds = parcel.readTypedObject(SplitBounds.CREATOR);
mType = parcel.readInt();
}
/**
* Get primary {@link ActivityManager.RecentTaskInfo}
*/
@NonNull
public ActivityManager.RecentTaskInfo getTaskInfo1() {
return mTasks[0];
}
/**
* Get secondary {@link ActivityManager.RecentTaskInfo}.
* <p>
* Used in split screen.
*/
@Nullable
public ActivityManager.RecentTaskInfo getTaskInfo2() {
if (mTasks.length > 1) {
return mTasks[1];
}
return null;
}
/**
* Get all {@link ActivityManager.RecentTaskInfo}s grouped together.
*/
@NonNull
public List<ActivityManager.RecentTaskInfo> getTaskInfoList() {
return Arrays.asList (mTasks);
}
/**
* Return {@link SplitBounds} if this is a split screen entry or {@code null}
*/
@Nullable
public SplitBounds getSplitBounds() {
return mSplitBounds;
}
/**
* Get type of this recents entry. One of {@link GroupType}
*/
@GroupType
public int getType() {
return mType;
}
@NonNull
@Override
public String toString() {
StringBuilder taskString = new StringBuilder ( );
for (int i = 0; i < mTasks.length; i++) {
if (i == 0) {
taskString.append ("Task");
} else {
taskString.append (", Task");
}
taskString.append (i + 1).append (": ").append (getTaskInfo (mTasks[i]));
}
if (mSplitBounds != null) {
taskString.append (", SplitBounds: ").append (mSplitBounds);
}
taskString.append (", Type=");
switch (mType) {
case TYPE_SINGLE:
taskString.append ("TYPE_SINGLE");
break;
case TYPE_SPLIT:
taskString.append ("TYPE_SPLIT");
break;
case TYPE_FREEFORM:
taskString.append ("TYPE_FREEFORM");
break;
}
return taskString.toString();
}
private String getTaskInfo(ActivityManager.RecentTaskInfo taskInfo) {
if (taskInfo == null) {
return null;
}
return "id=" + taskInfo.taskId
+ " baseIntent=" + (taskInfo.baseIntent != null
? taskInfo.baseIntent.getComponent ( )
: "null")
+ " winMode=" + WindowConfiguration.windowingModeToString (
taskInfo.getWindowingMode());
}
@Override
public void writeToParcel(Parcel parcel , int flags) {
parcel.writeTypedArray(mTasks , flags);
parcel.writeTypedObject(mSplitBounds , flags);
parcel.writeInt(mType);
}
@Override
public int describeContents() {
return 0;
}
public static final @android.annotation.NonNull Creator<GroupedRecentTaskInfo> CREATOR =
new Creator<>() {
public GroupedRecentTaskInfo createFromParcel(Parcel source) {
return new GroupedRecentTaskInfo(source);
}
public GroupedRecentTaskInfo[] newArray(int size) {
return new GroupedRecentTaskInfo[size];
}
};
}

View File

@@ -54,14 +54,9 @@
*;
}
# This is generated automatically by the Android Gradle plugin.
-dontwarn androidx.dynamicanimation.animation.FrameCallbackScheduler
-keep class com.android.quickstep.** {
*;
}
-keep interface androidx.dynamicanimation.animation.AnimationHandler.** {
*;
}
-keep class androidx.dynamicanimation.animation.** {
*;
}

View File

@@ -30,6 +30,6 @@ dependencies {
implementation "androidx.concurrent:concurrent-futures:1.2.0"
implementation "androidx.lifecycle:lifecycle-common:2.8.6"
// compileOnly projects.androidxLib
implementation 'androidx.dynamicanimation:dynamicanimation:1.0.0'
compileOnly projects.androidxLib
// implementation 'androidx.dynamicanimation:dynamicanimation:1.0.0'
}