กิจกรรม
คำสั่งต่อไปนี้ทำงานในขณะที่ทำงานกับ iCloud กับแอพ (เช่น Smultron 4 และ TextEdit) ที่รองรับเอกสารมือถือ -
sudo opensnoop -n ubd
- แสดงไฟล์ภายในเครื่องที่เปิดโดย ubiquity daemon ไฟล์รวมถึงฐานข้อมูลหนึ่งฐานข้อมูลต่อเพียร์ หนึ่งไดเรกทอรีต่อเพียร์ที่เส้นทางต่อไปนี้:
~/Library/Application Support/Ubiquity
ประเภทของข้อมูล
หากคุณต้องการวัดความก้าวหน้าให้ตัดสินใจว่าจะวัดประเภทใด:
- ข้อมูลหลัก
- เอกสาร
- ค่าคีย์
บันทึกความคืบหน้าและการวัด
ข้อมูลหลัก
... ไฟล์บันทึกการเปลี่ยนแปลงที่ไม่ใช่ไฟล์ร้านค้าจะถูกอัปโหลดไปยัง iCloud และดาวน์โหลดไปยังอุปกรณ์อื่น ๆ ของผู้ใช้ เมื่อบันทึกการเปลี่ยนแปลงมาจากอุปกรณ์อื่นที่เชื่อมต่อกับบัญชี iCloud เดียวกัน Core Data จะอัพเดทสำเนาโลคัลฐานข้อมูล SQLite ของแอปของคุณตามบันทึกการเปลี่ยนแปลงที่ได้รับ iCloud และ Core Data ให้แน่ใจว่าแต่ละฐานข้อมูลโลคัลถูกอัพเดตด้วยชุดการเปลี่ยนแปลงเดียวกัน ...
พิจารณาโดยไม่ต้องตีความเนื้อหาของบันทึกการเปลี่ยนแปลงก็จะคุ้มค่าที่จะวัดความก้าวหน้าของการอัปโหลดของล็อกไฟล์?
เอกสาร
ในห้องสมุด Mac Developer:
... แอพที่ใช้เอกสารสามารถนำการบันทึกอัตโนมัติมาใช้และเอกสารจะถูกบันทึกโดยอัตโนมัติตามเวลาที่เหมาะสม ...
นอกจากนี้:
กลยุทธ์การประหยัดข้อมูลอัตโนมัติช่วยบรรเทาผู้ใช้
…จุดที่เหมาะสมในรหัสของคุณซึ่งควรบันทึกการเปลี่ยนแปลงที่เกี่ยวข้องกับผู้ใช้และเขียนการเปลี่ยนแปลงเหล่านั้นลงในดิสก์โดยอัตโนมัติ ...
บางเวลาที่เหมาะสมเมื่อคุณสามารถบันทึกข้อมูลผู้ใช้โดยอัตโนมัติรวมถึงต่อไปนี้:
- เมื่อผู้ใช้ปิดหน้าต่างแอพหรือออกจากแอพ (applicationWillTerminate :)
- เมื่อแอพถูกปิดการใช้งาน (applicationWillResignActive :)
- เมื่อผู้ใช้ซ่อนแอปของคุณ (applicationWillHide :)
- เมื่อใดก็ตามที่ผู้ใช้ทำการเปลี่ยนแปลงที่ถูกต้องกับข้อมูลในแอปของคุณ
รายการสุดท้ายหมายความว่าคุณมีอิสระในการบันทึกข้อมูลของผู้ใช้เมื่อใดก็ได้ที่เหมาะสม ตัวอย่างเช่นหากผู้ใช้กำลังแก้ไขฟิลด์ของเรคคอร์ดข้อมูลคุณสามารถบันทึกค่าแต่ละฟิลด์ในขณะที่มีการเปลี่ยนแปลงหรือคุณสามารถรอและบันทึกฟิลด์ทั้งหมดเมื่อผู้ใช้แสดงระเบียนใหม่ การเปลี่ยนแปลงที่เพิ่มขึ้นเหล่านี้ทำให้มั่นใจได้ว่าข้อมูลมีความทันสมัยอยู่เสมอ แต่ยังต้องการการจัดการที่ละเอียดยิ่งขึ้นของรูปแบบข้อมูลของคุณ ...
พิจารณา: การประหยัดเหล่านั้นอาจเกิดขึ้นบ่อยครั้งและจำนวนเงินที่น้อยมากการวัดนั้นจะไม่คุ้มค่า
รายการ-info.db
ฉันเล่นกับเบราว์เซอร์ฐานข้อมูล SQLiteเพื่อเรียกดูitem-info.db
ฐานข้อมูลสำหรับเพียร์ที่น่าจะเป็นเครื่อง Mac ของฉัน ตามที่ฉันสงสัยว่าแอปสามารถเรียกดูได้ในขณะที่ระบบไม่ได้ใช้ฐานข้อมูล - ภายในสองวินาทีของการใช้ Preview เพื่อแก้ไขUntitled.png
ใน iCloud ฉันไม่สามารถเรียกดูฐานข้อมูล ... และอื่น ๆ
อ้างอิง
คู่มือการออกแบบ iCloud
คู่มือการเขียนโปรแกรม Mac App : การออกแบบแอปหลัก: