作者poc7667 (poc)
看板AndroidDev
標題[分享] Android跟Java Libraries 不同之處
時間Thu Jan 20 19:41:50 2011
最近幫一個人想辦法把Java Project porting到 Android上
其實在做之前就有點不祥的預感。
因為如果我沒記錯的話,Android 底層跑的virtual machine
binary code format , 跟 JVM是完全不同結構的。
所以如果原本在Java上面弄一些奇怪的Library或者3rd party jar
Android 有針對Java比較重要的Library都有支援(應該是有改寫過?)
不過也有我覺得蠻奇怪的地方,就是有某些 3rd party -jar檔
像是 import org.apache.commons.net.ftp.FTP;
在Android也有支援?
基本上 jar檔裡面應該是 jvm的binary code
怎麼能夠在Dalvik VM上面跑呢?
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.218.6.16
1F:推 nowar100:Java的庫在Android上都是自己重寫過的 叫做libcore 01/20 19:45
2F:→ nowar100:還有寫好的包起來成 framwork.jar 01/20 19:53
3F:推 Romulus:jar檔裡面是byte code啊,和VM又無關 01/21 09:15
4F:→ poc7667:兩邊的bytecode format一樣? bytecode不就是給vm跑? 01/22 08:11
5F:→ poc7667:有錯請指教! 01/22 08:11
6F:→ uranusjr:不一樣, Android 上的 bytecode 是 Dalvik 專用 01/22 15:36
7F:→ uranusjr:Dalvik 的架構和 Sun JVM 也不一樣 01/22 15:36
8F:推 Romulus:啊咧,那是我有什麼誤會嗎 01/23 19:01
9F:→ Romulus:JavaSE的Jar檔重編一下就能用在Android啊 01/23 19:02
10F:→ Romulus:只要沒用到Android沒有的API 01/23 19:02