原神:我現(xiàn)在有多少樹脂?iOS捷徑(快捷指令)工具
----NGA上有一篇相同的文章,來源是我自己搬運我自己----
開局先手放一個鏈接,iOS設備直接打開這個鏈接就可以直接添加快捷指令(需要拉到最底下才能添加,辛苦各位的手指了):
https://www.icloud.com/shortcuts/a055b118b8f84031869fba36137b946d
功能介紹
第一次使用時,會引導用戶輸入當前的樹脂??紤]到大部分人的樹脂應該是20/40/60一用,因此選項不是等差的。

在第二次以及之后使用時,用戶可以看到當前的樹脂(預計數(shù)量)以及預計回滿的時間。可以自己在快捷列表里面更新當前的樹脂數(shù)量。(選項尾數(shù)根據(jù)當前樹脂尾數(shù)變動)

樹脂更新完成后彈出通知顯示預計回滿的時間。

如果用戶在輸入樹脂時已經(jīng)溢出了?真的會有這種情況嗎?,則不會顯示預計回滿的時間而是直球提醒。

此時顯示的預計回滿時間為當前時間。

另外,因為捷徑在iCloud中存儲樹脂數(shù)據(jù)(因此如果iCloud空間已滿可能無法使用),所以可以跨設備進行查詢。(這里顯示的是跨語言以及12/24小時制的測試情況,測試結果看起來十分健壯?然后顧客點了一盤炒飯?)

高級玩法
如果使用iOS設備玩游戲,可以在自動化功能中設置退出原神時自動運行捷徑,更方便記錄
一些技術方面的小問題:
我一開始用的是NGA某個老哥(https://bbs.nga.cn/read.php?tid=26176881&page=2#pid505742509Anchor)做出來的工具,但是后來我發(fā)現(xiàn)了幾個非常神奇的問題:
1. 如果時間相隔超過一天的話顯示的當前樹脂會變成負數(shù)
2. 在24小時制下不能顯示正確的上午/下午,比如下午6:08和上午6:08全部顯示的是6:08。
3. 另外還有一個小問題就是我老記不得今天的日期,所以比起原po的絕對日期顯示更喜歡今天/明天這樣的相對顯示方式。
因此為了解決這些問題,我就重復造輪子了。
通過以下方式,我回避了上面的問題:
1. 既然iOS的獲取時間API寫的一塌糊涂,那就不用它——參考Linux timestamp,我使用了一個“標準時刻”即2021/1/1 00:00,通過當前時間與這個標準時刻所差的分鐘數(shù)來表示當前時刻以及樹脂恢復滿的時刻。這樣就避免了iOS獲取日期的混沌返回導致的負計算結果。
2. 我也不知道怎么做到的,總之它自己好起來了……

3. 我之前是使用捷徑中自帶的“獲取兩個日期之間的差”進行判斷的,后來發(fā)現(xiàn)這個方法中對于“一天”的定義是24小時而不是一個自然日……
因此我使用的是自定義日期的方式,統(tǒng)一使用yyyyMMdd表示當前的日期和預計恢復滿的日期,如果二者相減等于0則表示在今天,等于1則表示在明天。后天的情況等mhy給個更大的碗吧。
如果使用過程中有奇奇怪怪的bug,歡迎留言回復?要是能順手直接debug就更棒了