Dev/OS

맥북 터치바에 에어팟 배터리 상태 보여주기

여뭐준 2021. 11. 4. 11:00

Show airpods battery status from macbook touch bar

 

맥북 필수어플

알프레드와 BTT를 다운받았는데

커스텀 하는 방법을 제대로 몰라서 내버려 두다가

우연히 어떤 사람이 맥북에 커스텀 한 터치바를 봤다.

에어팟 배터리 잔량이 얼마나 남았는지 터치바에 표기되는게 너무 좋아보여서

찾고 찾다가 우리말로 번역된 정보도 없고 그래서 포스틩 하기로 결정

우선 버튼 하나로 에어팟과 연결 및 해제를 동시에 기능하면서

TouchBar UI는 에어팟 배터리 잔량을 확인 할 수 있도록 하는 게 목표

아래 사이트 들어가서 BTT 다운로드

 

folivora.ai

 

 

folivora.ai - Great Tools for your Mac!

 

folivora.ai

뭐 알아서 다운 받으시고 BTT 어플을 실행시켜주면 상단바에 이런 창이 뜸

자 이제부터는 스크린샷으로만 설명하겠음

여기까지 버튼을 눌렀을 때 에어팟과 연결해주는 기능을 만들어 보았습니다.

반대로 다시 터치바 아이콘을 클릭 할 경우 Disconnect를 하는 기능을 넣어보겠습니다.

순서는 똒같다.

 

사진 속에 설명이 안돼있어서 위젯의 이름을 설정해주는

Widget identifier 바로 위에 Common을 눌러줘야

위에 사진처럼 버튼의 배경색 및 아이콘 설정을 하는 창이 나옵니다.

배경색상과 아이콘 설정은 안해도 상관없지만

해놓는게 미관상 이쁘기 때문에 배경색을 조절하고

아이콘은 https://www.iconfinder.com/

여기서 airpods라고 검색하고 다운받았다.

여기 아래 코드를 복붙해주세요.

return do shell script "OUTPUT='###'; BLUETOOTH_DEFAULTS=$(defaults read /Library/Preferences/com.apple.Bluetooth); SYSTEM_PROFILER=$(system_profiler SPBluetoothDataType); MAC_ADDR=$(grep -b2 \"Minor Type: Headphones\"<<<\"${SYSTEM_PROFILER}\"|awk '/Address/{print $3}'); CONNECTED=$(grep -ia6 \"${MAC_ADDR}\"<<<\"${SYSTEM_PROFILER}\"|awk '/Connected: Yes/{print 1}'); BLUETOOTH_DATA=$(grep -ia6 '\"'\"${MAC_ADDR}\"'\"'<<<\"${BLUETOOTH_DEFAULTS}\"); BATTERY_LEVELS=(\"BatteryPercentCombined\" \"HeadsetBattery\" \"BatteryPercentSingle\" \"BatteryPercentCase\" \"BatteryPercentLeft\" \"BatteryPercentRight\"); if [[ \"${CONNECTED}\" ]]; then for I in \"${BATTERY_LEVELS[@]}\"; do declare -x \"${I}\"=\"$(awk -v pat=\"${I}\" '$0~pat{gsub (\";\",\"\"); print $3 }'<<<\"${BLUETOOTH_DATA}\")\"; [[ ! -z \"${!I}\" ]] && OUTPUT=\"${OUTPUT} $(awk '/BatteryPercent/{print substr($0,15,1)\": \"}'<<<\"${I}\")${!I}%\"; done; printf \"%s\\n\" \"${OUTPUT}\"; else printf \"%s Not Connected\\n\" \"${OUTPUT}\"; fi" # Version 2.3

위에 스크립트를 복사해서 붙여넣어주세요.

형광펜으로 칠한 부분은 수정해도 됩니다.

이모티콘 등 문자를 넣어주는 공간(저는 아이콘을 넣고 공백으로 두었어요)

Disconnect시 연결 안됐을 경우 뜨는 알림창

꼭 컴파일 해주셔야 돼요

원래는 연결 해제 버튼을 각각 따로 두었었는데

배터리 표시를 하고

지금은 아예 위젯 하나로 버튼 조작한다.

반응형