Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Onbon Y2 Java Library for Android

本文件說明如何在 Android Studio 開發環境下,開發 Onbon Y2 全彩控制卡應用程式。

相關套件

Y2 Java Library

  • y2 - Y2 核心函式庫
    • commons-codec
  • y2-message - Y2 訊息
  • y2-Http - Y2 http 介面
  • y2-http-ok - Y2 http 實作
    • okhttp
      • okio
  • uia-utils - 通用函式庫
  • simple-xml - XML 函式庫
    • stax-api
    • stax
    • xpp3

Java to Android Adapter

  • j2a - java.awtjavax 核心類別實作 (部分)。

IDE 設置

Project 相關設定

build.gradle

  • flatDir - 設定相依 libs 的儲存位置。
allprojects {
    repositories {
        jcenter()
        flatDir {
            dirs 'libs'
        }
    }
}

App 相關設定

build.gradle

  • project.ext.set - 設定輸出檔案名稱。

  • dexOptions - 允許掛載 j2a-0.1.1-release.aar。

  • dependencies - 定義 Y2 相關的 JAR & AAR 等檔案。檔案儲存在 libs 資料夾下。

android {
    ...
    defaultConfig {
        ...
        project.ext.set("archivesBaseName", "y2.mobiledemo-" + defaultConfig.versionName);
    }
    dexOptions {
        preDexLibraries = false
        additionalParameters =["--core-library"]
    }

}

dependencies {
    ...
    compile files('libs/y2-0.2.0-SNAPSHOT.jar')
    compile files('libs/y2-http-0.2.0-SNAPSHOT.jar')
    compile files('libs/y2-http-ok-0.2.0-SNAPSHOT.jar')
    compile files('libs/y2-message-0.2.0-SNAPSHOT.jar')
    compile files('libs/commons-codec-1.9.jar')
    compile files('libs/gson-2.8.5.jar')
    compile files('libs/log4j-1.2.14.jar')
    compile files('libs/okhttp-3.12.1.jar')
    compile files('libs/okio-1.15.0.jar')
    compile files('libs/simple-xml-2.7.1.jar')
    compile files('libs/stax-1.2.0.jar')
    compile files('libs/stax-api-1.0.1.jar')
    compile files('libs/uia-utils-0.2.0.jar')
    compile files('libs/xpp3-1.1.3.3.jar')
    compile(name:'j2a-0.1.1-release', ext:'aar')
    ...
}

// or
dependencies {
    ...
    implementation(name:'j2a-0.1-release', ext:'aar')
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    ...
}

AndroidManifest.xml

  • android:name - 設定啟動應用程式類別,用來初始化 Y2 Java Library 運行環境。

  • android.permission.INTERNET - 設定允許網路操作。

<application
    android:name="onbon.y2.mobiledemo.MainApplication"
    ...>
</application>
<uses-permission android:name="android.permission.INTERNET" />

MainApplication.java

此類別即 AndroidManifest.xml 中 android:name 指定的類別,應用程式的啟動點。

package onbon.y2.mobiledemo;

import android.app.Application;

import onbon.y2.Y2Env;
import onbon.y2.common.Y2Font;
import onbon.y2.common.Y2FontSizeType;
import uia.j2a.Env2a;

public class MainApplication extends Application {

    @Override
    public void onCreate() {
        super.onCreate();

        // 將 Application 與 AWT 連結
        Env2a.link(this);                          

        // 設定圖案是要抗鋸齒
        Env2a.configPaintAntiAliasFlag(true);      

        // 初始化 Y2 JAVA Library 運行在 Android 上
        Y2Env.initial(true);        

        // 邊更 Y2 預設的字型        
        Y2Font.defaultFont("Droid", 40, Y2FontSizeType.PIXEL);
    }
}

開發注意事項

UI 更新

在非 UI 線程上操作 Screen 後,欲將結果回報至 UI 時,利用 runOnUiThread 方法。

runOnUiThread(new Runnable() {
    public void run() {
        // 更新 UI
    }
});

About

This is a demo application of ONBON Y2 Java Library

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages