|
|
o係諾基亞中文網見到呢篇文章幾有用所以貼過黎,原帖網址:8 Q2 p: |2 q1 t( i3 I( N
http://nokia.tgbus.com/article/s ... 0100802153218.shtml
: q: E3 [/ ^5 h0 S6 Y翻譯與完善:Eric Zhang @ weGeeks6 T/ ^' m% ]6 Y4 c" E
3 v' ? ^2 ~% M* M: y( R* ?- s, v
3 X; ?7 h0 x& Q; n9 O
Nokia的N900自問世以來一直是國外眾多geek高手不斷折騰的物件,從超頻到自定義系統檔、kernel,再到移植運行Ubuntu/Win95甚至是MacOSX 10.3。但是這些移植項目的象徵意義遠遠大於其實際存在的價值,對於玩家和普通用戶來說,去經過繁瑣的過程把這些OS系統裝到N900上之後的成就感可能是唯一能獲得的東西。' Q1 D! X; u) @
, C0 |# E5 |5 S" @% U
而NITDroid項目則可能是N900上第一個具有較高使用價值的移植程式,該專案的目的是讓N900(包括N810、N800)的用戶能夠獲得一個可以作為完整作業系統使用的Android。早些時候曾經看過Android 1.6在N900上運行的視頻。不過上周DJ_Steve在Maemo Talk論壇上放出了最新的版本為6.0的NITDroid rootfs檔,基於Android Froyo 2.2版本,並且3D GFX功能可以正常工作,這對於NITDroid專案是個不小的進展,下面來看看這個版本的一些詳情。- Q' Q2 V4 I9 t( ~& J
+ B2 S0 ]# P2 V" v2 l
我們先通過list的方式來看看最新的6.0版本中哪些功能可以在N900上正常使用,而哪些不能:+ n b; x0 G7 q% I+ Q; k
8 C" v. l7 c8 @" {* T6 \可以正常工作的功能如下:
3 G2 A# _! F( l+ k Dual boot with Maemo 5 (雙系統/多系統啟動)6 x, D$ H1 v& m {
Screen (螢幕顯示)! U! `2 A2 F; B1 d' m: N
Touchscreen (觸摸屏)
8 u3 k; E% [; Y* R$ Q Rotation Via accelerometer (重力感應螢幕方向)
+ y4 |$ B% R5 c2 a Keyboard (鍵盤)0 ?. _8 `7 M5 f; f
Rotation on Opening/Closing keyboard (鍵盤打開/閉合時螢幕的翻轉)
( q: ~ V; B' O Lock switch, cam switch etc (鎖屏按鍵,拍照按鍵等物理重新定義功能按鍵)
9 q) _) H) O; g2 H, o' V/ V1 [ E-MMC Mounting!!! (識別並掛載eMMC)
]9 O+ f" C* U7 M4 J. K* j Music Player (音樂播放器)0 N) c, i! Z0 r2 m4 A3 j
Headphones (耳機輸出功能)
9 _# T+ i8 f5 \; I7 U Basic Power Management appears stable (電源管理功能穩定工作)
8 F5 @) P( j5 r) L. G WiFi* (See Note 1) (無線網連接)
) g3 E6 A6 s0 K5 w" J Bluetooth (藍牙)" B7 L7 z y1 X8 c9 ]1 \
Google Apps (Google原生應用)$ D/ i) z* f3 a* S! J' w
Mic (Alpha Stage) (麥克風)
! X8 ~; R% n2 S. } x Proximity sensor mapped as button (距離感應器可以用於呼出設置功能表,詳見視頻演示)
. H( L$ g+ z( z0 B" o; v1 s Some LED usage (LED指示燈)- m. F3 O: B" p1 c
3D GFX (3D圖形卡)
0 V( \1 |; X5 q/ z7 y' S" L3 E
b9 w3 y; {9 a. X" Y! E$ A當前版本尚且不能正常運行在N900上的功能:
- F N w9 i( r2 Z7 U/ Q Phone/3G/GPS** (See Note 2) (2G/3G電話功能以及GPS)
+ c4 b3 l z O. ^ Vibration (振動功能)0 \ ~* ? B B/ t3 m
light sensors (光線感應器)
# x3 F5 b& t% D4 P 2D gfx (2D圖形卡)
/ W+ z( m7 F8 {! s! p! W FM Radio Transmitter (FM調頻發射器功能) }. ]2 n( | A$ b7 F( u
FM Radio Reciever (FM調頻接收器)
3 @- e1 C, O0 I$ f h Camera (相機)5 z0 }1 ?; {/ f1 p8 x- V
eMMC as internal volume, microSD as /sdcard (N900的eMMC尚且不能作為機身記憶體調用)' d& ?" U" g' V& z O! `* J
Installation to eMMC (尚且不能在eMMC上安裝程式, SD卡可以)+ S2 \6 s1 Q, T: m6 L; B/ I( ]0 G
注釋1:wifi搜索功能可以正常用,但是如果你的wifi設置是基於MAC位址安全協議的,請禁用此設置後,NITDroid的wi-fi功能才能夠正常連接。
/ G( h; t& G' W9 S2 X 注釋2:不清楚為什麼Nokia將GPS模組與手機電話功能模組關聯在了一起,因為2G/3G通話模組尚不能工作,GPS也暫時無法使用! R5 V/ Q+ A6 L$ i! I5 k
+ r1 ` `" W0 {3 J: a Q9 _3 ~9 J5 g$ G T5 L7 c
NITDroid 6.0物理按鍵設置:! h2 v/ V; A$ L" d6 w
$ F+ f, S9 p2 k, ?+ g) M Camera Key: Home (相機鍵用於home鍵)' Y; @4 V* Q. }9 f8 @9 H) W% r
Proximity Sensor: Menu (距離感應器用於呼出菜單鍵)* K# ]. O! u; z" K5 u
Lock Switch: Back (N900側面的滑動鎖屏鍵用於返回)# i' ]/ i" a1 B; [6 _
Volume Keys are Swapped Around (音量鍵用於調整音量大小)
, x# D' Z6 v# p- O' D; J# r) I- T9 [ Backspace is BACKSPACE (鍵盤上的後退鍵就是後退鍵
" l, R% y8 J4 q8 R2 I. ~+ w) ]8 R2 R1 M2 ]8 C

! W0 h* k- n+ h- b3 v& U# r1 n5 j! S) ?- {$ |1 M0 E: i
9 c# _# Q) \' c- M
`( l7 n6 C# L/ c5 V' FNITDroid 6.0安裝所需檔以及實戰教程( |/ s" `3 G4 B+ Z
7 G9 |* n1 p8 T3 x8 b+ S y& qN900上所需的源·【Extras-devel】 如何添加源看這裏, m, i( S5 |: b; E/ g5 E
* p0 @8 _3 r& g$ h/ }N900的maemo5系統下需預先安裝的套裝程式:
+ M& U# R3 [6 { Bzip2
3 y S5 c( n+ _- W7 D7 X; n wget
. L3 w- [ J1 p( K/ Q2 B rootsh
7 Q4 R5 y4 L, |3 ~ kexec-tools
; K7 ]8 T" y G0 w$ Z$ f: s% q) c: \: p
所需文件:
* g7 q4 n1 D* N1 g0 U7 n
; x& C6 {" e' e1.) MultiBoot-extras7 w# b- G* f+ f+ @, j
2.) Multiboot (0.2.5)
4 T% ^, N: S# j l$ B s7 J3.) NITDroid 6.0 rootfs( T& E( _2 {) x$ e* Y; ?+ Y
注意:6.0版本rootfs檔中包含了kernel,不需要單獨dpkg -i命令安裝kernel,我自己開始先安裝了kernel反而不能進入系統。& O4 q- ]4 H1 r& n% ~2 P
# c. ]0 f% q s3 a5 W% \* E- P上面文件均可在源內搜索並下載
- l* H; A; y% U) y
6 x" R1 n5 q1 [2 ^1 D# W4 ^9 O& l# n# V4 v+ G
推薦安裝的程式:
) k- n( N( E% a1 t3 C0 X
1 G% y% L! Z) V; E OpenSSH Server用於SSH連接到PC/Mac,以便於打命令行;我本人是在Mac OSX 10.6下用Terminal連接到N900安裝的,Windows下可以用Putty、WinSCP(查看WinSCP使用教程)等。
3 `& H: ?$ W/ m4 G( d, a! y9 w9 Y: A9 a, Z( e6 P3 n
" a) X3 L+ d4 H% f7 X. _% l+ K% ~安裝所需命令行步驟:(N900上的Xterm或者SSH軟體上輸入)
+ b" L" f7 e: J" s4 |
* q V% p% l/ b" b! a, w 5) 以上步驟已經完成所需檔在N900上的直接下載和multiboot的安裝,下面則需要對你的SD卡進行格式化和分區,Android必須安裝在分區格式為ext3上的部分,因為N900本身就是一部小型linux電腦,所以我們可以直接在N900上通過下面的命令行來執行。
6 y _7 A$ p, q9 @ F9 p" I
2 V; L* Y; n/ g- J需要注意的是,由於未知的原因,請不要使用SanDisk 4GB的SD卡。分區需要分為FAT32/ext3兩個區域,具體分區的比例參考為:以MB為單位fat32/ext3- 2GB: 100/1900,4GB: 2100/1900,6GB: 4100/1900,8GB: 6100/1900,16GB: 14100/1900,32GB: 30100/1900。
3 H: m% X' i0 q umount /dev/mmcblk1p1 w/ ~ @3 c* P8 b
sfdisk -uM /dev/mmcblk1 << EOF
2 O* t0 c. p5 y7 B: g ,<SIZE>,C (注釋: 替換SIZE為實際FAT32區域的容量,以MB為單位,去掉<和>), F: o$ Z+ |+ o& q. l
,,L+ [. M6 i2 _) G# b5 I7 c
,,- N G, z8 R6 f$ ?( l
,,+ W. C: c x& c
EOF ( s4 c% F! B3 c/ i
- d! n0 r1 y" G8 Q( ?7 U. b. U- V
6)重啟你的N900,這時已經裝了multiboot,按0鍵進入maemo系統,繼續執行下面的步驟
2 C& Q7 I; K2 Q; P umount /dev/mmcblk1p1 y9 s6 j0 n9 D: k; H- a
mkfs.vfat /dev/mmcblk1p1 -n sdcard/ K2 u a5 E% X! P3 R1 E
mke2fs -j -m0 -L NITDroid /dev/mmcblk1p26 w$ e8 D9 C" s( b% o& c( |
cd /
# g: f! V1 X" m mkdir /and+ \* h- C$ V# g
mount -t ext3 -o noatime,rw /dev/mmcblk1p2 /and+ v3 i+ n S# k6 Q- M) a: |) V
cd /home/user/MyDocs4 E/ h+ a1 s* M3 I- V) K
bzip2 -d NITDroid-N900-the-flying-world.tbz2
' ^9 } b3 ~# g4 p, [6 C' |( m, S cd /and2 {' @* H6 [! \
tar xvf /home/user/MyDocs/NITDroid-N900-the-flying-world.tar $ T$ J$ p4 c: C! e9 t' ~+ i
# ^% Q+ U8 j8 Q$ N* u8 g8)至此,NITDroid的所需系統已經安裝好了,但是不要著急,我們還要把相關的啟動資訊編輯到multiboot中去
$ t& \: u" E/ n, e0 B) ], @5 d cd /etc/multiboot.d
: n' c: x& P% z: M1 f1 x9 ^3 |& G cat > NITdroid-2.6.28.NIT.05.item << EOF$ o: N* \9 c }( R+ X% Z5 c
ITEM_NAME="NITdroid on MMCp2 - 2.6.28.NIT.05") |. z9 O/ d' E+ x) H
ITEM_KERNEL=2.6.28.NIT.05) ], b6 E. S2 m" s2 l
ITEM_MODULES=ext3 fat vfat
; G1 i( ]& K' l2 k' K5 _ ITEM_DEVICE=\${EXT_CARD}p2
& D' y1 J* c& Y, t ITEM_FSTYPE=ext3
! _1 c4 ^, ]4 h8 | I$ V4 w4 ], N; F! ~ ITEM_FSOPTIONS=rw,noatime,errors=remount-ro,commit=3
: I: M, U5 E2 I8 T EOF
; q1 \- c+ F- Y/ t1 [! ?* x# R
* B- N% [" c5 Z1 c9 r9) 最後卸下ext3分區,重啟,進入multiboot後,就會看到NITDroid的啟動項,按1鍵進入Android系統,初次載入可能有些慢,約1分鐘-2分鐘左右8 z2 {9 F, \. e3 W- E+ N* K# h6 O
umount /dev/mmcblk1p2& {2 H5 B0 p: u' ~% J: C' H
cd /: J3 R( |7 S8 Q
reboot
) ]7 i( y! d5 ?* @$ _, M
' n/ B3 @5 Y: o: L q |
|