ANDROID 與 OSGI 平台整合

Preview:

DESCRIPTION

ANDROID 與 OSGI 平台整合. LUMINIS 的 PROJECT. ANDROID - DALVIK VM. Google Android 讓開發者用 Java 開發 Android 上的應用程式,但不是用傳統的 JVM ,而是 Dalvik VM 使用 dx 工具,產生可在 Dalvik VM 上執行的 .dex 檔. ANDROID BUILD. aapt. Create packaged resource. Packaged resource file. Manifest. R. Resources. javac. dx. - PowerPoint PPT Presentation

Citation preview

ANDROID 與 OSGI平台整合

LUMINIS 的 PROJECT

ANDROID - DALVIK VM

Google Android 讓開發者用 Java 開發 Android上的應用程式,但不是用傳統的 JVM ,而是 Dalvik VM

使用 dx 工具,產生可在 Dalvik VM 上執行的 .dex檔

ANDROID BUILD

資料來源:http://asantoso.wordpress.com/2009/09/15/how-to-build-android-application-package-apk-from-the-command-line-using-the-sdk-tools-continuously-integrated-using-cruisecontrol/

4

Source code

Source code

ResourcesResources

AssetsAssets

ManifestManifest

KeyKey

LibrariesLibraries

Create packaged resource

compile

To Dalvik

bytecodes

Create unsigned apk

Sign apk

Publish or Test

Packaged resource file

Packaged resource file

Classes dexClasses dex

Unsigned apkUnsigned apk

Signed apkSigned apk

RR

aapt

javac dx

apkbuilder -u

jarsigner

adb

準備 BUNDLE 步驟一

將我們的 .jar 檔,輸出成 .dex 檔: dx --dex --output=classes.dex JAR_file.jar

再將此 .dex 檔,放進 .jar 檔裡面:aapt add JAR_file.jar classes.dex

步驟二開啟模擬器: emulator & 使用 adb 工具發布:

adb push JAR_file.jar path_emulator/JAR_file.jar 步驟三

使用範例:find * -type f -exec adb push {} /data/felix/{} \;

目錄結構 – 下載 OSGI-ANDROID.ZIP

osgi-android: / \- bin \- bundle \- conf \- felix.sh

使用 ADB 工具 開啟 shell 指令:

adb shell 進入 push 進去的資料夾:

cd /data/felix 執行 Unix 來 run 背景:

sh felix.sh

RUN 動態模組程式 - PAINT

使用 LINUX 作業系統 - UBUNTU

使用版本比較下載下列 Project :svn checkout 網址

將 android.home 的 value 值,檔案目錄位置改成自己的 Android SDK 所在位置

Run felix 的 android 程式即可動態使用 paint

參考資料 Luminis 官方網站

http://opensource.luminis.net/wiki/display/SITE/OSGi+Android

Luminis 官方版 ppt : http://opensource.luminis.net/wiki/download/

attachments/2031652/OSGi+on+Google+Android+using+Apache+Felix.pdf

http://felix.apache.org/site/apache-felix-framework-and-google-android.html

Recommended