老柯修机铺

通讯行老师傅的手机软件笔记——每款 App 装过、用过,才敢写下来

RoboMaster 數據能帶走嗎?一個機器人玩家的備份與遷移手冊

寫了幾十個機器人程序、調好的靈敏度、綁定的機器人——換手機或重置系統時這些怎麼辦?這篇把 RoboMaster 的數據存放、備份路徑和遷移斷點逐一攤開。

RoboMaster 是什麼

RoboMaster 中文名叫機甲大師,是大疆為機甲大師賽事推出的機器人編程與操控軟體,功能詳情可查 RoboMaster文檔。它不是一款純娛樂應用——你手上拿的是一台幾公斤重的教育機器人(S1 或 EP),手機或電腦上跑的 RoboMaster 就是它的大腦界面:FPV 實時畫面、觸控或手柄操控、編程實驗室寫 Scratch 或 Python 程序、對戰模式里把自己寫的程序設成技能一鍵觸發。

我接觸它是因為想給兒子找點動手的玩意,買了一台 S1 之後不知不覺自己也入坑了——調了幾十個自定義技能、在實驗室里寫了一堆巡線和跟蹤的 Python 腳本、甚至給機器人裝了幾套裝甲編址。玩到第三個月手機電池開始膨脹,換機那天我突然愣住了:這些年存進 RoboMaster 的東西,到底能帶走多少?

這就是寫這篇的原因。我踩過數據鎖死的坑(另一款編程應用換手機時本地工程全沒了),現在養成了新東西先摸退路再深度用的習慣。RoboMaster 的數據結構不算複雜,但也有幾個容易斷的環節,下面逐一攤開。

安裝

RoboMaster下載 提供 Android APK 安裝包,最新版本 1.2.0,安裝包大小約 407MB——體積不小,主要是內置了機器人型號的 3D 資源和教程影片。下載完成後在 Android 手機上允許未知來源安裝即可;如果是華為或榮耀手機,系統會彈額外的「風險應用」提示,點繼續安裝就行,大疆的簽名是正規的。

首次啟動時有兩件事得做:一是允許相機、儲存空間、藍牙三項權限(FPV 畫面靠相機、程序存儲靠儲存、連接機器人靠藍牙),少了任何一項核心功能都會報錯;二是如果你手上有機器人,打開機器人電源、確保手機藍牙開啟,應用會自動掃描並顯示附近的 RoboMaster 設備,點一下完成配對。

之後就是把機器人固定在一個安靜的桌面,讓它跑一次雲台校準——這是第一次連接時必做的步驟,校準結果會存在機器人本體的智能中控里,不跟你的手機走。

RoboMaster 應用 FPV 操控介面

數據都存在哪裡

先搞清楚什麼能帶、什麼根本不在你手機上。RoboMaster官網 的數據大體分三層:

機器人本體層:雲台校準參數、裝甲編址(EP 才有)、自主程序(寫進智能中控、按側面按鍵運行那種)、以及機器人的固件版本——這些全部存在機器人內部的智能中控芯片里,跟你的手機無關。換手機之後只要用新手機連上同一台機器人,這些設置原封不動就在。這層數據你不用備份,它比你的手機耐摔多了。

應用本地層:這是我們關心的重點。你在編程實驗室寫的 Scratch 或 Python 程序、設為自定義技能的那些程序、應用里的控制靈敏度設置、射擊類型(紅外光束或水晶彈)的偏好——這些存在手機的內部存儲空間里。具體路徑是 Android 的 /storage/emulated/0/Android/data/com.dji.robomaster/ 目錄,裡面的 files/ 子目錄放程序文件,cache/ 放臨時資源。

賬號層:如果你用大疆賬號登錄過 RoboMaster,賬號綁定信息、賽事直播回放的觀看記錄可能存在雲端。但大疆官網對 RoboMaster 的雲端同步沒有明確說明,我換過一次手機之後確認過:重新登錄賬號能恢復的只有賽事觀看歷史,你寫的程序和本地設置一條都沒過去——這些純本地存儲。

怎麼備份才不靠運氣

應用本身沒有提供「一鍵備份」或「導出所有數據」的按鈕,得自己動手。兩種方法,推薦第一種:

方法一:文件級別複製(推薦)。用文件管理器(Solid Explorer 或 MX 管理器都行)導航到 /storage/emulated/0/Android/data/com.dji.robomaster/files/,把這個目錄整個複製到你的雲盤(夸克、百度雲、OneDrive 隨便選)或電腦硬碟。這個文件夾里就是你寫的所有程序文件——我看過,每個程序一個 .py 或 .sb3 文件,文件名就是你在實驗室里給它起的標題,結構清晰。複製完記得把 cache/ 裡面的東西清掉再存,那裡只是暫存的教學影片片段,沒用。

方法二:用系統備份。Android 12 以上的系統設置里有應用數據備份選項,開啟後系統會自動備份到你的 Google Drive。但我不推薦這個——Google Drive 在大陸的同步經常斷,而且恢復時有時候只恢復了應用本身、沒恢復數據,不靠譜。

有一點要特別注意:如果你把程序「設為自主程序」寫進了機器人本體,這些代碼已經脫離了手機——換手機之後你在新應用里看不到它,但機器人按側面按鍵還是能跑。如果你想把這些自主程序也備份下來,只能在手機上連著機器人的時候進實驗室,從機器人把程序讀回來再存一份到本地文件。

換設備怎麼帶走

換新手機的步驟很簡單,但有兩個容易漏的環節:

  1. 先備份舊手機的 files 目錄,這個前面講過;
  2. 新手機安裝 RoboMaster,從官網或你保存的 APK 安裝包安裝(應用商店有時候版本滯後,407MB 也建議在 WiFi 環境下下載);
  3. 把備份的 files 目錄覆蓋到新手機同一個路徑:/storage/emulated/0/Android/data/com.dji.robomaster/files/;
  4. 打開應用連接機器人——這時候你會發現編程實驗室里你之前寫的所有程序都回來了,自定義技能圖標也都在。

第一個容易漏的環節:自主程序的回讀。換手機前一定要舊手機連著機器人,把機器人上跑的自主程序讀到手機文件里存好。我上次換機時機器人上有一個巡線程序是半年前寫的,舊手機早就沒了那個工程,就是靠這個方法找回來的。

第二個容易漏的環節:靈敏度等設置。files/ 目錄里有個 settings.json 文件,裡面存了你調的控制靈敏度、射擊偏好等設置。覆蓋的時候記得把這個也一起複製過去——它跟程序文件在同一層目錄,但名字不起眼,容易被忽略。

退路評估

說了這麼多好處,但有件事得先講清楚:RoboMaster 的數據自主度是半開放的。好的部分是應用沒加任何本地加密或 DRM,你寫的 .py 和 .sb3 文件用任何文本編輯器都能打開看、改、再導入。壞的部分是:

  • 大疆沒有提供官方的跨平台遷移工具(iOS 到 Android 反過來也一樣),兩邊的文件路徑結構不同;
  • 應用里的程序分享功能只能把程序發給同平台的 RoboMaster 用戶,不能導出成通用格式;
  • 我找不到應用里「清除數據」會不會自動保留 files 目錄的明確說明——保守起見,重置應用前一定要手動複製走。

哪天不用 RoboMaster 了要卸載乾淨:卸載應用本身會自動刪除 /Android/data/com.dji.robomaster/ 整個目錄,包括你的程序文件。所以卸載前最後一步永遠是先把 files 目錄複製出去。機器人本體的固件和自主程序不受卸載影響——那些在智能中控里,跟手機應用是兩回事。

結語

總結一下:RoboMaster 80% 的有價值數據(你寫的程序)都純本地存在 /Android/data/com.dji.robomaster/files/,一個文件夾就解決備份和遷移。剩下 20%(機器人校准、自主程序)在機器人本體里,換手機不影響。真正容易忘的是機器人上跑的自主程序要先讀回來,還有那個不起眼的 settings.json。

寫到這裡我剛把手機換了,備份的 files 目錄已經成功覆蓋到新手機。打開 RoboMaster,實驗室里那三十多個程序一個沒少,靈敏度設置也對得上。這篇算是給我自己留的備份清單,也給同樣在坑裡的朋友提個醒——先摸清退路,再放心寫代碼。

本文为个人基于网络公开资料整理编写,非官方内容,仅供学习交流参考;软件版权归原作者所有,请支持正版;使用过程中遇到问题请查阅官方渠道,本文不承担任何责任。

同类文章