สุดยอดความคิดเห็น
ความคิดเห็นที่ 1
เป็นการใช้คำสั่ง itms-services://?action=download-manifest&url= มาดึงไฟล์ Plist ที่ระบุชนิด ที่ตั้ง และายละเอียดต่างๆของแอปครับ ซึ่ง คำสั่ง itms-services://?action=download-manifest&url= จะมีหน้าที่เปิดไฟล์ Plist และติดตั้งแอพครับ
ในส่วนของไฟล์ Plist นั่นจำเป็นต้องระบุหลายๆอย่าง ลองศึกษาจากตัวอย่างด้านล่างนี้นะครับ
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>ตรงนี้ให้ใส่ url ของไฟล์ ipa ครับ อาจเอาไปฝากไว้ที่ one2up ก็ได้</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>ตรงนี้เราต้องหาจากไฟล์ ipa ครับ ซึ่งจะอธิบายในขั้นตอนถัดไป</string>
<key>bundle-version</key>
<string>ตรงนี้ระบุเวอร์ชั้นของแอพ</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>ตรงนี้ใส่ชื่อของแอพครับ</string>
</dict>
</dict>
</array>
</dict>
</plist>
เอาล่ะ มาถึงขั้นตอนการหารายละเอียดต่างๆไปใส่ในไฟล์ plist ครับ
อันดับแรกเราต้องแตกไฟล์ ipa ที่เราโหลดมาจาก iTunes ก่อน ด้วย 7zip ครับ
จากนั้นมองหาไฟล์ที่ชื่อ iTunesMetadata.plist แล้วเปิดออก ด้วย XCode
ถ้าทำบน Windows ให้โหลดโปรแกรม plist Editor มาเปิดไฟล์ครับ
จะได้หน้าตาประมาณนี้ครับ
สิ่งที่เราต้องมองหาคือ
bundleVersion
itemName
softwareVersionBundleId
ซึ่งจะเอาไปใส่ในไฟล์ Plist ตามนี้ครับ
bundle-identifier ใส่ softwareVersionBundleId
bundle-version ใส่ bundleVersion
title ใส่ itemName
ตัวอย่างจากแอพ TVTH HD นะครับ
bundleVersion = 1.0
itemName = TVTH HD
softwareVersionBundleId = com.ratanon.tvthhd
เวลาเอาไปใส่ Plist ก็จะเป็นแบบนี้
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>URL IPA FILE</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.ratanon.tvthhd</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>TVTH HD</string>
</dict>
</dict>
</array>
</dict>
</plist>
ตอนนี้เหลืออีกอย่างเดียวคือเอาไฟล์ ipa ต้นฉบับไปอัพลงเวปครับ
ต้องเป็นเวปฝากไฟล์ที่สามารถโหลดตรงได้เท่านั้น จากที่ใช้ๆตอนนี้คือ One2up และ Mediafire ( Pro )
หลังอัพโหลดเสร็จก็นำ link มาใส่ที่ url ในไฟล์ Plist ครับ
ตัวอย่างเช่น ถ้าผมอัพไฟล์ TVTH HD.ipa ไปที่เวป One2up แล้ว จะได้ลิ้งมาประมาณนี้
http://dl-6.one2up.com/x/x/xxxxxxxxxxxxxx.ipa
ถ้านำไปใส่ในไฟล์ plist จะได้ประมาณนี้ครับ
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>http://dl-6.one2up.com/x/x/xxxxxxxxxxxxxx.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.ratanon.tvthhd</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>TVTH HD</string>
</dict>
</dict>
</array>
</dict>
</plist>
จากนั้นก็ทำการบันทึกไฟล์ โดยกดที่ File > Save as
เป็นอันเสร็จการทำไฟล์ Plist สำหรับแอพ 1 ตัวครับ ถ้ามีหลายๆตัว ก็ต้องทำหลายๆอันอะนะครับ
ต่อไปก็ต้องนำไฟล์ plist ไปอัพขึ้นเวปอีกแนะนำให้ใช้ Dropbox หรือเวปที่มี https นะครับ
เพื่อป้องกับปัญหาที่อาจเกิดขึ้นและทำให้รองรับการติดตั้งบน iOS 7.1 ด้วยครับ
จากนั้นมาถึงขั้นตอนสุดท้ายคือการนำคำสั่ง a href มาใช้ร่วมกับ
itms-services://?action=download-manifest&url= และไฟล์ Plist ครับผม
ตัวอย่างเช่นถ้าผมอัพไฟล์ plist ของเกม Minecraft ไปไว้ที่นึง แล้วได้ลิ้งมาเป็น
https://xxx/Minecraft.plist ให้นำมาใช้งานประมาณนี้นะครับ ตามตัวอย่างด้านล่าง
เท่านี้ก็เสร็จละครับ ลองศึกษาดูนะครับ
เพิ่มเติม Video และลิ้งไฟล์ตัวอย่าง
Download Plist Edit + Sample File
http://www.one2up.com/view_content.php?content_ID=688916
ในส่วนของไฟล์ Plist นั่นจำเป็นต้องระบุหลายๆอย่าง ลองศึกษาจากตัวอย่างด้านล่างนี้นะครับ
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>ตรงนี้ให้ใส่ url ของไฟล์ ipa ครับ อาจเอาไปฝากไว้ที่ one2up ก็ได้</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>ตรงนี้เราต้องหาจากไฟล์ ipa ครับ ซึ่งจะอธิบายในขั้นตอนถัดไป</string>
<key>bundle-version</key>
<string>ตรงนี้ระบุเวอร์ชั้นของแอพ</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>ตรงนี้ใส่ชื่อของแอพครับ</string>
</dict>
</dict>
</array>
</dict>
</plist>
เอาล่ะ มาถึงขั้นตอนการหารายละเอียดต่างๆไปใส่ในไฟล์ plist ครับ
อันดับแรกเราต้องแตกไฟล์ ipa ที่เราโหลดมาจาก iTunes ก่อน ด้วย 7zip ครับ
จากนั้นมองหาไฟล์ที่ชื่อ iTunesMetadata.plist แล้วเปิดออก ด้วย XCode
ถ้าทำบน Windows ให้โหลดโปรแกรม plist Editor มาเปิดไฟล์ครับ
จะได้หน้าตาประมาณนี้ครับ
สิ่งที่เราต้องมองหาคือ
bundleVersion
itemName
softwareVersionBundleId
ซึ่งจะเอาไปใส่ในไฟล์ Plist ตามนี้ครับ
bundle-identifier ใส่ softwareVersionBundleId
bundle-version ใส่ bundleVersion
title ใส่ itemName
ตัวอย่างจากแอพ TVTH HD นะครับ
bundleVersion = 1.0
itemName = TVTH HD
softwareVersionBundleId = com.ratanon.tvthhd
เวลาเอาไปใส่ Plist ก็จะเป็นแบบนี้
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>URL IPA FILE</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.ratanon.tvthhd</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>TVTH HD</string>
</dict>
</dict>
</array>
</dict>
</plist>
ตอนนี้เหลืออีกอย่างเดียวคือเอาไฟล์ ipa ต้นฉบับไปอัพลงเวปครับ
ต้องเป็นเวปฝากไฟล์ที่สามารถโหลดตรงได้เท่านั้น จากที่ใช้ๆตอนนี้คือ One2up และ Mediafire ( Pro )
หลังอัพโหลดเสร็จก็นำ link มาใส่ที่ url ในไฟล์ Plist ครับ
ตัวอย่างเช่น ถ้าผมอัพไฟล์ TVTH HD.ipa ไปที่เวป One2up แล้ว จะได้ลิ้งมาประมาณนี้
http://dl-6.one2up.com/x/x/xxxxxxxxxxxxxx.ipa
ถ้านำไปใส่ในไฟล์ plist จะได้ประมาณนี้ครับ
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>http://dl-6.one2up.com/x/x/xxxxxxxxxxxxxx.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.ratanon.tvthhd</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>TVTH HD</string>
</dict>
</dict>
</array>
</dict>
</plist>
จากนั้นก็ทำการบันทึกไฟล์ โดยกดที่ File > Save as
เป็นอันเสร็จการทำไฟล์ Plist สำหรับแอพ 1 ตัวครับ ถ้ามีหลายๆตัว ก็ต้องทำหลายๆอันอะนะครับ
ต่อไปก็ต้องนำไฟล์ plist ไปอัพขึ้นเวปอีกแนะนำให้ใช้ Dropbox หรือเวปที่มี https นะครับ
เพื่อป้องกับปัญหาที่อาจเกิดขึ้นและทำให้รองรับการติดตั้งบน iOS 7.1 ด้วยครับ
จากนั้นมาถึงขั้นตอนสุดท้ายคือการนำคำสั่ง a href มาใช้ร่วมกับ
itms-services://?action=download-manifest&url= และไฟล์ Plist ครับผม
ตัวอย่างเช่นถ้าผมอัพไฟล์ plist ของเกม Minecraft ไปไว้ที่นึง แล้วได้ลิ้งมาเป็น
https://xxx/Minecraft.plist ให้นำมาใช้งานประมาณนี้นะครับ ตามตัวอย่างด้านล่าง
<a href="itms-services://?action=download-manifest&url=https://xxx/Minecraft.plist">Minecraft</a>
เท่านี้ก็เสร็จละครับ ลองศึกษาดูนะครับ
เพิ่มเติม Video และลิ้งไฟล์ตัวอย่าง
Download Plist Edit + Sample File
http://www.one2up.com/view_content.php?content_ID=688916
แสดงความคิดเห็น
สอบถามการทำsideload อย่างappX
http://pdamobiz.com/forum/forum_posts.asp?TID=692057
ผมอยากรู้ว่าเค้าทำยังไง ผมอยากลองทำมั่งใครรู้จริงตอบหน่อยนะคับ pattanuninw@me.com