[javascript]
1.android 普通應用程式開發人員
我們之前在網上看到最多的是在Java Build Path裡面Add jars ,Add External Jars或者Add Library,其實這些只是能確保編譯沒問題
只有自己試過才知道,你啟動並執行時候連結是找不到對應的第三方jar包的。
舉例 比如你要匯入org.apache.commons.net(各種協議棧的實現)的jar包到你的程式中
首先你得看你的ADT是什麼版本
ADT17以前的你需要在根目錄下建立lib目錄並把jar包放到lib下,並且點右鍵add to build path
ADT17以後的就比較智能,你只需要在根目錄建立libs目錄並放入jar包即可,它會自動產生Android Dependencies
不要忘了工程下點 右鍵->android tools->Fix project properties
成功與否就看Java Build Path的Libraries中是否有產生Android Dependencies(裡面可以看到你依賴的jar包)
2.android系統應用開發人員
需要修改你的app android.mk 檔案
[javascript]
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
<SPAN style="COLOR: #ff0000">LOCAL_STATIC_JAVA_LIBRARIES := apache-net</SPAN>
LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_PACKAGE_NAME := xxx
LOCAL_CERTIFICATE := platform
include $(BUILD_PACKAGE)
<SPAN style="COLOR: #ff0000">##################################################
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := apache-net:lib/commons-net-3.2.jar
include $(BUILD_MULTI_PREBUILT)</SPAN>
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_STATIC_JAVA_LIBRARIES := apache-net
LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_PACKAGE_NAME := xxx
LOCAL_CERTIFICATE := platform
include $(BUILD_PACKAGE)
##################################################
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := apache-net:lib/commons-net-3.2.jar
include $(BUILD_MULTI_PREBUILT)
紅色字型為你要添加的部分,其中LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES 只將lib目錄下的第三方jar包編譯為靜態jar java library並重新命名為apache-net
這就是上面LOCAL_STATIC_JAVA_LIBRARIES 為什麼等於 apache-net
改完mm 一下運行就可以了