您的位置:首页 > 财经 > 产业 > 潍坊专业java培训报名_b2b商务平台有哪些_在线工具_品牌策划

潍坊专业java培训报名_b2b商务平台有哪些_在线工具_品牌策划

2024/12/22 14:39:19 来源:https://blog.csdn.net/qq_20330595/article/details/144591084  浏览:    关键词:潍坊专业java培训报名_b2b商务平台有哪些_在线工具_品牌策划
潍坊专业java培训报名_b2b商务平台有哪些_在线工具_品牌策划
命令行获取页面

手机处于launcher首页
adb shell dumpsys window | findstr mCurrentFocus
输出
mCurrentFocus=Window{9afb34d u0 com.android.launcher3/com.android.launcher3.Launcher}

找到源码路径

packages/apps/Launcher3/
Android10源码 搜索控件
grep -r -n AppsSearchContainerLayout
跳转:Ctrl+左键在这里插入图片描述

使用AS的Layout Inspector神器

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

查找手机中的路径

adb shell pm path com.android.launcher3

编译

mm -j8 WITH_DEXPREOPT=false

在这里插入图片描述
out/target/product/nanopc-t4/product/priv-app/Launcher3QuickStep/Launcher3QuickStep.apk

提取手机APK

adb pull /product/priv-app/Launcher3QuickStep/Launcher3QuickStep.apk

反编译验证

在这里插入图片描述

在这里插入图片描述

应用变体

在这里插入图片描述

推送

注意手机系统是推送这个,不是上面说的
out/target/product/nanopc-t4/product/priv-app/Launcher3QuickStep/Launcher3QuickStep.apk

而是Launcher3.apk
在这里插入图片描述

命令行打开源码位置

在这里插入图片描述

上传123

在这里插入图片描述

如果推送后无效果可以试着将如下文件夹删除后重启
在这里插入图片描述

效果如下

在这里插入图片描述

探究mm指令
#  
# Copyright (C) 2013 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.  
#  # 设置当前目录路径  
LOCAL_PATH := $(call my-dir)  #  
# 构建插件库的规则(需要编写插件)。  
#  
include $(CLEAR_VARS)  # 清除之前的变量设置  
LOCAL_USE_AAPT2 := true  # 使用 AAPT2 工具  
LOCAL_AAPT2_ONLY := true  # 仅使用 AAPT2  
LOCAL_MODULE_TAGS := optional  # 模块标记为可选  
LOCAL_STATIC_JAVA_LIBRARIES := PluginCoreLib  # 静态 Java 库依赖  # 指定源文件,递归查找 src_plugins 目录下的所有 Java 文件  
LOCAL_SRC_FILES := \$(call all-java-files-under, src_plugins)  LOCAL_SDK_VERSION := current  # 当前 SDK 版本  
LOCAL_MIN_SDK_VERSION := 28  # 最小 SDK 版本  
LOCAL_MODULE := LauncherPluginLib  # 模块名称  include $(BUILD_STATIC_JAVA_LIBRARY)  # 构建静态 Java 库  #  
# 构建 Launcher3 依赖库的规则。  
#  
include $(CLEAR_VARS)  # 清除之前的变量设置  
LOCAL_USE_AAPT2 := true  # 使用 AAPT2 工具  
LOCAL_AAPT2_ONLY := true  # 仅使用 AAPT2  
LOCAL_MODULE_TAGS := optional  # 模块标记为可选  # 静态 Android 库依赖  
LOCAL_STATIC_ANDROID_LIBRARIES := \androidx.recyclerview_recyclerview \androidx.dynamicanimation_dynamicanimation \androidx.preference_preference \iconloader_base  LOCAL_STATIC_JAVA_LIBRARIES := LauncherPluginLib  # 静态 Java 库依赖  # 指定源文件,查找 protos 和 proto_overrides 目录下的所有 proto 文件  
# 以及 src_build_config 目录下的所有 Java 文件  
LOCAL_SRC_FILES := \$(call all-proto-files-under, protos) \$(call all-proto-files-under, proto_overrides) \$(call all-java-files-under, src_build_config)  LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res  # 资源目录  LOCAL_PROGUARD_ENABLED := disabled  # 禁用 Proguard  
LOCAL_PROTOC_OPTIMIZE_TYPE := nano  # Protobuf 优化类型  
LOCAL_PROTOC_FLAGS := --proto_path=$(LOCAL_PATH)/protos/ --proto_path=$(LOCAL_PATH)/proto_overrides/  # Protobuf 编译选项  
LOCAL_PROTO_JAVA_OUTPUT_PARAMS := enum_style=java  # Protobuf Java 输出参数  LOCAL_SDK_VERSION := current  # 当前 SDK 版本  
LOCAL_MIN_SDK_VERSION := 21  # 最小 SDK 版本  
LOCAL_MODULE := Launcher3CommonDepsLib  # 模块名称  
LOCAL_PRIVILEGED_MODULE := true  # 特权模块  
LOCAL_MANIFEST_FILE := AndroidManifest-common.xml  # 清单文件  include $(BUILD_STATIC_JAVA_LIBRARY)  # 构建静态 Java 库  #  
# 构建 Launcher3 应用的规则。  
#  
include $(CLEAR_VARS)  # 清除之前的变量设置  
LOCAL_USE_AAPT2 := true  # 使用 AAPT2 工具  
LOCAL_MODULE_TAGS := optional  # 模块标记为可选  # 静态 Android 库依赖  
LOCAL_STATIC_ANDROID_LIBRARIES := \Launcher3CommonDepsLib \SecondaryDisplayLauncherLib  # 指定源文件,查找 src 目录下的所有 Java 文件  
# 以及 src_shortcuts_overrides 和 src_ui_overrides 目录下的所有 Java 文件  
LOCAL_SRC_FILES := \$(call all-java-files-under, src) \$(call all-java-files-under, src_shortcuts_overrides) \$(call all-java-files-under, src_ui_overrides) \$(call all-java-files-under, src_flags)  LOCAL_PROGUARD_FLAG_FILES := proguard.flags  # Proguard 配置
最后

保持耐心,多次尝试,学习是一个渐进的过程,不要气馁,做好笔记

其他

https://juejin.cn/post/7107239279432040478#heading-14

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com