|
o係諾基亞中文網見到呢篇文章幾有用所以貼過黎,原帖網址:) [9 K7 _' [3 y9 f& `
http://nokia.tgbus.com/article/s ... 0100802153218.shtml# I" l9 b- e/ u# y; p
翻譯與完善:Eric Zhang @ weGeeks3 H4 I" m2 E+ ~% W; `2 o* E
' Q, u& Y6 q* h( B/ P" r1 s
' A$ A- O+ O9 K4 x p
Nokia的N900自問世以來一直是國外眾多geek高手不斷折騰的物件,從超頻到自定義系統檔、kernel,再到移植運行Ubuntu/Win95甚至是MacOSX 10.3。但是這些移植項目的象徵意義遠遠大於其實際存在的價值,對於玩家和普通用戶來說,去經過繁瑣的過程把這些OS系統裝到N900上之後的成就感可能是唯一能獲得的東西。
# ^" z: W+ \& }3 Z7 w2 K6 ?; s+ N
0 w" j1 r/ U+ A7 ]$ a% k而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專案是個不小的進展,下面來看看這個版本的一些詳情。3 S3 _+ a+ k* A- d$ a G
# ]& j- {& z0 M9 X/ s
我們先通過list的方式來看看最新的6.0版本中哪些功能可以在N900上正常使用,而哪些不能:! ^' [- F) r. V P( n
; B H5 {; ^' b9 s
可以正常工作的功能如下:# t' I9 z0 q7 r5 {; D" c7 J2 i3 L
Dual boot with Maemo 5 (雙系統/多系統啟動)! @4 X5 F% ]& U4 |% K
Screen (螢幕顯示)& [4 _, B. t& u7 e
Touchscreen (觸摸屏): d% A- V4 o, A
Rotation Via accelerometer (重力感應螢幕方向) c/ j# Y2 |. s( E1 \; }# J
Keyboard (鍵盤)+ ]# L$ z' p2 j
Rotation on Opening/Closing keyboard (鍵盤打開/閉合時螢幕的翻轉)
* P0 Y6 |: H! r$ b, |' ^ Lock switch, cam switch etc (鎖屏按鍵,拍照按鍵等物理重新定義功能按鍵)
; E6 v, ?& b" n/ ~ E-MMC Mounting!!! (識別並掛載eMMC)
# y* D2 ^ @( R1 p6 h; ]: ` Music Player (音樂播放器)
8 d v3 h9 R; N% y7 @( s0 b1 v! V Headphones (耳機輸出功能)
: `' Q2 R. [+ q5 U& ^( K' r Basic Power Management appears stable (電源管理功能穩定工作)+ v5 k; o, t1 \) k" S! ]
WiFi* (See Note 1) (無線網連接)
% l7 p4 A. ?/ M! Z Bluetooth (藍牙)& ]! T' N8 S, }' p! v0 D
Google Apps (Google原生應用)' @7 q! i3 c: V
Mic (Alpha Stage) (麥克風)
' \5 E6 j1 f7 a6 w Proximity sensor mapped as button (距離感應器可以用於呼出設置功能表,詳見視頻演示)/ s/ ]4 m$ ~' i% k: r0 G
Some LED usage (LED指示燈)
$ @9 a f0 W5 a 3D GFX (3D圖形卡)8 Y7 M. C8 E& g9 u/ E7 I" v
' _. d" S) ^7 C3 O/ k4 d$ J當前版本尚且不能正常運行在N900上的功能:1 [; e* G+ x7 t' E# m, x& B
Phone/3G/GPS** (See Note 2) (2G/3G電話功能以及GPS) x5 l1 Q2 t' R6 J
Vibration (振動功能)& c! k; l* `' a: o
light sensors (光線感應器)* w# y3 u6 p# I5 W9 \
2D gfx (2D圖形卡), r0 r- K! q. h8 ?! _! o
FM Radio Transmitter (FM調頻發射器功能)* K/ Q/ T) Q( m5 I% ?4 r
FM Radio Reciever (FM調頻接收器)# l8 z$ n8 k1 |6 Z5 C- W' h; R
Camera (相機)
' P z2 e/ i! h# l5 V eMMC as internal volume, microSD as /sdcard (N900的eMMC尚且不能作為機身記憶體調用)- m) k9 d- C" I, N8 [
Installation to eMMC (尚且不能在eMMC上安裝程式, SD卡可以)
; n. O T" T* S4 A 注釋1:wifi搜索功能可以正常用,但是如果你的wifi設置是基於MAC位址安全協議的,請禁用此設置後,NITDroid的wi-fi功能才能夠正常連接。% K/ y4 i) C* Z8 N4 x
注釋2:不清楚為什麼Nokia將GPS模組與手機電話功能模組關聯在了一起,因為2G/3G通話模組尚不能工作,GPS也暫時無法使用: w4 g( [- G7 a* k0 g, C" h4 G; L
- `9 L0 K: `6 W U! l' e
& b H* i+ _0 q5 E! INITDroid 6.0物理按鍵設置:9 S6 n( e3 G/ N8 T0 x5 W$ Z, Q9 @
$ B5 k8 Q2 ?2 N8 |4 B Camera Key: Home (相機鍵用於home鍵)
: U" X/ y! z2 k' }( N+ q1 n) ^ Proximity Sensor: Menu (距離感應器用於呼出菜單鍵)+ g8 o2 m7 w/ c# ^- b( J
Lock Switch: Back (N900側面的滑動鎖屏鍵用於返回), y( z' k8 ^" C X( g* `3 z
Volume Keys are Swapped Around (音量鍵用於調整音量大小)- R: N( Y/ ?6 C" U. q
Backspace is BACKSPACE (鍵盤上的後退鍵就是後退鍵
# M) ~/ Z! ~2 ^; s- s# {, p) D; a
2 c) N/ `( t. e
" g$ y _! {) |! h& t, s# `, V
( b& Z& R! F( `' l& K: R5 E2 W& t# R
& Z" b v7 a3 i4 K) }NITDroid 6.0安裝所需檔以及實戰教程
) e! A0 R3 n4 u( ?8 d& n! p; p4 C7 \# D& o3 r
N900上所需的源·【Extras-devel】 如何添加源看這裏9 ?2 C0 Z8 B/ x) y8 l9 ~
: n" q6 Y- ?, x0 i/ i. K7 {N900的maemo5系統下需預先安裝的套裝程式:
7 H& w- @. v, @1 M Bzip2
' X! F/ N% }7 T5 f5 D wget
4 {9 D* V P! y4 K2 S2 ]" E rootsh# W+ @! J# \" {' u ]6 ?9 b
kexec-tools
. B3 U# I: b+ d; @! f4 M5 b N0 W' S9 g! j/ b& s* @6 f. m7 F: }( H
所需文件:' w. F/ L7 B/ s- p" G% F! i, h
/ w1 {* _/ v& I, B5 h2 z: L1.) MultiBoot-extras
7 A @4 V! ^, f0 d* r2.) Multiboot (0.2.5)
9 C8 D( g2 B5 {) m5 ]. z. a) q3.) NITDroid 6.0 rootfs0 v$ s8 c. K+ K3 N4 a6 F: O. E3 P0 ^- ~
注意:6.0版本rootfs檔中包含了kernel,不需要單獨dpkg -i命令安裝kernel,我自己開始先安裝了kernel反而不能進入系統。0 U, I z3 p3 ]* H
: P6 d+ r6 s9 o0 K; O上面文件均可在源內搜索並下載 x( n# C6 M9 }9 X5 K
+ Z& P4 @$ u( ^1 x" F$ g+ m' q
- Q1 {, U7 @6 Q% @* ?推薦安裝的程式:- B) t' x6 R" P0 e' e2 o
) a5 ~) e; `7 G3 h/ U OpenSSH Server用於SSH連接到PC/Mac,以便於打命令行;我本人是在Mac OSX 10.6下用Terminal連接到N900安裝的,Windows下可以用Putty、WinSCP(查看WinSCP使用教程)等。' P9 r6 Q' `% a K+ d" d& q, g
+ H; x' c4 ]1 ?+ g- R0 P: d
( t; ^! s1 {3 |- W. v S安裝所需命令行步驟:(N900上的Xterm或者SSH軟體上輸入)9 b" |# y( D7 y5 g- u6 O
/ [5 f f: W4 V/ [( i0 T 5) 以上步驟已經完成所需檔在N900上的直接下載和multiboot的安裝,下面則需要對你的SD卡進行格式化和分區,Android必須安裝在分區格式為ext3上的部分,因為N900本身就是一部小型linux電腦,所以我們可以直接在N900上通過下面的命令行來執行。' V( w; c" H+ v. e( F+ o
! Q: V. Y' Z8 }1 ?% p( v需要注意的是,由於未知的原因,請不要使用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。' g$ i- L5 l$ e" {4 ~% z1 c+ s& N: w$ t
umount /dev/mmcblk1p14 O! M# X% p5 y# h
sfdisk -uM /dev/mmcblk1 << EOF7 X9 C# E2 u! [
,<SIZE>,C (注釋: 替換SIZE為實際FAT32區域的容量,以MB為單位,去掉<和>)
( B1 ^' G5 @! a2 m, ^ ,,L/ Z5 n4 j9 j' \
,,7 Z: U) j% P) P2 H, z1 x
,,
+ S% [0 _+ p8 ?/ p3 ~ EOF 5 u: T5 Y0 q' } _, r
( W8 H1 j2 C4 R5 \* d1 o% u
6)重啟你的N900,這時已經裝了multiboot,按0鍵進入maemo系統,繼續執行下面的步驟# ^6 ?: N' s" C q/ F+ b
umount /dev/mmcblk1p1/ o0 G& g6 ]5 d. w8 E; R
mkfs.vfat /dev/mmcblk1p1 -n sdcard! Y2 u: l/ f* o, e6 f
mke2fs -j -m0 -L NITDroid /dev/mmcblk1p2
) ? _: V. N# [( ~ cd /* x; p2 y( I8 k4 X# k0 @
mkdir /and; x+ s1 G' c/ |/ S9 r) G! F
mount -t ext3 -o noatime,rw /dev/mmcblk1p2 /and
* s# q3 ~! u5 }' A1 {$ g7 {8 W cd /home/user/MyDocs
6 M0 A7 w# r7 B bzip2 -d NITDroid-N900-the-flying-world.tbz2
/ c @2 O: V5 g& z" i cd /and/ G$ J0 G2 u/ a R3 G
tar xvf /home/user/MyDocs/NITDroid-N900-the-flying-world.tar 4 l, u1 u- A3 D; c
' T/ r7 ` t# z; d9 O' W9 d2 Y, Q8)至此,NITDroid的所需系統已經安裝好了,但是不要著急,我們還要把相關的啟動資訊編輯到multiboot中去
# ?6 t( c, ~8 u u# ^ cd /etc/multiboot.d
. Z0 O' x) B5 L5 r' h/ w1 t cat > NITdroid-2.6.28.NIT.05.item << EOF
$ i: W% ^; h: [5 G, W ITEM_NAME="NITdroid on MMCp2 - 2.6.28.NIT.05"5 ]0 ]( Z, ]8 `9 U8 ]- x
ITEM_KERNEL=2.6.28.NIT.05/ }6 X, H* ], @# E( Z
ITEM_MODULES=ext3 fat vfat
8 f @/ v3 w \ ITEM_DEVICE=\${EXT_CARD}p2
- |$ e+ O$ d: r% \6 o ITEM_FSTYPE=ext3
5 v9 Z1 S% }% ~& \0 x ITEM_FSOPTIONS=rw,noatime,errors=remount-ro,commit=3
0 P6 `: I& [: J) D EOF
0 D2 ?: X1 Y7 k8 x; j
( d- u9 P& C" [4 G- O( ^9) 最後卸下ext3分區,重啟,進入multiboot後,就會看到NITDroid的啟動項,按1鍵進入Android系統,初次載入可能有些慢,約1分鐘-2分鐘左右' V' r: U' Y4 z/ s& ]
umount /dev/mmcblk1p2
. a$ Q9 a$ z( |( N9 m cd /
" |0 L- L7 b! r1 t2 B6 G reboot / @. V& G0 }* y: f& R5 b( M; c
, n/ l& C/ k, o* q- b5 M# z; t |
|