<   2013年 12月 ( 15 )   > この月の画像一覧

Android新端末情報
イタリア高級車メーカー、ランボルギーニが Android スマートフォン「Lamborghini Antares」発表、価格2500ポンド(約42万円) | GPad

BenQ、ミッドレンジモデル4.5インチスマートフォン「A3」と「F3」の2機種を発表、価格5990台湾ドル(約2万円)より | GPad

中国 OPPO、206度まで回転できるカメラを搭載した大型5.9インチスマートフォン「OPPO N1」を12月10よりグローバル販売開始 | GPad

ZOTAC、クアッドコアプロセッサ Tegra 4 搭載 NVIDIA タブレット「Tegra Note 7」を日本で12月4日発売、価格25,800円 | GPad

ASUS、タブレットミーモパッドシリーズ8インチサイズ「MeMO Pad 8」を日本にて12月下旬以降発売、価格25,000円前後 | GPad

中国 ZOPO、低価格199.99ドル(約2万円)の裸眼 3D ディスプレイ搭載デュアル SIM 対応スマートフォン「ZP600+」発売 | GPad

シネックスインフォテック、大型21.5インチ Android 4.1 搭載モニター「AOC AiO A2272PWHT」12月中旬発売、価格44,800円 | GPad

HP、クアッドコアプロセッサ Tegra 3 搭載7インチタブレット「HP Slate 7 Plus」発売、価格149.99ドル(約15,000円) | GPad

HP、Tegra 4 搭載モデルを含む Android タブレット4機種「Slate 7 Extreme」「Slate 7 HD」「Slate 8 Pro」「Slate 10 HD」発売 | GPad


その他
イー・アクセス(イーモバイル)とウィルコムが合併、2014年4月1日よりイー・アクセスに統合されウィルコムは消滅へ | GPad
[PR]

国内のandroidデベロッパーであれば、Nexus5や噂のNexus8(Nexus10 2013?)の方に目がいってしまうのは当然かもしれません。
しかし一般ユーザー相手にアプリ公開しているデベロッパーであれば、主要3キャリアのスマートフォン端末を無視することはできません。どんなにデベロッパーにとって◯◯な端末であろうと、ユーザーはNexusというブランドには惹かれることなく、各々のキャリアの国産端末を選んでしまうのです。

というわけで、ずいぶん遅れてしまいましたが、主要3キャリアの冬モデル端末の発表が全て終了しましたので、各社の冬モデル端末のまとめや、雑感などを書いてみます。

情報自体をまとめるのはめんどくさいので、スマートフォンデータベースさんとGPadさんのまとめ記事を使っています。合わせて御覧ください。

■au
KDDI au 2013年冬モデル発表会を10月2日(水)開催、新型 Android スマートフォン6機種とタブレット1機種発表 | GPad

au - スマートフォンデータベース


ハンドセット5機種+ファブレット1機種+タブレット1機種の、計7機種+αです。
それぞれのメーカーのフラッグシップモデルを1つずつ採用しているようなラインナップとなっています。唯一LGの端末のみが国内専用モデルという位置づけになりますが、実際にはLG G2がベースになっているかと思われます。
ちなみに京セラ端末を採用しているキャリアはauのみとなります。また、Galaxy Noteはありますが、サムスンのハンドセット端末はありません。


■docomo
ドコモ、「2013-2014 冬春モデル 新商品・新サービス発表会」10月10日(木)開催、Android 端末14機種の製品情報まとめ | GPad
ドコモ - スマートフォンデータベース

ハンドセット11機種+ファブレット1機種+タブレット1機種の、計13機種+αです。
さすがにiPhoneがない分(※この記事を書いたときは、まだ販売決定していませんでした)、端末の数はキャリア1です。とはいえ、ディズニー・モバイルもドラクエスマホもスマートフォンジュニアも、既存の新端末(ARROWSとAQUOS PHONE)のバリエーションモデルです。事実上ハンドセット端末は7機種と思えばいいでしょう。
ソニーモバイルとシャープでそれぞれフラッグシップモデルに加えて、4インチ台を保った端末が1つずつ採用されています。シャープ側の解像度はフラッグシップと同じなのに対し、ソニーモバイル側は解像度がFullHDでなくFWXGAに落ちている点を見ると、なんだかんだでシャープの液晶技術の高さを感じました。


■softbank
ソフトバンク、2013年冬から2014年春モデルとなる新商品発表会を9月30日(月)15時より開催、Android スマートフォン3機種発表 | GPad
ソフトバンク - スマートフォンデータベース

ハンドセット4機種(1機種はディズニー・モバイル)のみです。
もはやandroidに頼らずとも充分、とでも言ってるような強気の選択です。ラインナップもシャープ2機種に富士通1機種という純国産企業の端末のみとなっています。
AQUOS PHONEも、名前だけ違ってドコモと同一かと思いきや、スペックに微妙な差異があります。逆にこれだけの数を用意するシャープの元気さにも驚きます。落ち着いてもらってもいいんですが。

□タブレットについて
auとドコモがそれぞれタブレットを1機種発表しましたが、どちらも同じ、Arrows Tabになります。

□+αについて
auとドコモにそれぞれGalaxy Gearというスマートウォッチが含まれています。

■雑感

  • auのXperia Z1 fを除いた(細かく言うと、スマートフォンジュニアも除く)全てのハンドセットの端末のdpiがxxhdpiクラスになりました。もはや国内は完全にxxhdpiの始まりです。

  • 数値上、4.5インチAQUOS PHONEのdpiがxxxhdpiクラスに入ろうとしています。

  • 一時期、また増えるかと思ったタブレットが、事実上1種類だけになりました。タブレットはキャリア販売という場から撤退し、家電量販店などの小売店からの戦略に変わっていくのでしょう。

  • (客)「スマートウォッチ?いいえ、知らない子ですね。」

  • iPhoneがついに3キャリア販売され、イーモバイルでNexus5が発売され、そしてどちらも現在SIMフリー端末が発売された現状、これから主要キャリアの端末の販売の仕方が変わるのか、もしくは何も変わらないのか。その辺り、個人的に楽しみです。


[PR]
Q. なんでいまさら2.3.1なんですか? もう2.4.7出てますよ??
A. 1年ぐらい前に作ったソースが出てきたから

1. android用のファイルを落とす
こちらでまだ入手出来ました
http://sourceforge.jp/projects/sfnet_opencvlibrary/downloads/opencv-android/2.3.1/OpenCV-2.3.1-android-bin.tar.bz2/

2. 適当な場所に解凍する
中身はこんな感じのはずです
OpenCV-2.3.1
 +androidのeclipseプロジェクトっぽいのがいろいろ
samples
 +サンプルっぽいのがいろいろ


3. eclipseでOpenCV-2.3.1の中身をインポート
ごく普通に「android - Existing Android Code into Workspace」でOK。
ちなみに1年前の代物らしく、プロジェクトがAPI4でビルドされています。
あと右クリック→プロパティ→Androidで、下のライブラリにチェックが入っていることを確認してください。

4. OpenCVを使いたいプロジェクトと連携
プロジェクトを右クリック→プロパティ→Androidで、下のライブラリのところで「追加」を押して、先ほどインポートしたOpenCVライブラリのプロジェクトを追加しましょう。

これで準備管完了です。
もう1年前の代物なので、ざざっと一部のフィルタの使い方だけ書きます。
というか、それしか試してなかったので。

5. Bitmap画像をMat形式に変換する。
いちおう、BitmapはARGB_8888形式でやったほうがいいかもしれません。

Mat srcMat = Utils.bitmapToMat(srcBmp);


6-1. 画像をグレースケール化する
Imgproc.cvtColor(srcMat, srcMat, Imgproc.COLOR_RGB2GRAY);
Imgproc.cvtColor(srcMat, srcMat ,Imgproc.COLOR_GRAY2BGRA,4);

ちなみに1つ目の引数が入力元、2つ目の引数が出力元です。

6-2. 画像をメディアンフィルタでぼかす
Imgproc.medianBlur(srcMat, srcMat, BLUR_VALUE);

こちらも引数の内容は同じです。

7. 変換したMatをBitmapに変換する
Utils.matToBitmap(srcMat, dstBmp);


以上です。
いまとなっては端末自体のスペックが上昇しているので、あまり恩恵を感じないかもしれませんが、少なくとも1年前の感覚でいえば、かなり高速で画像加工してくれる素敵なライブラリでした(実際に諸事情でアプリ化には至りませんでしたが)。

そのうち最新版でも試してみます。
[PR]
そういえば前回、「xxhdpiが480dpiまで、xxxhdpiが640dpiまで」と当然のように書いていましたが、これはandroid SDKのソースをもとに、判断しています。
というわけで、android SDKのソースを落として、該当部分を見てみましょう。

1. androidSDKのソースを取得する
androidSDKマネージャを使って、最新ソースを落としましょう。

d0252816_23452516.png


インストールが完了すると、android-sdkの入っているフォルダに

android-sdks/sources/android-19/


というものができています。
19の部分は、先ほど選んだAPIレベルの値です。
この下に、SDKのソースが一式入っています。

さて肝心のdpiに関するソースですが

android/util/DisplayMetrics.java


このファイルに、DPI関連の定数が記載されています。

/**
* Standard quantized DPI for extra-extra-high-density screens. Applications
* should not generally worry about this density; relying on XHIGH graphics
* being scaled up to it should be sufficient for almost all cases.
*/
public static final int DENSITY_XXHIGH = 480;

こちらがxxhdpiの判定に使っている、定数のようです。
コメントの部分は要訳(意訳)すると、
「あんまり気にしなくていいよ。世の中の端末はxhdpi以下で作っちゃえばほとんど対応するからさ。」
と書いてあるようです。もう日本国内では、冬モデルのほぼ全てがxxhdpi端末なんですけどね……。

/**
* Standard quantized DPI for extra-extra-extra-high-density screens. Applications
* should not generally worry about this density; relying on XHIGH graphics
* being scaled up to it should be sufficient for almost all cases. A typical
* use of this density would be 4K television screens -- 3840x2160, which
* is 2x a traditional HD 1920x1080 screen which runs at DENSITY_XHIGH.
*/
public static final int DENSITY_XXXHIGH = 640;

xxxhdpiの定数にも、何かコメントがあります。
要訳(意訳)すると
「これ、4Kテレビ用だから」
と書いてあるようです。もう2Kハンドセット端末が出ちゃうんですが……。

そんなわけで、コメントを見る限り、android側は若干解像度まわりの事情にはのんきなようですね。

ちなみに、この定数を使っているソースは
android/app/ActivityManager.java
com/android/server/display/OverlayDisplayAdapter.java

こちらの2ファイルのようです。余裕があるときに、こちらの処理も覗いてみるといいでしょう。

というわけで、今後もAPIが追加されたときには公式の差分表だけでなく、こうしてSDKソースを直接見るのもありではないでしょうか。
差分表だけだと見逃すこともありますからね。
[PR]
ひょんなことで、enchant.jsとかその辺を使ってゲームを作ることになりました。
その関係で、いつものノートPC(MSI U100)にapache2と、ついでにvimにNeoBundleいれたりシンタックスハイライトの設定をしたので、その時のメモ書きです。


apache2のインストール、vhostの設定
実はapache2はだいぶ前にインスコしてました。どうやってインスコしてたのか、覚えていません…。
でもたしかこんな感じで設定してたはず。

$sudo apt-get install apache2


これだけだと1サイトしか作れないので、バーチャルホスト対応させます。
バーチャルホスト用のサイトは、ユーザーディレクトリ下にSitesというディレクトリを作って、そこで管理するようにしています。

$mkdir -p ~/Sites/yamacraft.xxx.local/
$vi /etc/apache2/sites-available/virtual.host2

# 下の内容を入力
<VirtualHost *:80>
DocumentRoot /home/yamacraft/Sites/yamacraft.xxx.local
ServerName yamacraft.xxx.local
ServerAdmin yamacraft.xxx.local
<Directory "/home/yamacraft/Sites/yamacraft.xxx.local">
AllowOverride All
</Directory>
</VirtualHost>


そして下記コマンドで、作成したバーチャルホスト設定を有効化させます。
ちゃんとできると、/etc/apache2/sites-enabled/にシムリンクができます。

$a2ensite virtual.host


最後にapacheを再起動させましょう。

$sudo service apache2 reload


しかしこれだけではまだアクセスできません。
hostsに下記の内容を設定します。

$sudo vi /etc/hosts

#下の内容を追記します
127.0.0.1 yamacraft.xxx.local


これでブラウザを開いて
http://yamacraft.xxx.local
にアクセスすれば、設定した環境にアクセスできるようになります。

NeoBundleを入れて、vimにシンタックスハイライトさせる
現在のvimがあんまりハイライトしてくれてない感じがしたので、ついでにNeoBundleを入れて、その経由でsolarizedを入れることにしました。

まずはNeoBundleの設定。.vimフォルダにいろいろするんですが、.vimがrootユーザーになっていたので、権限を変えます。

$sudo chown -R yamacraft:yamacraft ~/.vim


そしてインストール準備。gitが入ってること前提です。

$mkdir -p ~/.vim/bundle
$git clone https://github.com/Shougo/neobundle.vim ~/.vim/bundle/neobundle.vim
$git clone https://github.com/Shougo/vimproc ~/.vim/bundle/vimproc


.vimrcを作成します。
一緒にsolarizedのインストール設定もしてしまいます。

$vi .vimrc

" 下の内容を記述
set nocompatible
filetype off

if has('vim_starting')
set runtimepath+=~/.vim/bundle/neobundle.vim/
call neobundle#rc(expand('~/.vim/bundle/'))
endif

NeoBundle 'Shougo/neobundle.vim'
NeoBundle 'altercation/vim-colors-solarized'

filetype plugin on
filetype indent on

" solarized設定
syntax enable
call togglebg#map("")
set t_Co=256
set background=dark
let g:solarized_termcolors=256
colorscheme solarized


g:solarized_termcolorsだけでなく、t_Coも設定しないと反映してくれませんでした。
上記の.vimrcを作成したら、vimを起動して(恐らく「colorscheme solarized」の部分でエラーが出ますが無視)、

:NeoBundleInstall


このコマンドを実行すると、NeoBundl+solarizedがインストールされます。
solarizedはインストールして直ぐに反映されないので、インストールが完了したら、いったんvimを開き直しましょう。

と、ここまで書いておいてなんですが、多分ちゃんとsolarizedの配色が反映されてない……。
とりあえず、ハイライト表示はされているのでいったんここで妥協してます。
あと上の設定だと、F5キーを押すたびに、ハイライトのコントラストが変化します。ノートPCのディスプレイと、外部ディスプレイ出力を交互に使う自分の場合、両方の色表示が微妙に違うので、この設定は結構便利です。

というわけで、課題は残っていますが、まずはここまで。
[PR]
by yamacraft | 2013-12-02 22:00 | いろいろ