iPhone行事曆如何同步提醒事項?用自動化腳本輕鬆實現 - 瘋先生
文章推薦指數: 80 %
下載並且打開「Scripts」App,點選右上角「+」新增按鈕,會出現新的腳本頁面,點擊上方「Untitled Script」文字後,將名稱改為「提醒事項同步行事曆」。
蘋果發表會懶人包
iPhone14懶人包
AirPodsPro2
iOS16
iPhone換電池
聯絡瘋先生
沒有結果
查看所有結果
蘋果新聞
Apple發表會
教學
iOS教學
iPadOS教學
AirPods教學
AppleWatch教學
HomePod教學
AppleMusic教學
AppleTV教學
MAC教學
CarPlay教學
iOS捷徑
APP教學
JB越獄
越獄新聞
iOS越獄教學
Cydia插件
CydiaiOS12插件
CydiaiOS11插件
CydiaiOS10插件
CydiaiOS9插件
CydiaiOS8插件
CydiaiOS7插件
CydiaiOS6插件
Cydia疑難雜症
tvOS越獄
開箱評測
3C科技
Facebook
Instagram
LINE
Netflix
Gogoro
瀏覽器
限時免費
下載
iOS韌體下載
桌布
字體下載
蘋果新聞
Apple發表會
教學
iOS教學
iPadOS教學
AirPods教學
AppleWatch教學
HomePod教學
AppleMusic教學
AppleTV教學
MAC教學
CarPlay教學
iOS捷徑
APP教學
JB越獄
越獄新聞
iOS越獄教學
Cydia插件
CydiaiOS12插件
CydiaiOS11插件
CydiaiOS10插件
CydiaiOS9插件
CydiaiOS8插件
CydiaiOS7插件
CydiaiOS6插件
Cydia疑難雜症
tvOS越獄
開箱評測
3C科技
Facebook
Instagram
LINE
Netflix
Gogoro
瀏覽器
限時免費
下載
iOS韌體下載
桌布
字體下載
沒有結果
查看所有結果
沒有結果
查看所有結果
首頁
Apple新聞
iPhone行事曆如何同步提醒事項?用自動化腳本輕鬆實現
by
瘋先生
2022-03-20
分享到LINE分享到Facebook分享到Twitter分享到Wechat
相信有不少人都會將臨時代辦事項記錄在iPhone「提醒事項」App內,如果想要將iOS「提醒事項」自動同步到「行事曆」內要怎麼做?同步功能似乎需要依賴第三方App才能達成,那有沒有免費又能快速解決的方案?
其實要讓iOS提醒事項與行事曆同步透過捷徑自動化就能輕鬆實現,這篇就來分享搭配自動化Scripts腳本,實現每次透過iPhone提醒事項紀錄生活瑣碎的事情,都能自動同步到行事曆內。
通常iOS內建「提醒事項」App,如果要將代辦事項同步到行事曆內,都要手動點選才能搬移加入,這種做法非常不人性化,反而比較推薦讓行事曆與提醒事項同步會更智慧又省時,實現效果如下畫面,當iPhone在提醒事項內增加後,就會立即同步到行事曆內,省去要手動搬移的步驟,實現步驟可參考底下iPhone行事曆如何同步提醒事項教學:
如何將iPhone行事曆同步提醒事項教學
本篇教學不管是iPhone或iPad設備都能使用,系統需iOS14或iPadOS14或以上。
1.替iOS行事曆與提醒事項建立相同列表
要實現iPhone行事曆與提醒事項同步功能,要在兩款App內都建立相同的列表名稱,後續才能同步。
先打開「提醒事項」App,點選右下角「新增列表」,自訂想同步的列表名。
接下來開啟iOS內建「行事曆」App,點選底下「行事曆」會進入行事曆列表清單,點選左下角「加入行事曆」。
輸入與「提醒事項」App相同的列表名稱,按下右上角「完成」,後續想將重要事情紀錄在同步的列表內即可。
2.建立Scripts同步腳本
為了能夠實現iPhone內建行事曆與提醒事項同步,我們需要利用「ScriptsApp」來運行自動化JavaScript腳本。
ScriptableAppStore下載位置
下載並且打開「Scripts」App,點選右上角「+」新增按鈕,會出現新的腳本頁面,點擊上方「UntitledScript」文字後,將名稱改為「提醒事項同步行事曆」。
並且將後面的iOS提醒事項同步行事曆代碼直接複製貼上,按下「Done」關閉。
iOS提醒事項同步行事曆代碼
腳本原作者:汀力
vardur_month=1
conststartDate=newDate()
startDate.setMonth(startDate.getMonth()-dur_month)
console.log(`日曆的開始時間${startDate.toLocaleDateString()}`)
constendDate=newDate()
endDate.setMonth(endDate.getMonth()+dur_month)
console.log(`日曆的結束時間${endDate.toLocaleDateString()}`)
constreminders=awaitReminder.allDueBetween(startDate,endDate)
console.log(`獲取${reminders.length}條提醒事項`)
varcalendar=awaitCalendar.forEvents()
//獲取日曆名和對應的日曆
varm_dict={}
for(calofcalendar)
{
m_dict[cal.title]=cal
//console.log(`日曆:${cal.title}`)
}
constevents=awaitCalendarEvent.between(startDate,endDate,calendar)
console.log(`獲取${events.length}條日曆`)
varreminders_id_set=newSet(reminders.map(e=>e.identifier))
//刪除日曆里提醒事項刪除的事項
events_created=events.filter(e=>e.notes!=null&&e.notes.includes("[Reminder]"))
for(leteventofevents_created){
//console.warn(event.notes)
letreg=/(\[Reminder\])\s([A-Z0-9\-]*)/
letr=event.notes.match(reg)
//if(r)console.log(r[2])
if(!reminders_id_set.has(r[2]))
{
event.remove()
}
}
for(constreminderofreminders){
//reminder的標識符
consttargetNote=`[Reminder]${reminder.identifier}`
const[targetEvent]=events.filter(e=>e.notes!=null&&e.notes.includes(targetNote))//過濾重復的reminder
if(!m_dict[reminder.calendar.title])
{
console.warn("找不到日曆"+reminder.calendar.title)
continue
}
if(targetEvent){
//console.log(`找到已經創建的事項${reminder.title}`)
updateEvent(targetEvent,reminder)
}else{
console.warn(`創建事項${reminder.title}到${reminder.calendar.title}`)
constnewEvent=newCalendarEvent()
newEvent.notes=targetNote+"\n"+reminder.notes//要加入備注
updateEvent(newEvent,reminder)
}
}
Script.complete()
functionupdateEvent(event,reminder){
event.title=`${reminder.title}`
cal_name=reminder.calendar.title
cal=m_dict[cal_name]
event.calendar=cal
//console.warn(event.calendar.title)
//已完成事項
if(reminder.isCompleted)
{
event.title=`✅${reminder.title}`
event.isAllDay=true
event.startDate=reminder.dueDate
event.endDate=reminder.dueDate
//varending=newDate(reminder.completionDate)
//ending.setHours(ending.getHours()+1)
//event.endDate=ending
varperiod=(reminder.dueDate-reminder.completionDate)/1000/3600/24
period=period.toFixed(1)
if(period<0)
{
period=-period
event.location="延期"+period+"天完成"
}
elseif(period==0)
{
event.location="準時完成"
}
else
{
event.location="提前"+period+"天完成"
}
}
//未完成事項
else{
constnowtime=newDate()
varperiod=(reminder.dueDate-nowtime)/1000/3600/24
period=period.toFixed(1)
//console.log(reminder.title+(period))
if(period<0)
{
//待辦順延
event.location="延期"+(-period)+"天"
//如果不是在同一天,設置為全天事項
if(reminder.dueDate.getDate()!=nowtime.getDate())
{
event.title=`❌${reminder.title}`
event.startDate=nowtime
event.endDate=nowtime
event.isAllDay=true
}
//在同一天的保持原來的時間
else
{
event.title=`⭕️${reminder.title}`
event.isAllDay=false
event.startDate=reminder.dueDate
varending=newDate(reminder.dueDate)
ending.setHours(ending.getHours()+1)
event.endDate=ending
}
console.log(`【${reminder.title}】待辦順延${-period}天`)
}
else
{
event.title=`⭕️${reminder.title}`
event.isAllDay=false
event.location="還剩"+period+"天"
event.startDate=reminder.dueDate
varending=newDate(reminder.dueDate)
ending.setHours(ending.getHours()+1)
event.endDate=ending
}
}
if(!reminder.dueDateIncludesTime)
event.isAllDay=true
event.save()
}
會看見「提醒事項同步行事曆」Scripts腳本後,就可以退回主畫面。
3.建立捷徑自動化
開啟「捷徑」App,點選「自動化」>「製作個人自動化操作」,選擇「App」。
按下「App」按鈕,搜尋並且勾選「提醒事項」和「行事曆」。
最後確定自動化操作是否設定為「已開啟」,就可以按「下一步」。
在動作編輯頁面中,點選「加入動作」。
利用搜尋找到「Scriptable」,並且從RunScript內選擇剛創建的JavaScript自動化腳本。
最後點擊「下一步」。
會進入自動化執行設定頁面,將「執行前先詢問」和「執行時通知」兩項功能都關閉,最後點擊「完成」。
4.排除自動化錯誤
以上步驟就能實現打開內建「行事曆」或「提醒事項」App,就會立即自動同步,不過Sctiptable沒有設定好權限,會導致執行腳本會出現「找不到日曆錯誤」情況,會發現兩個App之間沒辦法同步,底下告訴大家解決方法。
(此步驟一定要做)
先打開iOS內建「設定」,找到「Scriptable」控制設定,將「行事曆」和「提醒事項」關閉再次開啟,偏好語言設定為「英文」。
都設定完成後,將iPhone重開機一次,打開「Scriptable」App執行「提醒事項同步行事曆」腳本,觀察Log如果沒有跳出任何黃字錯誤,能夠正常運行就代表已經成功。
5.實現行事曆與提醒事項同步
以上全部都設定完成後,後續只要打開「行事曆」或「提醒事項」其中一款App就會立即同步,只要紀錄在「提醒事項」App的未完成的代辦事項,就會立即同步到「行事曆」App內,甚至會顯示還剩多少時間。
要是完成的代辦事項,在行事曆內也會看間打勾狀態,透過行事曆也能清楚知道今天有哪些未完成的工作,不管是日常生活、工作或學業都很方便。
要是打開行事曆App沒有出現提醒事項的項目,檢查「提醒事項」內是否有設定日期時間,或是將行事曆App從後台關閉再次打開就可以,當然也可以建立好幾組提醒事項列表,只要行事曆有對應的名稱兩邊就能夠同步。
如何刪除行事曆內的提醒事項項目?
要是有些提醒事項已經完成,還是會一直顯示在iOS行事曆內要怎麼刪除?這部分要透過刪除提醒事項的項目才能移除,操作方法如下:
打開「提醒事項」App的項目,按下右上角「•••」>「顯示已完成的項目」。
列表就會顯示已經完成的代辦事項,往左滑動選擇「刪除」已經完成的事項,就能夠將行事曆已完成的項目也移除。
功能總結
透過這篇技巧後,就可以讓iPhone行事曆與提醒事項進行同步功能,而且免費又方便,只要有新增移除和編輯動作,一切透過提醒事項內操作就可以,行事曆只是單純顯示。
更多實用技巧:
如何設定Siri打電話給男女朋友?iPhone自訂相關聯絡人技巧
iPhone提醒事項教學攻略,13招超實用必學上手技巧
如何查看iPhone電池循環次數?免捷徑秒查充電循環次數
喜歡這篇文章教學,後續想了解更多Apple資訊、iPhone、Mac、3C隱藏技巧,歡迎追蹤瘋先生FB粉絲團、瘋先生[email protected]、Telegram、Instagram以及 訂閱YouTube頻道,將會有更多非常實用的技巧教學分享給大家。
標籤:iosiPadOSiphone同步提醒事項行事曆
非經授權請勿全文轉貼 隱私權政策 |歡迎iPhone週邊業者、手機商和App軟體開發者合作和產品測試事宜,聯繫瘋先生
沒有結果
查看所有結果
蘋果新聞
Apple發表會
教學
iOS教學
iPadOS教學
AirPods教學
AppleWatch教學
HomePod教學
AppleMusic教學
AppleTV教學
MAC教學
CarPlay教學
iOS捷徑
APP教學
JB越獄
越獄新聞
iOS越獄教學
Cydia插件
CydiaiOS12插件
CydiaiOS11插件
CydiaiOS10插件
CydiaiOS9插件
CydiaiOS8插件
CydiaiOS7插件
CydiaiOS6插件
Cydia疑難雜症
tvOS越獄
開箱評測
3C科技
Facebook
Instagram
LINE
Netflix
Gogoro
瀏覽器
限時免費
下載
iOS韌體下載
桌布
字體下載
非經授權請勿全文轉貼 隱私權政策 |歡迎iPhone週邊業者、手機商和App軟體開發者合作和產品測試事宜,聯繫瘋先生
延伸文章資訊
- 1在iPhone 上的「行事曆」中製作和編輯行程 - Apple Support
選擇你想接到提醒的方式。 例如「行程的發生時間」、「5 分鐘前」或其他選項。 【注意】如果你加入行程位置的地址,「行事曆」會使用Apple「地圖」來尋找位置、交通 ...
- 2iPhone內建「提醒事項」其實超好用!10大「隱藏版技巧」讓 ...
今天編輯就要告訴大家iPhone內建的「提醒事項」App,有十個實用功能可以 ... 地點傳給你時,不但可以將其直接加入行事曆,也能一舉同步到提醒事項裡, ...
- 3iPhone內建「提醒事項」神好用!3個必學功能攻略:繳費
另外,我們也可以從「新增列表」開始設定,這邊適合做check list的設定,同時可以設定顏色來標誌區別。 功能02.新增時間地點. 打好列表內容,若想做時間上的提醒,只要在 ...
- 4iPhone行事曆如何同步提醒事項?用自動化腳本輕鬆實現 - 瘋先生
下載並且打開「Scripts」App,點選右上角「+」新增按鈕,會出現新的腳本頁面,點擊上方「Untitled Script」文字後,將名稱改為「提醒事項同步行事曆」。
- 5【APP小技巧】備忘錄︱提醒事項︱FaceTime︱行事曆…輕鬆 ...
設定《提醒事項》來追蹤你的代辦事項,並幫你記住重要資訊。iPhone與iPad使用者可以藉由標籤功能,以快速、彈性的方式來整理提醒事項。在你的提醒事項中 ...