nexacro platformは、同じ開発環境で、1つのソースコードで、様々なオペレーティング·システムと使用環境をサポートするアプリケーションを開発することができます。ただし、実際のユーザーに配信されるアプリケーションの形で配布される過程で、使用環境によって、一部機能と配布環境が異なることになります。
この章では、スマートフォンやタブレット機器のいずれiOSとAndroid OSを対象に、開発者またはシステム管理者が必要な内容を説明しています。
技術構成要素
iOSとAndroid OSに配布されるアプリケーションは、移動中に使用し、さまざまな内蔵センサー機能を活用することができ、スマートフォンの場合には、電話や文字メッセージ機能を連動することができます。これにより、Device API、開発、実行、配布についての理解が必要になります。
Device API
次は、nexacro platformアプリで提供される Device APIです。
Device API | 機能内容 |
---|---|
System | 端末の基本情報提供 ダイヤル機能提供 簡単なサウンドファイル再生機能提供
|
Acceleration | 加速度計センサーを使って端末の加速度情報を提供 |
LiteDB | ローカル DBを使用するための機能を提供 |
VirtualFile | ファイル入出力のための機能を提供 |
AudioPlayer | サウンドファイルの再生コントロールのための機能を提供 |
AudioRecorder | オーディオレコーディングのための機能を提供 |
Camera | 端末の内蔵カメラを利用できる機能を提供 |
ContactSet | アドレス帳の連絡先の検索/追加/削除/修正機能を提供 |
ExternalAPI | 外部機器へアクセスまたは連動するための機能を提供 |
GeoLocation | GPS. WPSを使って端末の位置情報を提供 GPS - Global Positioning System WPS - WiFi Positioning System |
ImagePicker | 端末の写真アルバムにアクセスできる機能を提供 |
Map | マップ表示のためのMapコンポーネントを提供 |
Network | 端末のネットワークステータス (No Network、3G、Wifi)を確認する機能を提供 特定のサイトへの通信が可能かどうかを確認する機能を提供 |
Sms | SMS転送機能提供 SMS受信検知機能提供 受信された SMSライブラリの検索/削除機能を提供 |
Vibrator | 振動を発生させられる機能を提供 |
提供される機能は、製品のバージョンによって、追加されたり変更されることがあり、端末のOSの特性上、サポートされる機能の部分的な制限がある場合があります。詳しくは、nexacro studioに含まれているリファレンスガイドを参照してください。
開発環境
画面とサービスを開発する方式は、ランタイムやHTML5が共に同じですが、iOSとAndroid OSで使用できるDevice APIを追加コンポーネントとして活用できるということが違います。生成されたアプリケーションの基本的なテストは、nexacro studio内で実行してみることができますが、Device APIの実際の動作は、機器にアプリを配布して直接テストしてみる必要があります。
Android、iOSでは、任意のプログラムを直接実行することができず、アプリ形で作られたアプリケーションのみを実行することができます。したがって、nexacro platformをベースに開発されたアプリケーションを、ウェブブラウザではなく、端末から直接実行するには、アプリ形で開発、配布する必要があります。
nexacro platformは、Android、iOS開発環境に必要なライブラリを提供して簡単にアプリを作成できるようにサポートしており、パッケージ(アーカイブファイルの作成)をベースに作られたアプリケーションを配布することができます。
iOS、Androidで動作するnexacro platformベースのアプリを開発するプロセスは以下のとおりです。
nexacro studioでマーケットに配布することができるアプリを作成したり、シミュレータでテストする直接的な方法は、別途提供されません。
アプリケーションの実行環境
nexacro platformで開発されたアプリは、指定された配備サーバーのstart_android[ios].jsonファイルに設定された情報によって必要なファイルを端末にダウンロードしてアプリをインストールしたり、変更されたファイルを更新します。必要なファイルをすべて処理した後、アプリが実行されます。
Webサーバーと配布サーバーが物理的に別のサーバーを使用する必要はありません。各サーバーへのパスだけ明確に指定すると、機器の配置は必要によって調整することができます。
配布環境
配布とは、アーカイブファイルを配布サーバーに反映してnexacro platform アプリをユーザー端末にインストールすることを意味します。
アプリは、各端末のOSをサポートしているマーケットで配布します。 Androidは、Google、端末メーカー、通信事業者が運営する様々なマーケットを通じてアプリケーションが配布され、専用サーバーを通じて配布することもできます。iOSはApp Storeを通じて配布することができます。企業内でのみ使用するアプリケーションは、iOS開発者プログラム中のエンタープライズプログラム(Enterprise Program)を活用することができます。
Android 及び iOSで配布可能な方法は、次の通りです。
OS | 配布 方法 | マーケット 種類 | 内容 | 運営者 |
---|---|---|---|---|
Android | マーケット | Google Play | Androidを開発した Googleのマーケットとして、最大数の Androidアプリケーションが配布されています。 | |
Samsung Apps | メーカーであるサムスン電子が運営するアプリ配信マーケットです。 | サムスン | ||
自体配布 | 私設ウェブサーバーに apkファイルを位置させて、該当 URLを使用して配布する方法です。 | 自体運営 | ||
iOS | マーケット | Apple Appstore | Appleが運営しているアプリ配信マーケットです。但し、私設サーバーを利用することはできません。 | Apple |
独自配布 | エンタープライズプログラムに登録して使用することができます。 | 独自運営 |
アンドロイドOSは、サービスを提供する国によって使用可能なマーケットが変わる場合があります。上記の表には、韓国で利用できる主なマーケットを明示しました。
開発プロセス
主要構成
nexacro platformアプリの主要構成は、次の通りです。
nexacro platformアプリ(APK/APP)の主要構成についた内容は、次の通りです。
構成要素 | 詳細内容 | 含み時点 |
---|---|---|
nexacro platform ライブラリ (ネイティブコード) | nexacro platform ライブラリはエンジンライブラリでアプリ開発時に必ず含める必要があるファイルです。iOS(nexacro14.framework), アンドロイド(nexacro14.jar, libnexacro14.so)形式で提供されます。 詳細設定は、次のとおりです。
※ 注意事項
| Android Studioまたは、 Xcodeで、 nexacro platform アプリケ ーションプロジェクトに含ませてビルドします。 |
start_android.json start_ios.json | 次のファイルのパス情報が含まれており、アプリケーションのビルド時に指定されたパスにアクセスして読み込みます。
*プロジェクトのアーカイブファイル *テーマのアーカイブファイル
※ 注意事項
| 実行時にロード 及び更新で、nexacro platform アプリ内にダウンロードします。 |
Baseライブラリ | nexacro platformフレームワークを圧縮して提供します。JavaScriptで実装されたコンポーネントが含まれているnexacro14lib.zipファイルを使用します。 ※ 注意事項
| |
Run アーカイブファイル | nexacro platformで使用するコンポーネントの情報と最初に実行するADLのJavaScriptファイルのパスが含まれているファイルです。 ※ 注意事項 iOSオペレーティングシステムを使用する場合にのみ必要です。
| |
プロジェクト アーカイブファイル / プロジェクトファイル | nexacro studioで開発したnexacro platform HTML5 プロジェクトファイルです。 ※ 注意事項
| |
テーマアーカイブファイル / テーマファイル | nexacro platform HTML5プロジェクトのテーマファイルです。 ※ 注意事項
|
開発及び実行手順
開発及び実行には、次のような手順で進行します。
ステップ | 詳細内容 |
---|---|
プロジェクト開発 | nexacro studioでnexacro platformアプリケーションを開発します。 |
配布サーバー反映 | nexacro studioで必要なアーカイブファイルを生成した後、配布サーバーに反映します。 |
アプリ プロジェクトの作成とビルド | Android Studio(Android), Xcode(iOS)でアプリプロジェクトを生成します。プロジェクトを生成して提供されたnexacro platformライブラリを参照するようにします。 プロジェクトの設定が終わったらAndroid Studio(Android), Xcode(iOS)でアプリ(APK/APP)をビルドします。 ※ iOSの場合、端末をターゲットにビルドするためには、Appleの開発者アカウントが必要です。 |
実行 | 端末の接続後、Android Studio(Android)、Xcode(iOS)で端末に実行します。 ※ iOSの場合、端末をターゲットにビルドするためには、Appleの開発者アカウントが必要です。 |
配布手順と方法
nexacro platformは、下の図のように、アーカイブファイルとアプリが別々に配布されます。アーカイブファイルは、nexacro studioでパッケージングしたBaseライブラリ、プロジェクトアーカイブ、テーマアーカイブ、Runアーカイブなどで構成され、配布サーバを経由して渡されます。アプリはnexacro platformライブラリが含めて生成されたプロジェクトで作成され配布可能なファイルで作られてマーケットやプライベートサーバー(Androidのみ)に配布します。ユーザーがスマートフォン端末を駆動した後、マーケットやプライベートサーバでアプリをダウンロードして実行すると、アプリケーションが配布サーバから必要な情報をロードして画面を実行させます。
マーケットを利用したnexacro platform Hybridアプリ(APK/ APP)配布手順は次のとおりです。詳細事項はマーケットごとに差があり、各マーケットの関連マニュアルを参照してください。
開発者アカウントの生成
配布用アプリ(APK/APP)生成
検査登録
検査完了
サービス開始
アプリ開発及び実行のための推奨仕様
Android、iOSのSDKのバージョン及び端末推奨仕様は以下のとおりです。
配布のためには、最新バージョンのツール及びSDKを利用することをお勧めします。
アンドロイド(Android)
区分 | 項目 | 内容 |
---|---|---|
開発 | OS | Window/Mac/Linux使用可能 |
Android Studio | Android Studioのインストールファイルは、基本的に SDKツールが含まれています。 | |
開発者 アカウント | Google Playへの配布のためには、各社の開発者アカウントが必要です。開発者アカウントの費用ポリシーは、各社ごとに異なります。 | |
端末 | 端末OS | Android OS 2.3 以上 ※ 但し、上記のOS以外のは追加検討が必要 |
iOS
区分 | 項目 | 内容 |
---|---|---|
開発 | OS | Mac OS Xでのみ開発/配布が可能 最小 : Mac 10.6.8 以上 |
Xcode | iOS用アプリの開発のためのツール(無料) | |
iOS SDK | Xcodeのインストール時に一緒にインストールされます。(無料) Appstoreに配布するためには、最新バージョンのSDKでビルドされる必要があります。 | |
開発者 アカウント | Apple iOS開発者向けページから生成し、年間の費用形で販売されています。価格は年間約1万円程度であり、為替レートによって違います。 | |
端末 | 端末OS | iOS 4以上 ※ 但し、上記OS以外のことは、追加検討が必要 |
nexacro platform サポート端末は下記のとおりです。
これらの端末は当社で検証済みの製品であり、お客様から別途の問合せなしでサポートが可能な端末です。
• Android Smart Phone
Samsung Electronics
- Galaxy S3 (Android 4.1.2)
- Galaxy S4 (Android 4.2.2)
- Galaxy Note 8.0 (Android 4.1.2)
- Galaxy Note 10.1 (Android 4.1.1)
LG Electronics
- Optimus G2 (Andriod 4.2.2)
- Optimus Vu2 (Andriod 4.0.4)
SHARP
- Aquos Phone (Andriod 4.0.4)
• Android Tablet
Samsung Electronics
- Galaxy Tab 10.1 (Android 3.2)
Fujitsu Mobile
- Arrows Tab Wi-Fi FAR70A (Android 3.2)
• iOS
iPhone5 (iOS 6.0.1)
iPhone5s (iOS 7.1)
iPad2 (iOS 7.1.1)
iPad4 (iOS 7.1.1)
iPad mini (iOS 6.0.1, 7.1)