[Tizen]Phoneだって出るよ! Samsung Zだよ! ですか?

 藪下@2課のガジェオタです。

 んーとまたTizenのニュースです。さすがにTizen Conference後はいろいろ報じられますね。
 ソースコード出てきたよとかTVやるよと書いたんですが、本命のPhoneも出すよということみたいです。

Tizen Samsung Z phone to hit Russia Q3 2014, and will be shown off at the Tizen Developer Conference today
http://www.tizenexperts.com/2014/06/tizen-samsung-z-phone-hit-russia-q3-2014-will-shown-tizen-developer-conference-today/

 スペックは以下の通りです。

[Samsung Z Product Specifications]

Network LTE Cat.4 (150/50Mbps)
Display 4.8” HD Super AMOLED (1280 x 720)
AP 2.3GHz Quad core application processor
OS Tizen 2.2.1
Camera 8MP(rear), 2.1MP (front)
Video Video Codec: H.263, H.264(AVC), MPEG4, VC-1, Sorenson Spark, MP43, WMV7, WMV8
Video Format: MP4, M4V, 3GP, 3G2, WMV, ASF, AVI, FLV, MKV
Audio Audio Codec: MP3, AMR-NB/WB, AAC/ AAC+/ eAAC+, WMA, Vorbis, FLAC
Audio Format: MP3, M4A, 3GA, AAC, OGG, OGA, WAV, WMA, AMR, AWB, FLAC, MID, MIDI, XMF, MXMF, IMY, RTTTL, RTX, OTA
Camera Features Mini mode, Quick Shot, Best Photo, Drama, Panorama, Dual Camera
Value-Added Features Ultra Power Saving Mode
Download Booster
S Health 3.0
Color theme customization
Fingerprint sensor
Connectivity WiFi: 802.11 a/b/g/n HT40, MIMO(2×2), GPS/GLONAS, Bluetooth: 4.0 BLE, USB: USB2.0, NFC, IR Remote
Sensor Accelerometer, gyro, proximity, compass, barometer, Hall, RGB ambient light,Fingerptint Scanner, Heart rate sensor
Memory RAM: 2GB, Internal Memory: 16GB, microSD slot up to 64GB
Dimension 138.2 x 69.8 x 8.5mm, 136g
Battery 2600mAh

 残念ながら2.2.1ですね。2.3は出たばっかりだから仕方ないのですかね。
 結局のところ3.0マダー。

[Tizen][Xamarin]TizenもXamarinで書けるのですか?

 藪下@2課のガジェオタです。

 なにやら気になるニュースです。XamarinでTizen向けアプリも書ける。ですか?

Introduction to MonoTizen
http://www.tizenexperts.com/2014/05/introduction-monotizen/

 monoをTizenに移植したよってことですかね。
 一応monoプロジェクトともTizenプロジェクトとも独立にやってるみたいです。

[Tizen] Tizen 2.3 alphaのソースコードリリースとTizen TVのお話

 藪下@2課のガジェオタです。

 先週microsoft de:codeに参加して端末ゲットしてホクホクしてたらTizenに動きがありました。

ひとつめ

Tizen 2.3 Alpha Source Code Released
http://www.tizenexperts.com/2014/06/tizen-2-3-alpha-source-code-release/

 新しいバージョン出てきましたね。
 Tizenはバージョンアップごとのソースコードリリースなので久しぶりのリリースです。
 今回の目玉はウェアラブルプロファイルの追加ですかね。

 ていうか3.0マダー?

ふたつめ

Samsung to unveil development tools for Tizen TV at Tizen Developer Conference
http://www.tizenexperts.com/2014/06/samsung-to-unveil-tizen-tv-sdk-at-tizen-developer-conference/

 やっとですね。TVです。
 SamsungがTV出さないわけないと思ってたので出すと言われてもあーやっぱりですが、まあでもこれでモバイル、リビングとTizenで3 screensの準備はふたつ目まで来ましたね。あとはPCなんですけどIVI入れれば一応可能?
 あれ、でも前述の2.3 alphaにTVプロファイルって。。。

[Tizen]ロシアとインドでTizen端末が出るかも?

 藪下@2課のガジェオタです。

 Tizen端末がロシアとインドで出るとのことです。

Samsung、Tizenスマホをロシアとインドに投入予定との報道
http://itpro.nikkeibp.co.jp/article/NEWS/20140512/555983/?top_tl1

 ロシアは日本のバンドも入る端末になりそうな予感がなきにしもですね。

 グローバル版が出るかまだわからないですが出るようならちょっと入手を考えて見たり見なかったり。
 スペックがわからないのでまだ手が出る感じじゃないですけど。。。

[Tizen][非公式]Tizen 3.0のSDKへのアクセス方法

 藪下@2課のガジェオタです。

 おおっぴらにアナウンスされてはいませんが既にTizen 3.0 SDKを触れるようです。

Access Unofficial Tizen SDK 3.0
http://www.tizenexperts.com/2014/01/access-samsung-intel-unofficial-tizen-sdk-3-0/

 SDKマネージャでhttp://download.tizen.org/sdk/packages/リポジトリではなくhttp://download.tizen.org/sdk/latest/を見に行くのがキモのようです。
 正直なところSDKではなくTizen 3.0自体を触りたいですよね。早くリリースされないかしら。

[Tizen] ZTEのTizen端末がMWC2014でお披露目のようです

 藪下@2課のガジェオタです。

 一部で話題(ここらへんとかここらへんで)のZTEのTizen端末がMWC2014に出展されるようです。

Tizen ZTE Geek Phone appearing at Mobile World Congress 2014
http://www.tizenexperts.com/2014/01/tizen-zte-geek-phone-appearing-at-mobile-world-congress-2014/

 まあTizen界隈の大方の予想通りですね。

追記

 日本語の記事も出てますね。

Tizen OSを搭載した「ZTE Geek」を2月末のMWC2014で出展へ
http://rbmen.blogspot.jp/2014/01/tizen-oszte-geek2mwc2014.html

[Tizen] Tizen ExpartsさんがFOSDEM 2014でTizenのビルド方法のLTをやるようです

 藪下@2課のガジェオタです。

 Tizen Expartsさん見てたら何やらFOSDEM 2014でTizenのビルドの仕方のLTやるよという記事がありました。

FOSDEM 2014 – How to build a Tizen device at home?
http://www.tizenexperts.com/2014/01/fosdem-2014-build-tizen-device-home/

 Tizen AlienceではなくコミュニティベースでポーティングされているAllwinner向けのプロジェクトのビルドをレクチャしますよってことみたいです。
 ざっくりこんな見出しだそうです。

  • Assembling a Tizen device using open-source components;
  • Building Linux-sunxi and u-boot boot loader;
  • Building Tizen platform image from scratch using GBS (git-build-system);
  • Reparing a bootable Tizen microSD card;
  • Booting Tizen and debugging through UART0

 あとでYoutubeあたりにアップされそうな気がするので出てきたら見てみるのも面白いかもですね。
#藪下は英語聞き取れないので通訳さんが必要になりますが。。。

[Tizen][PAG]PAGが正式リリースしたようです

 藪下@2課のガジェオタです。

 以前少し注目していたPolaris App Generator (以下PAG) が正式リリースするそうです。

POLARIS App Generator正式販売開始
http://tizentizen.net/?p=976

 以前Intelのセミナーで質問した時にはPAGの実行時エンジンであるPolaris App Player (以下PAP) のロゴが消せないという事だったので商用には使いにくい会社もそこそこありそうな気がしますが、アプリの再開発の手間は格段に減るのでTizen向けに予算が取りにくいところにはいいかもしれませんね。
 ウィードコムさんPAPロゴの差し替えオプションとか用意すると嬉しがる企業さんいるんじゃないですかね?
#そういえば他人のapkを勝手に変換できちゃう問題ってどうするんだろう?

TizenでAndroidのpreference代替機能を探してみた

この記事はTizen Advent Calendar 2013 九日目の記事です。

どうもshintaniです。今回は、TizenでAndroidのpreferenceの代替機能
を探してみた時の話を記載します。

はじめに

preferenceとは、Androidアプリ開発時にアプリで使用するパラメータを
保存する目的で使用されるものです。このpreferenceの代替機能がないか
調べてみました。

結論としては、Registryクラスのメソッドを使用することで、preference
の代替とすることができました。

Registryクラスとは

Registryクラスとは、レジストリファイルを作成したり、レジストリファイルへの
入出力を行う機能を提供しています。(Windosのiniファイルのようなものを管理するクラスというイメージ)

主なメソッド

・Construct()
 レジストリファイルのオープン(ない場合は作成)

・AddSection()
 セクションの追加

・AddValue()
 セクションへの値の追加

・SetValue()
 セクションに設定した値の変更

・GetValue()
 セクションに保存した値の取得

ソースコードを書いてみた

Registryクラスを利用する場合は、下記の流れで処理を行います。

1. レジストリファイルを作成する

2. セクションを追加する

3. パラメータの読み書きを行う

Registryクラスを利用してソースコードを書いてみましたのでご紹介します。

下記の例では、LteCheckerPreference()にて、レジストリファイルをオープンし、
setUseNotification()でパラメータの保存、isUseNotification()にてパラメータの取得を行っています。

LteCheckerPreference::LteCheckerPreference(void)
: PREFERENCE_NAME(L"lte_checker")
,PREF_USE_NOTIFICATION(L"use_notification")
,prefPathName(L"BLM.ini")
,sectionName(L"setting")
{
	result r;
	
	 //①"BLM.ini"ファイルをオープン(なければ作成)
	 r = pref.Construct(App::GetInstance()->GetAppDataPath() + prefPathName, "a+");
	
	 //②"setting"という名前のセクションを追加
	 r = pref.AddSection(sectionName);
}

void
LteCheckerPreference::setUseNotification(int use){
	result r;
	
	//③"setting"セクションに、"use_notification"キー、値を設定
	r= pref.SetValue(sectionName, PREF_USE_NOTIFICATION, use);
	
	//"use_notification"キーに該当するキーがなければ
	if(r == E_KEY_NOT_FOUND) { 
		//④"setting"セクションに、"use_notification"キー、値を追加
		r = pref.AddValue(sectionName, PREF_USE_NOTIFICATION, use);
	}

	r = pref.Flush();
}

int
LteCheckerPreference::isUseNotification(void){
	result r;
	int use = 0;
	
	//⑤"setting"セクションの、"use_notification"キーに対応する値を取得
	r = pref.GetValue(sectionName, PREF_USE_NOTIFICATION, use);

	if(r == E_KEY_NOT_FOUND || r == E_DATA_NOT_FOUND ){
		use = 1;
		r = pref.AddValue(sectionName, PREF_USE_NOTIFICATION, use);
	}

	return use;
}

感想

他にも良い方法はあるかも知れませんが、Androidのpreferenceのようにパラメータの保存・取得を簡単に行う方法をご紹介しました。C++でイチから書くよりソースコード量が少なくすみますので、パラメータ保存・取得を簡単に行いたい方は、是非試してみてください。

[HTML5][Firefox OS][Tizen]手元にあったHTML5アプリをFxOSとTizenで動かしてみるの巻

 藪下@2課のHTMLいけてないほうです。

 この記事はHTML5 Advent Calendar 2013 四日目の記事です。
 この記事はTizen Advent Calendar 2013 四日目の記事です。

 藪下は名乗りの通りHTML5とかよくわからない子なのでFxOSとかTizenでHTMLアプリを動かして遊んでみようと思います。
 ちょっと図を取って書き込んでとかする時間がないので後でおいおいやります。

今回やること

 藪下は名乗りの通りHTML5とかよくわからない子(4行ぶり2回目)です。なのでFxOSをさわり始めた時にHTML5知らないとだめだよなーとアプリをこさえてみたことがあります。はじめてのHTMLアプリでもGoogle Maps APIはやさしかったです。

 こんなかんじ

 これそのまま使って確認させろやって人はここからzip落としてくださいな。

 これをFxOSとTizenに乗せて動かしてみます。

目次

  • 動かす環境の準備
    • Firefox
    • Firefox OS 1.1 Simulator
    • Firefox OS搭載端末 (keon)
    • Chrome
    • Tizen Simulator
    • Tizen開発用端末
  • FxOSで動かす
    • FxOS向けアプリにする
    • Simulatorへのインストール
    • 端末へのインストール
  • Tizenで動かす
    • Tizen向けアプリにする
    • Simulatorへのインストール
    • 端末へのインストール

動かす環境の準備

 今回は動作環境として以下のものを用意します

  • Firefox
  • Firefox OS 1.1 Simulator
  • Firefox OS搭載端末 (keon)
  • Tizen Simulator
  • Tizen開発用端末

Firefox

 HTML5 Advent Calendar 2013から来た人には釈迦に説法ですが、Firefoxの最新版は現在25(もうすぐ26がでますよ!)です。以下のURLからダウンロードできます。
 Firefox OS 1.1 Simulatorを使うにも必要になるので、インストールしていない人はこの機に入手しましょう。

Firefoxダウンロード
http://www.mozilla.jp/firefox/

Firefox OS 1.1 Simulator

 Firefox OS 1.1 SimulatorはFirefoxのアドオンとして提供されています。Firefox OS 1.1 Simulatorは以下のURLからFirefoxでどうぞ。

Firefox OS 1.1 Simulator 4.0
https://addons.mozilla.org/ja/firefox/addon/firefox-os-simulator/

Firefox OS搭載端末 (keon)

 今回はkeonです。おっかしいなー。もうPeak+が届いててもいい頃だったのに。。。
 keonは現在入手できないので端末で遊びたい人はZTE Openあたりをどうぞ。ただし電波法違反になるので電波は出さないように注意してくださいね。

eBay ? ZTE Open Powered By Firefox OS 3G Unlocked Smartphone Orange
http://www.ebay.com/itm/331031989534

Chrome

 TizenのSimulatorはChromeのプラグインになってます。なのでChromeをインストールしておきます。
 たぶん見に来てる人のほとんどが入れてるんでしょうが一応URL置いときますね。

Chrome
https://www.google.com/intl/ja/chrome/browser/

Tizen Simulator

 TizenのSimulatorはTizen SDKツールセットの一部なので、Tizen SDKをインストールすると一緒にインストールされます。
 Tizen SDKの入手は以下のページからどうぞ。

Tizen SDK
https://developer.tizen.org/downloads/tizen-sdk

Tizen開発用端末

 Intel主催のセミナーやハンズオンに参加すると借用できるようです。藪下は何度も行く機会を逃しつつやっと先日入手できました。
 セミナーについては以下のページにまとめられているようなのでチェックですよ。

Intelセミナー情報
http://japan.intel.com/swdev/

FxOSで動かす

FxOS向けアプリにする

 まずはFxOSにインストールできるようにします。
 とはいえ、動いているものがあるなら簡単です。FxOSアプリにはそのアプリがどのようなものかシステムに指示するためのマニフェストファイルが必要になります。今回インストールしたいアプリにもマニフェストを用意します。

{
    "name": "Picture Map",
    "description": "view picture app",
    "launch_path": "/index.html",
    "icons": {
        "128": "/img/icon-128.png"
    },
    "developer": {
        "name": "NAGATSUKI Aoi",
        "url": "http://www.nagatsuki-do.net"
    },
    "default_locale": "ja",
    "permissions": {
        "geolocation": {
            "description": "Required for Map view"
        }
    }
}

 ざっくりと眺めると、アプリの名前、説明、起動する際に読まれるHTMLファイルへのパス、アプリアイコン辺りが基本セットです。
 そのほかにロケールやパーミッションが書かれてますがこれらは必要に応じて書きます。今回はGPSを使っているのでgeolocationを許可してますね。

 これをうごいているアプリのルートディレクトリにおいてあげればもうFxOSアプリです!

Simulatorへのインストール

 Simulatorへのインストールは開発ツールからSimulatorを立ち上げたときに表示されるページで行えます。

 まずはAdd Directoryボタンからローカルに置いてあるアプリのmanifest.webappを読むか、web上に置いてあるならAdd URLからmanifest.webappのURLを開きましょう。
 ダッシュボードに何か出てきた成功です。manifest.webapp検査されてValidation Result: OKになっているのを確認しましょう。

 たぶん追加するとSimulatorが立ち上がってるんじゃないかと思いますが、今後修正したりなんかした場合はCtrl+RとかRefreshボタンなんかを使うといいです。

端末へのインストール

 端末へのインストールも実はSimulatorと同じ要領でできます。詳しくはこちら(ステマ)を見ていただくといいかと思います。

Tizenで動かす

Tizen向けアプリにする

 今度はTizenアプリにしてみます。既存のwebアプリをTizenアプリにする手順は公式のWikiにまとまってます。

web アプリケーションをTizen SDK に読み込む – Tizen Developers
https://developer.tizen.org/ja/downloads/sample-web-applications/load-web-app-tizen-sdk?langredirect=1

プロジェクトの作成

 まずはIDEを立ち上げてプロジェクトを作ります。今回はwebアプリの取り込みなのでTizen Web ProjectではなくProject…のほうからプロジェクトを作ります。

  • General
    • Project

 を選んでNext。

 Project nameに任意のアプリ名を入れて、Use default locationのチェックを外してLocationを既存のアプリの場所にしてFinishします。

.projectの用意

 .projectファイルができてますが空っぽなのでいろいろ書く必要があります。サンプルとかからコピーするのが一番手っ取り早い(って公式のWikiに書いてる)ので以下のURLのをパクります。

https://developer.tizen.org/downloads/sample-web-applications/load-web-app-tizen-sdk/sample-.project-file

 変更箇所はアプリ名ぐらいでしょうか。

config.xmlの用意

 さらにconfig.xmlというFxOSでのmanifest.webappに相当するものが必要になります。たぶん作られてないですよね。作りましょう。

  • プロジェクトツリーのプロジェクト名を右クリック
    • New
      • File

 からNew Fileダイアログを出してファイル名にconfig.xmlを入力してFinishで警告ダイアログが出てきます。これを無視してやればconfig.xmlが空でできます。

 空のcomfig.xmlを開いたらまたも下記URLのをパクります。だって公式Wikiに書いてあるんだもん。。。

https://developer.tizen.org/downloads/sample-web-applications/load-web-app-tizen-sdk/sample-config.xml-file

 Overviewのタブで自分のアプリに合わせてごにょごにょしてください。

プロジェクトの構築

  • プロジェクトツリーのプロジェクト名を右クリック
    • Refresh

 するとプロジェクトの構築が可能になっているはずです。

  • プロジェクトツリーのプロジェクト名を右クリック
    • Build Project

 でプロジェクトを構築すればTizenアプリの出来上がりです! が、初めての場合たぶん途中で止められます。セキュリティプロファイルをなんとかしろと言われるはずなので作ってあげましょう。

  • Window
    • Preference
      • Tizen SDK
        • Security Profiles
          • Profiles

 のAddボタンでセキュリティプロファイルを追加します。
 このままだとプロジェクトの構築でやっぱりAuthor作れよとか怒られるので、

  • Window
    • Preference
      • Tizen SDK
        • Security Profiles
          • Author Certificate

 の横にGenerateボタンがあるのでAuthor Certificateも作りましょう。(*)がついている項目は必須項目なので何かしら入れてあげましょう。

Simulatorへのインストール

 SimulatorはChromeで動きます。なのでTizen SDKにChromeの実行ファイルの場所を教えてあげる必要があります。

  • Window
    • Preference
      • Tizen SDK
        • Web
          • Simulator
            • Google Chrome Settings
              • Google Chrome location

 にChromeへのパスを入れましょう。
 あとうちの環境ではLaunch the simulator in Google Chrome application modeのチェックがついているとSimulatorが起動できなかったので、単にChromeが起動するだけだよ? という人はチェックを外してみてください。

 さて準備ができたのでインストールです。Simulatorへのインストールは簡単です。

  • プロジェクトツリーのプロジェクト名を右クリック
    • Run As
      • Tizen Web Simulator Application

 でSimulatorが起動してアプリが動きます。

端末へのインストール

 次はお待ちかねの端末へのインストールです。と言ってもこちらも簡単です。
 端末をPCに繋いだら

  • プロジェクトツリーのプロジェクト名を右クリック
    • Run As
      • Tizen Web Application

 で端末にインストールされてアプリが起動します。

さいごに

 とまあ一通り簡単にみてきましたがHTML5界隈の人も簡単にアプリ作れちゃうと思うのでやってみてください!
 逆にTizen界隈はまだ組み込み屋さんが多くてWebアプリに忌避感あるかもしれないですけどこの機になんかやってみるといいですよ!