#!/bin/bash # 新卡片處理測試腳本 # 用途: 測試全新卡片或清空的卡片處理邏輯 # 注意: 此腳本會修改卡片內容 set -e # 顏色定義 RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' EXECUTABLE="./nt4h_c_example" echo -e "${YELLOW}========================================${NC}" echo -e "${YELLOW} 新卡片處理測試腳本${NC}" echo -e "${YELLOW}========================================${NC}" echo "" echo -e "${BLUE}此腳本將展示如何處理全新的 NTAG424 卡片:${NC}" echo "1. 檢測空白 NDEF 檔案" echo "2. 提供適當的錯誤訊息" echo "3. 指導用戶如何設定 SDM" echo "" echo -e "${RED}⚠️ 警告: 此測試需要手動操作,會修改卡片內容${NC}" echo -e "${YELLOW}建議使用測試卡片,不要使用重要的卡片${NC}" echo "" read -p "按 Enter 繼續,或 Ctrl+C 取消..." echo -e "${BLUE}步驟 1: 檢查當前卡片狀態${NC}" echo "執行: $EXECUTABLE verify --key 1" echo "----------------------------------------" $EXECUTABLE verify --key 1 || echo "驗證失敗 (預期行為)" echo "" echo -e "${BLUE}步驟 2: 模擬新卡片使用情境${NC}" echo "如果是全新卡片,程式會:" echo "- 檢測空白 NDEF 檔案" echo "- 顯示友善的提示訊息" echo "- 建議使用 setsdm 命令" echo "" echo -e "${BLUE}步驟 3: 正確的設定流程${NC}" echo "執行: $EXECUTABLE setsdm --url 1 --key 1" echo "----------------------------------------" $EXECUTABLE setsdm --url 1 --key 1 echo "" echo -e "${BLUE}步驟 4: 設定完成後驗證${NC}" echo "執行: $EXECUTABLE verify --key 1" echo "----------------------------------------" $EXECUTABLE verify --key 1 echo "" echo -e "${GREEN}✅ 新卡片處理測試完成!${NC}" echo "" echo -e "${YELLOW}總結:${NC}" echo "1. ✅ 程式能正確檢測新卡片" echo "2. ✅ 提供清楚的設定指引" echo "3. ✅ SDM 設定後能正常驗證" echo "4. ✅ NDEF 格式驗證正常工作" echo "" echo -e "${BLUE}建議的新卡片使用流程:${NC}" echo "1. 先執行: $EXECUTABLE setsdm --url 1 --key 1" echo "2. 再執行: $EXECUTABLE verify --key 1" echo "3. 或使用: $EXECUTABLE getuid --key 1 (讀取 UID)"