Mais conteúdo relacionado
Semelhante a Tizen native application (20)
Mais de Naruto TAKAHASHI (18)
Tizen native application
- 3. ネイティブコードで動作するアプリケーション
◦ Tizen の Core Services を直接実行可能
UI ライブラリは EFLのみをサポート
◦ 一応、他の UI ライブラリを追加する裾野はあります。
もともとは GTK をサポートしていたようです。
ただし、その道はだいぶ険しいと思います…
- 4. Enlightenment Foundation Libraries の略
Enlightenment DR17 のために作成
開発期間は 13,4年(!)
近々 EFL 1.7 をリリース予定。
◦ (※) Enlightenment DR17 はまだリリースされてない。
小粒なライブラリが階層を成しています。
◦ Eina – データ構造ライブラリ
◦ Eet - ストレージライブラリ
◦ Evas - キャンバスライブラリ
◦ Ecore - メインループライブラリ
省メモリ
◦ EFL のメモリ使用量は Qt の ¼, GTK の ½
- 7. Web App 以上のアイキャンディー
◦ ぬるぬる
◦ ぬるぬる!!
◦ ぬるぬる( ´∀`)
Tizen のライフサイクルに準拠したアプリの作成
C/C++ でアプリが書けますよ。
- 8. 現行の html5 でシステム周りを組むのは難しい。
◦ バックグラウンド動作
◦ システムトレイ
◦ Etc, etc
Mozilla さんが頑張って解決している
ライフサイクルを掌握したい
◦ Tizen 1.0 のWRT はバックグラウンド動作はしない
省メモリ+高速動作を実現したい
◦ iOS の facebook App が html5 から native へ
- 9. バックグランド動作のサポート
◦ Android でいう Service みたいなのは可能?
◦ UNIX でいうデーモンみたいなのは可能?
アプリ間通信のサポート
◦ Android でいう Intent みたいなものは可能?
◦ UNIX でいうプロセス間通信みたいなのは可能?
「これはできるの?」は勉強会で随時レポートします
- 11. C/C++ で開発
エントリーポイントは main() からはじまるよ
UX は elementary(EFL) を使用
メインループ、ライフサイクルは Tizen Application
Framework を使用
- 12. AUL(Application Utility Library)
◦ App の launch(Web App <-> Native App 双方向)
App-Core
◦ App のライフサイクルの管理、システムイベントキャッチ
App-Service
◦ アプリケーションのサービス設定
- 13. appcore に渡すコールバック関数一覧
オペレーション 説明
create メインループに入る前に実行される。
(ウィンドウの生成などの初期化処理を行う。)
terminate メインループの後に実行される。
(アプリの終了処理などを行う。)
pause ウィンドウがバックグラウンドに移動したときに実行される。
(停止処理や、バックグラウンド処理の開始などを行う)
resume ウインドウがフォアグランドに移動したときに実行される。
(復帰処理、バックグラウンド処理の停止など行う)
reset 再実行時に実行される。
- 14. システムの変更があったときのイベント
appcore_set_event_callback() で登録する。
システムイベント
◦ LOWメモリー
◦ LOWバッテリー
◦ 言語変更
◦ 地域変更
- 15. デバイスの回転を検知したときのイベント
appcore_set_rotation_cb() で登録する。
イベントの種類
◦ 縦向き
◦ 縦向きで逆
◦ 横向き
◦ 横向きで逆
- 17. ビルドのために揃えるもの!
◦ コンパイル環境
◦ デバイスへの転送
Tizen SDK 1.0 のサポート状況
◦ コンパイル環境(×: ない)
◦ デバイスへの転送(○:sdb コマンドで転送する)
コンパイル環境は自分で準備しないといけない。
- 18. Tizen プロジェクトでオフィシャルに用意しているクロ
スコンパイル環境
◦ GBS
◦ OBS
◦ Scratchbox2(お亡くなりになりました)
- 19. Tizen パッケージ開発のコマンド
◦ Git レポジトリから tar.gz(rpm)の自動生成
◦ ローカル環境でのテストビルド
◦ OBS へコード提出
コマンド例
◦ gbs build –A armv7l
詳細は下記を参照してください
◦ https://source.tizen.org/os-development/git-
build-system/
- 20. パッケージを作成するデーモンサービス
サーバにビルドを依頼できる…らしい
OBS Server のイメージは以下
◦ http://susestudio.com/a/e0uuBG/obs-obs-server-
obs-light
OBSlight(クライアント?)のインストール方法は以下
◦ http://en.opensuse.org/openSUSE:OBS_Light_Install
ation
- 23. Tizen Native App とは?
Tizen デバイスでネイティブで動作するアプリケーション
Tizen Native App の実装方法は?
UI ウィジットは EFL を使用します。
フレームワークは Tizen Application Framework を使用
します。
Tizen Native App のビルド方法は?
GBS を使います。
OBS も使えます。(使い方調査中)
- 24. EFL 関連(重要)
Tizen Application Framework 調査報告
◦ Tizen Native App のつくり方
◦ アプリのパッケージの作成方法
WRT(WebRunTime) 調査報告
◦ Tizen Web App を動かすランタイム
◦ WebkitEFL + Tizen Device API 実装
◦ Web App の独自 API 拡張方法の調査
- 25. それ、○○ だとどういう意味?
◦ Tizen Native App と Android App とのマッピング
専門用語のマッピング
機能、概念のマッピング
◦ Tizen Native App と Unix App とのマッピング
制限事項など
どなたか「それ、iOS だとどういう意味? 」やりません
か?
どなたか「それ、Android だとどういう意味? 」やりま
せんか?
- 26. SDK 2.0 がリリースするまで待てない!
◦ 2012/E にリリース予定
◦ Tizen フォンの販売が 2013年になった。
(※) Samsung が Android と WP8 に注力するため
◦ SDK 2.0 の年度末リリースよりもっと遅くなるのでは…?
ビルド環境構築を一人でやるとつまづくし、つまらない
◦ みんなでつまづけば怖くない!
OSC 2012 Tokyo/fall の参加者が人少ないらしいから
ビルド環境構築大会やっていいですか?(^q^)
- 27. 日程
◦ 2012/9/7(金) 10:00-18:00
◦ 2012/9/8(土) 10:00-17:30
場所
◦ 明星大学 日野キャンパス 28号館
詳細はこちら!
◦ http://www.ospn.jp/osc2012-fall/
- 28. 日程
◦ 2012/9/8(土) 12:00-12:45
場所
◦ 明星大学 28号館204教室
内容
◦ Tizenに関する技術Topicや動向
◦ HTML5アプリケーションの実行・デモ
◦ 人が少なければ Tizen Native ビルド環境構築大会 (^q^)