![]() |
發(fā)布時間: 2025-4-18 21:57
正文摘要:盒子腳本助手,單文件版本,分享給大家,如果有更好的腳本需要整合到助手里面,可用在此交流,腳本一旦采用,軟件會添加一個關(guān)于接口,以明示各位貢獻者的幫助 ... |
謝謝樓主分享 |
本帖最后由 lizhongbo 于 2025-4-24 07:46 編輯 再添加,2個腳本腳本1 #!/system/bin/sh #掛在/system目錄為可讀寫 mount -o remount,rw /system #確保只有一個腳本實例運行 #判斷腳本是否運行,如果已經(jīng)運行,則退出 Pnum=`busybox pgrep -f remote_launcher.sh|busybox wc -l` if [ $Pnum -ge 3 ]; then echo "remote_launcher.sh running" exit 3 fi # 配置文件路徑 CONFIG_FILE="/system/etc/remote_config.conf" # 日志文件 LOG_FILE="/system/etc/remote_launcher.log" # 輸入設備(自動檢測或手動指定) INPUT_DEVICE="/dev/input/event1" # 加載配置文件 load_config() { # 讀取APP映射 APP1=$(sed -n '/^app1=/s/app1=//p' "$CONFIG_FILE") APP2=$(sed -n '/^app2=/s/app2=//p' "$CONFIG_FILE") APP3=$(sed -n '/^app3=/s/app3=//p' "$CONFIG_FILE") APP4=$(sed -n '/^app4=/s/app4=//p' "$CONFIG_FILE") # 讀取遙控器鍵值(統(tǒng)一格式為0001 XXXX 00000001) RM1=$(sed -n '/^rm1=/s/rm1=//p' "$CONFIG_FILE") RM2=$(sed -n '/^rm2=/s/rm2=//p' "$CONFIG_FILE") RM3=$(sed -n '/^rm3=/s/rm3=//p' "$CONFIG_FILE") RM4=$(sed -n '/^rm4=/s/rm4=//p' "$CONFIG_FILE") # 讀取遙控器鍵值(統(tǒng)一格式為0001-XXXX-00000001) #RM1=$(sed -n '/^rm1=/s/rm1=//p' "$CONFIG_FILE" | tr ' ' '-') #RM2=$(sed -n '/^rm2=/s/rm2=//p' "$CONFIG_FILE" | tr ' ' '-') #RM3=$(sed -n '/^rm3=/s/rm3=//p' "$CONFIG_FILE" | tr ' ' '-') #RM4=$(sed -n '/^rm4=/s/rm4=//p' "$CONFIG_FILE" | tr ' ' '-') } # 記錄日志 log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" >> "$LOG_FILE" } # 檢查依賴 check_deps() { if ! command -v am >/dev/null; then log "錯誤: 'am' 命令不可用!" exit 1 fi if [ ! -e "$INPUT_DEVICE" ]; then log "錯誤: 輸入設備 $INPUT_DEVICE 不存在!" exit 1 fi } # 主循環(huán) main() { log "=== 腳本啟動 ===" log "輸入設備: $INPUT_DEVICE" log "按鍵映射:" log " $RM1 -> $APP1" log " $RM2 -> $APP2" log " $RM3 -> $APP3" log " $RM4 -> $APP4" while true; do # 獲取按鍵事件(標準化為0001-XXXX-00000001格式) RAW_CODE=$(getevent -c 1 "$INPUT_DEVICE" 2>&1 | awk '{print $2"-"$3"-"$4}') # 調(diào)試輸出(可選) # log "檢測到原始鍵值: $RAW_CODE" # 匹配按鍵并啟動對應APP case "$RAW_CODE" in "$RM1") log "檢測到按鍵1,啟動 $APP1" am start -n "$APP1" >> "$LOG_FILE" 2>&1 sleep 1 # 防抖延遲 ;; "$RM2") log "檢測到按鍵2,啟動 $APP2" am start -n "$APP2" >> "$LOG_FILE" 2>&1 sleep 1 ;; "$RM3") log "檢測到按鍵3,啟動 $APP3" am start -n "$APP3" >> "$LOG_FILE" 2>&1 sleep 1 ;; "$RM4") log "檢測到按鍵4,啟動 $APP4" am start -n "$APP4" >> "$LOG_FILE" 2>&1 sleep 1 ;; esac sleep 0.1 # 降低CPU占用 done } # 初始化 load_config check_deps main 腳本2 # 初始延遲 sleep 10 # 日志記錄 LOG="/data/local/tmp/key_monitor.log" echo "$(date) 腳本啟動" > $LOG # 使用絕對路徑 GETEVENT="/system/bin/getevent" AM="/system/bin/am" # 檢查命令是否存在 [ ! -x "$GETEVENT" ] && echo "getevent不可用" >> $LOG && exit 1 [ ! -x "$AM" ] && echo "am命令不可用" >> $LOG && exit 1 # 主循環(huán) while true; do # 獲取按鍵事件(標準化格式) CODE=$($GETEVENT -c 1 /dev/input/event1 2>&1 | tr -d '\n' | sed 's/ //g') # 調(diào)試輸出 echo "原始數(shù)據(jù): $CODE" >> $LOG # 匹配目標鍵值(去除所有空格后比較) if [ "$CODE" = "000100ac00000001" ]; then echo "檢測到目標按鍵: $CODE" >> $LOG $AM start -n com.mylejia.launcher/com.mylejia.launcher.activity.DesktopActivity >> $LOG 2>&1 # 防抖延遲 sleep 1 fi # 降低CPU占用 sleep 0.1 done |
感謝分享 我試試 |
在哪里下載? |
感謝分享 |
不知何故,軟件信息顯示不全?![]() |
感謝分享,論壇有你更精彩。 |
666看看有沒有特點 |
666 |
Archiver|新帖|標簽|軟件|Sitemap|ZNDS智能電視網(wǎng) ( 蘇ICP備2023012627號 )
網(wǎng)絡信息服務信用承諾書 | 增值電信業(yè)務經(jīng)營許可證:蘇B2-20221768 丨 蘇公網(wǎng)安備 32011402011373號
GMT+8, 2025-7-22 18:22 , Processed in 0.063662 second(s), 16 queries , Redis On.