2010年8月24日 星期二

讓嵌入式系統上的Android連上網路

補上次的記錄。


為了讓別人能用ssh登入到這台6410XP,要先使Android連上網路。通常需使用ifconfig,但Android內置的ifconfig和一般我們熟悉的不太一樣,因此移植busybox,用他的ifconfig。

使用以下指令讓Android可連網:

setprop net.dns1 163.13.1.60
ifconfig eth0 163.13.128.180 netmask 255.255.255.0
route add default gw 163.13.128.254


然而若要一開機就能連網,必須修改init.rc,修改的部份如下:

......

on boot                                                                                                                                                              
# basic network init                                                                                                                                                
    ifup lo                                                                            
    ifup eth0                                                                                                                       
    setprop net.dns1 163.13.1.60                                                        
    hostname android_E685                                                              
    domainname localdomain              
......

service ifconfig /system/sbin/ifconfig eth0 163.13.128.180 netmask 255.255.255.0        
   oneshot                                                                              
                                                                                        
service route /system/sbin/route add default gw 163.13.128.254                          
   critical                                                                            
   oneshot                                                          
......


先用ifup啟動eth0,再設置dns伺服器。接著,由於ifconfig和route是程式而非Android Init Language,要用service的形式使用它,並使用oneshot和critical兩個參數,前者是讓服務僅啟動一次,後者是讓服務成為device-critical-service,這讓route成功啟動的機率變大  (參考Android Init Language的寫法)

如此一來就可以上網了


Reference

http://huenlil.pixnet.net/blog/post/25330074
http://anemospring.blogspot.com/2010/05/command-to-set-android-ipdns.html
http://justin0321.blogspot.com/2009/05/command-to-set-android-ipdns.html

沒有留言:

張貼留言