├── .github └── workflows │ └── build.yml ├── .gitignore ├── DYEnablePanelModernStyle.plist ├── Makefile ├── README.md ├── Tweak.x └── control /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: build deb 2 | 3 | on: 4 | push: 5 | pull_request: 6 | 7 | jobs: 8 | build: 9 | runs-on: macos-latest 10 | 11 | steps: 12 | - uses: actions/checkout@v4.2.2 13 | with: 14 | submodules: true 15 | 16 | - name: Check cache 17 | run: | 18 | echo upstream_heads=`git ls-remote https://github.com/roothide/theos | head -n 1 | cut -f 1`-`git ls-remote https://github.com/theos/sdks | head -n 1 | cut -f 1` >> $GITHUB_ENV 19 | 20 | - name: Use cache 21 | id: cache 22 | uses: actions/cache@v4.2.1 23 | with: 24 | path: ${{ github.workspace }}/theos 25 | key: ${{ runner.os }}-${{ env.upstream_heads }} 26 | 27 | - name: Prepare Theos 28 | uses: huami1314/theos-action@main 29 | 30 | - name: Setup GNU Make 31 | run: | 32 | echo "$(brew --prefix)/opt/make/libexec/gnubin" >> $GITHUB_PATH 33 | 34 | - name: Build package 35 | run: | 36 | rm -f packages/* 37 | make package FINALPACKAGE=1 -j$(sysctl -n hw.ncpu) 38 | make package THEOS_PACKAGE_SCHEME=rootless FINALPACKAGE=1 -j$(sysctl -n hw.ncpu) 39 | make package THEOS_PACKAGE_SCHEME=roothide FINALPACKAGE=1 -j$(sysctl -n hw.ncpu) 40 | 41 | - name: Upload specific Deb packages 42 | uses: actions/upload-artifact@v4.6.0 43 | with: 44 | name: DYEnablePanelModernStyle 45 | path: ${{ github.workspace }}/packages/*.deb 46 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .theos 2 | packages 3 | .DS_Store -------------------------------------------------------------------------------- /DYEnablePanelModernStyle.plist: -------------------------------------------------------------------------------- 1 | { Filter = { Bundles = ( "com.ss.iphone.ugc.Aweme" ); }; } 2 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | # 2 | # DYYY 3 | # 4 | # Copyright (c) 2024 huami. All rights reserved. 5 | # Channel: @huamidev 6 | # Created on: 2025/04/06 7 | # 8 | 9 | TARGET = iphone:clang:latest:15.0 10 | ARCHS = arm64 arm64e 11 | 12 | #export THEOS=/Users/huami/theos 13 | #export THEOS_PACKAGE_SCHEME=roothide 14 | 15 | ifeq ($(SCHEME),roothide) 16 | export THEOS_PACKAGE_SCHEME = roothide 17 | else ifeq ($(SCHEME),rootless) 18 | export THEOS_PACKAGE_SCHEME = rootless 19 | endif 20 | 21 | export DEBUG = 0 22 | INSTALL_TARGET_PROCESSES = Aweme 23 | 24 | PACKAGE_VERSION = 1.1 25 | 26 | include $(THEOS)/makefiles/common.mk 27 | 28 | TWEAK_NAME = DYEnablePanelModernStyle 29 | 30 | DYEnablePanelModernStyle_FILES = Tweak.x 31 | DYEnablePanelModernStyle_CFLAGS = -fobjc-arc 32 | 33 | include $(THEOS_MAKE_PATH)/tweak.mk 34 | 35 | THEOS_DEVICE_IP = 192.168.31.222 36 | THEOS_DEVICE_PORT = 22 37 | 38 | clean:: 39 | @echo -e "\033[31m==>\033[0m Cleaning packages…" 40 | @rm -rf .theos packages 41 | 42 | after-package:: 43 | @if [ "$(THEOS_PACKAGE_SCHEME)" = "roothide" ] && [ "$(INSTALL)" = "1" ]; then \ 44 | echo -e "\033[31m==>\033[0m Installing package to device…"; \ 45 | DEB_FILE=$$(ls -t packages/*.deb | head -1); \ 46 | PACKAGE_NAME=$$(basename "$$DEB_FILE" | cut -d'_' -f1); \ 47 | ssh root@$(THEOS_DEVICE_IP) "rm -rf /tmp/$${PACKAGE_NAME}.deb"; \ 48 | scp "$$DEB_FILE" root@$(THEOS_DEVICE_IP):/tmp/$${PACKAGE_NAME}.deb; \ 49 | ssh root@$(THEOS_DEVICE_IP) "dpkg -i --force-overwrite /tmp/$${PACKAGE_NAME}.deb && rm -f /tmp/$${PACKAGE_NAME}.deb"; \ 50 | fi 51 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # DYEnablePanelModernStyle 2 | 强制启用新版抖音长按 UI(现代风) 3 | --- 4 | 请勿用于商业用途 -------------------------------------------------------------------------------- /Tweak.x: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | %group needDelay 4 | %hook AWELongPressPanelManager 5 | - (BOOL)shouldShowModernLongPressPanel { 6 | return YES; 7 | } 8 | %end 9 | %hook AWELongPressPanelDataManager 10 | + (BOOL)enableModernLongPressPanelConfigWithSceneIdentifier:(id)arg1 { 11 | return YES; 12 | } 13 | %end 14 | %hook AWELongPressPanelABSettings 15 | + (NSUInteger)modernLongPressPanelStyleMode { 16 | return 1; 17 | } 18 | %end 19 | %hook AWEModernLongPressPanelUIConfig 20 | + (NSUInteger)modernLongPressPanelStyleMode { 21 | return 1; 22 | } 23 | %end 24 | %end 25 | %ctor { 26 | dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ 27 | %init(needDelay); 28 | }); 29 | } -------------------------------------------------------------------------------- /control: -------------------------------------------------------------------------------- 1 | Package: com.huami.dyenablepanelmodernstyle 2 | Name: DYEnablePanelModernStyle 3 | Version: 1.1 4 | Architecture: iphoneos-arm 5 | Description: 强制启用新版抖音长按 UI(现代风) 6 | Maintainer: huami 7 | Author: huami 8 | Section: Tweaks 9 | Depends: mobilesubstrate (>= 0.9.5000) 10 | --------------------------------------------------------------------------------