1. 修正 B000 登入 API 路徑並補上機台 Authorization Token 驗證,解決 401 授權失敗問題。 2. 遷移 login 實作至 HttpURLConnection 直連模式,確保網路連線錯誤能正確反饋至 UI。 3. 實作 persistCurrentSettings 統一持久化方法,確保 Token 變更後立即同步至 SQLite。 4. 優化 MyApp 初始化邏輯,修正 App 重啟後 ApiKey 無法從資料庫正確還原的問題。 5. 禁用 HomeActivity 與 FontendActivity 中的舊版 B010/B022 背景任務,避免新舊系統衝突。 6. 於 .agents/rules/ 新增 Star-Cloud API 開發規範文件,防止未來代碼回退。 7. 移除偵錯用的冗餘 Toast 訊息,優化使用者體驗。
1.4 KiB
1.4 KiB
| trigger |
|---|
| always_on |
Star-Cloud API 整合開發規範
本規範定義了對接 Star-Cloud 後台時的授權與穩定性要求。
1. API 授權機制 (Bearer Auth)
Important
Star-Cloud 採用的機台預授權模式,要求除 B014 (綁定) 外的所有請求都必須具備身分證明。
- 機台 Header:
- 必須在 Header 帶入
Authorization: Bearer [MachineToken]。 - 即使是管理員登入 (
B000) 請求,也必須先帶上綁定時獲得的機台 Token。
- 必須在 Header 帶入
- 持久化同步:
- 任何涉及
ApiKey(Token) 的變更,必須同步調用StarCloudAPI.persistCurrentSettings()寫入資料庫。 - 嚴禁只更新記憶體變數而不更新 SQLite。
- 任何涉及
2. 網路連線與異常處理規範
- 異常捕捉:
- 禁止在網路層級 (Scheduler/API) 使用空白的 catch 區塊。
- 發生
IOException時,必須將錯誤訊息傳遞至前端 UI 顯示(透過 Toast 或 Handler 訊息)。
- 底層實作建議:
- 對於需要高度錯誤診斷的 API(如登入),優先使用原生的
HttpURLConnection封裝,以避開框架內部的隱式錯誤處理。
- 對於需要高度錯誤診斷的 API(如登入),優先使用原生的
3. 持久化 (Persistence) 邏輯
- SettingsDao 規則:
- 存儲機台設定時應遵循「先刪後插」原則,確保資料庫中針對單一功能(如
Machine,Esunpay)始終只有一條最新紀錄。
- 存儲機台設定時應遵循「先刪後插」原則,確保資料庫中針對單一功能(如