Wednesday, January 2, 2013

Tạo File DEB và Source Cydia

Chúng ta hãy khái niệm sơ qua về cách thức hoạt động của Cydia và cách vận hành của nó!

Cydia được viết bởi Jay Freeman (saurik) cũng là 1 trong những thành viên trong iphone dev team dựa trên nền tảng unix có tính tương thích cao với HĐH MAC OS của iPhone giúp dễ dàng quản lý cũng như cài đặt các chương trình của hãng thứ 3 (liên quan tới System, nên ko được cấp phép bới Apple) nói cách khác Cydia được cài cho những máy đã Jailbreak.
Kiếm tiền từ wap 
Thay thế Installer: như chúng ta đã biết Installer 1 chương trình quá quen thuộc với những người dùng iPhone FW 1.x. Nay khi FW 2.x 3.x ra đời Cydia đã thay thế cho Installer 1 cách toàn diện.

Những gói cài đặt trên Installer là dạng .zip khi được down về thì Installer sẽ giải nén nó ra vào đường dẫn tương ứng. Cydia cũng giống vậy nhưng gói cài đặt của nó là dạng deb (DEBIAN) 1 dạng của Linux.

Cydia hoạt động bằng cách Down 1 file Packages.gz hoặc Packages.bz2 của 1 host bất kỳ và phân tích giải nén nó ra được 1 file Packages bao gồm những thông tin của toàn bộ những Packages trên Source.

Ta có 1 host làm Source cho Cydia Cydia Repo khi ta add Source này vào Cydia thì Cydia sẽ Down file Packages.bz2 của host này về giải nén được file Packages và phân tích thông tin của từng gói cài đặt bao gồm:

Packages bao gồm:
Code:
 Package: myprogram "tên này ko được trùng"
Name: MyProgram
Version: 1.0
[COLOR=Red][B]MD5sum: xxxxxxxxxxxxxxxxxxxxxxxxxxxx[/B]
[B]Filename: ./deb/MyProgram.deb[/B]
[B]Size: xxxx[/B][/COLOR]
Architecture: iphoneos-arm
Description: "Thông tin về Packages".
Homepage: Homepage <http://homepage.com> " trang chủ của Package"
Depiction: Info <http://homepage.com/ìno.html> "hình ảnh minh họa của Package"
Maintainer: Your Name <you@example.com>
Author: Jay Freeman (saurik) <saurik@saurik.com> "tên tác giả của Package"
Sponsor: Microsoft <http://www.microsoft.com/> "nhà tài trợ"
Section: Games "chuyên mục"

và nhiều gói khác ở dưới



File DEB bao gồm:

[IMG] Thư mục DEBIAN chứa file control
- file control lưu thông tin của Package
control sẽ gồm những thông tin:

Code:
 Package: myprogram "tên này ko được trùng"
Name: MyProgram
Version: 1.0
Architecture: iphoneos-arm
Architecture: iphoneos-arm
Description: "Thông tin về Packages".
Homepage: Homepage <http://homepage.com> " trang chủ của Package"
Depiction: Info <http://homepage.com/ìno.html> "hình ảnh minh họa của Package"
Maintainer: Your Name <you@example.com>
Author: Jay Freeman (saurik) <saurik@saurik.com> "tên tác giả của Package"
Sponsor: Microsoft <http://www.microsoft.com/> "nhà tài trợ"
Section: Games "chuyên mục"

Thư mục ta muốn chép vào iPhone (vd:có chương trình MyProgram.app ta chép vào Applications trên iPhone thì thư mục sẽ như trong hình)
:shocked7fl:( Hình em sẽ up sau )

Kiếm tiền từ wap 
Lúc này ta sẽ có:

Code:
+- [B]MyProgram [/B]
- [COLOR=Red]Applications[/COLOR]
+- MyProgram.app
- [COLOR=Red]DEBIAN[/COLOR]
+- control

vd: Chương trình MyProgram sau khi chép vào iPhone Build sẽ được file MyProgram.deb

Cách Build deb trên trực tiếp trên iPhone:
- Cần có Winscp hoặc iPhone PC Suite kết nối vào iPhone ta vào được root chép MyProgram vào /private/var/root set permission 0555 cho file control trong thư mục DEBIAN, set permission 0755 cho MyProgram.app.
- Bấm Ctrl + T sẽ hiện cửa sổ console ta gõ vào: dpkg-deb -b MyProgram


Lúc này ta được 1 file MyProgram.deb ta cần thêm vài thông tin của nó để thêm vào phần thông tin trong Packages trên Source


Vẫn trong console gõ tiếp: md5sum MyProgram.deb
Copy dãy số và dán vào phần MD5sum: xxxxxxxxxxxxxxxxxxxxxxxxxxxx trong file Packages

Và ghi chính xác những số ở phân Size vào trong 
Size: xxxx của Packages

Ở phần Filename: ta sẽ điền tên của deb vào Filename: ./deb/MyProgram.deb
Kiếm tiền từ wap 
OK lúc này ta đã có 1 file deb và 1 file Packages lưu thông tin của file deb đó! ta dùng 7zip nén file Packages thành bz2 hoặc gz:

- VNM.deb có thể đặt 
MyProgram.deb trong thư mục nào đó tùy thích(ta sẽ thay đổi ở phần Filename )
- Packages.bz2
- Tạo thêm 1 file tên Release
 file này sẽ lưu phần giới thiệu về Source.
Code:
Origin: Site officiel de iPhoneDelivery
[/FONT][FONT=Arial]Label: iphonedelivery.advinux.com
Suite:stable
Version: 1.0
Codename: zaphod
Architectures: iphoneos-arm
Components:main
Description: Site officiel de iPhoneDelivery
default-icon: file:///icon.png
[/FONT]
Ta tiến hành upload 3 file trên lên host và sẽ có 1 Source cơ bản:D

No comments:

Post a Comment