2024年4月22日 星期一

將捷徑內建取得電池數據,傳給Pythonista套件工具

 經由前篇生成Pythonista專家的指導,協助瞭解如何將內建捷徑取得參數⌈取得 電池電量⌋,傳遞給Pythonista 參考資訊

階段一: (設置iPhone捷徑工作)

步驟1: 新增捷徑 | 取得 電池電量

步驟2:URL   , 參數為    pythonista://battery_status?action=run&argv= 電池狀態

步驟3:打開 URL

 

階段二: (將下面藍色部分之Python程式,在根目錄中 (通常目錄在 [ ~/Documents] $  ,另存成battery_status.py ,需儲存到  Pythonista套件,範例目錄Examples的上一層),階段一執行的數據才能順利經由sys.argv 抛給PYTHON接收

import sys
import time
import objc_util

if __name__ == '__main__':
    current_level =float(str(sys.argv[1]))
    
    print(f"Current battery level (數據來源:iPhone捷徑  電池電量): {current_level:.1f}%")  
    
UIDevice=objc_util.ObjCClass('UIDevice')
device = UIDevice.currentDevice()
batteryLevel = device.batteryLevel()

# Ensure conversion to float for calculations
#batteryLevel = #float(str(batteryLevel))


device.setBatteryMonitoringEnabled_(True)

batteryLevel = device.batteryLevel()
print(f"Current Battery Level(
objc_util 模組): {batteryLevel * 100:.1f}%")

 

💜Url Scheme電池捷徑相關設定

💜其它Battery參考資訊,不一定正確(充電器規格、溫度、電池健康度等因素) (可由Gemini Pro 查詢相關PYTHON程式碼)

initial_level = device.batteryLevel()

#Calculate Elapsed Time and Charging Rate
charging_rate = (batteryLevel - initial_level) / elapsed_time

#概估充電充飽時間
remaining_charge = 1.0 - batteryLevel
estimated_time = remaining_charge / charging_rate