nexacro platformライブラリでサポートしているAndroidネイティブインタフェースの主要項目を説明します。動作する時点によって、起動時点で使用するインターフェイスとアプリ実行中に使用するインターフェイスに区切られます。
使用時点 | Androidネイティブインターフェース |
---|---|
アプリの起動時 | com.nexacro.NexacroUpdatorActivity com.nexacro.NexacroResourceManager |
アプリの実行時 | com.nexacro.NexacroActivity com.nexacro.NexacroEventHandler |
com.nexacro.NexacroUpdatorActivity
setBootstrapURL
setBootstrapURL(url)
引数 | 説明 |
---|---|
url | start_android.jsonファイルを配置したパスのURL文字列(ファイル名を含む) |
ブートストラップ ファイル(start_android.json)を配置したサーバーURLの文字列の値を指定します。ブートストラップファイルにはプロジェクトの起動に必要な情報が含まれています。nexacroActivityの起動時に該当情報を伝達します。
setProjectURL
setProjectURL(url)
引数 | 説明 |
---|---|
url | ジェネレートしたソースファイルを配置したパスのURLの文字列 |
パスを表示するURLの文字列の末尾に「¥」を付ける必要があります。nexacroActivityの起動時に該当情報を伝達します。
setStartupClass
setStartupClass(startupClass)
引数 | 説明 |
---|---|
startupClass | アップデート完了後に実行するActivity |
デフォルト値は nexacroActivity です。 デフォルト値を使用する場合には、メソッドを別途に呼び出しません。
com.nexacro.NexacroResourceManager
setDirect
setDirect(updatetype)
引数 | 説明 |
---|---|
updatetype | Update Typeオプションをboolean値で指定 true:"Server" false:"Update(Local+Server)" or "Local" |
nexacro studioのメニューの「Deploy > Packing(Archive&Update)」を実行する際、設定したUpdate Typeに応じて値を設定します。下記のようにNexacroUpdatorActivityのonCreateで設定します。.
protected void onCreate(Bundle savedInstanceState) { NexacroResourceManager.createInstance(this); NexacroResourceManager.getInstance().setDirect(false);
setScreenid
setScreenid(screenid)
引数 | 説明 |
---|---|
screenid | レイアウトで適用するScreen ID |
Screen IDは、デバイスのOS、サイズ、種類によって自動的に選択されますが、特定のScreen IDを指定しようとする場合に使用するメソッドです。NexacroUpdatorActivityのonCreateで設定します。
setContentMode
setContentMode(mode)
引数 | 説明 |
---|---|
mode | コンテンツモードを設定するかどうか 「true」に設定すると、コンテンツモードで動作します。 |
コンテンツモードで動作するかどうかを設定します。 setFDLメソッドを使用するためには、値をtrueに設定する必要があります。
setFDL
setFDL(fdlURL)
引数 | 説明 |
---|---|
fdlURL | form URLを設定 "FrameBase::Form_Work.xfdl"のようにTypeDefinitionのServicesパスを指定します。 |
実行するFormのURLを設定します。
setKeyName
setKeyName(keyName)
引数 | 説明 |
---|---|
keyName | Environment keyプロパティを設定 |
com.nexacro.NexacroActivity
callScript
callScript(method)
引数 | 説明 |
---|---|
method | JavaScriptのnexacro platfromライブラリに含まれているApplicationオブジェクトのメソッドを文字列で指定します。 |
因子として渡された文字列は、JavaScriptでeval関数で処理されて実行されます。callScriptメソッドが実行される際、JavaScriptでは下記のような形式で変換されます。
NexacroActivity.getInstance().callScript("fn_test('Hello nexacro!')"); // Java
eval("nexacro.getAppication().fn_test('Hello nexacro!');"); // JavaScript
createNexacroApplication
createNexacroApplication([key])
引数 | 説明 |
---|---|
key | NexacroApplicationを生成する際、名前(key)を設定します。 値を設定しない場合は、内部ライブラリで任意で指定します。 |
getNexacroApplication
getNexacroApplication()
NexacroActivityが所有したApplicationを返します。
com.nexacro.NexacroEventHandler
onUserNotify
onUserNotify(int nNotifyID, String strMessage)
メソッド | 説明 |
---|---|
nNotifyID | nexacro platfromのuserNotifyメソッドから渡されたID値 |
strMessage | 処理する文字列 |
callScriptメソッドがAndroidからnexacro platfromのスクリプトに値を伝達するのであれば、onUserNotifyはnexacro platfromのスクリプトからAndroidに値を伝達します。nexacro platfromのuserNotifyメソッドを実行する際、Androidにおいて下記のような形式で値を取得して処理します。
nexacro.getEnvironment().userNofity(100, "HelloWorld"); // JavaScript
public class UserNotify implements NexacroEventHandler { public UserNotify() { if(NexacroActivity.getInstance() != null) NexacroActivity.getInstance().setNexacroEventListener(this); } @Override public void onUserNotify(int nNotifyID, String strMessage) { Log.d("UserNotify", "onUserNotify nNotifyID : " + nNotifyID + " strMessage : " + strMessage); } } // Java