2011/11/18

Androidアプリ非同期処理の実装

AsyncTaskのメソッド


型パラメータ

  1. Params doInBackground()の引数の型
  2. Progress 進捗を表わす型
  3. Result バックグラウンドで実行した結果の型
メソッド
  1. onPreExecute() バックグラウンドの処理開始前にUIスレッドから呼び出される。進捗ダイアログの表示など。
  2. doInBackground() バックグラウンドで実行する処理
  3. onProgressUpdate()
  4. onPostExecute() バックグランドでの処理終了後にUIスレッドから呼び出される。結果を画面に反映する処理
  5. onCancelled();

2011/11/05

Titanium Studioで日本語のAndroidアプリ名

国際化対応 i18nディレクトリを作成し、その中に ja ディレクトリを作る。
ja フォルダ内にstrings.xmlを設置する。

strgins.xml
<?xml version="1.0" encoding="UTF-8"?> 
<resources>
<string name="appname">[@string/appnameに指定する文字列]</string>
</resources>


/build/android 配下にできるAndroidManifest.xmlを /platform/android/にコピーし、
android:label=""をandroid:label="@string/appname"に書き換える。
(appnameは任意の文字列)

その際、en ディレクトリにも strgins.xml を準備しないと、android marketにアップロードする際に、
The file is invalid:・・・Failure getting entry for 0x7f030000・・・package 0 (error -75) ERROR getting 'android:icon' attribute: attribute is not a string value
のエラーが発生する。(enフォルダとstrings.xmlを準備したらエラーが発生しなかった。)


Titanium mobile で作ったAndroidアプリにadmobを入れる

Titanium の admobモジュールをインポート

ここからTitanium-Android-AdMob-Moduleをダウンロード
bkurzius-Titanium-Android-AdMob-Module-cdf87db.zip
解凍後、dist配下のcom.studioclassics.admob-android-0.1.zipを
Titanium Studio の導入したいプロジェクトで
Import > General > ArchiveFile からインポートする

app.js への記述方法は、modules > android > ti.admob > 1.0 > example > app.js を参照


tiapp.xmlの<modules/>を以下に書き換える。
<modules>
<module version="1.0">ti.admob</module>
</modules>

AndroidManifestファイルの
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
を消すと表示されない?

2011/10/24

Titanium mobile androidで"addAnnotations"は使えない

MapViewで、addAnnotations(複数のマーカーを地図にまとめてプロットする)は使えないので、
for文を使ってaddAnnotationを繰り返すことで対応

2011/08/13

スマートフォン画面サイズまとめ

キャリア端末のほとんどの解像度は
800x480
854x480
に分類される。

シャープの端末だけは独自路線まっしぐら
IS03 960x640
AQUOS PHONE 960x540

2011/07/31

jQueryMobileとwordpress

wordpressのTheme用jQueryMobile
「jQuery Mobile WordPress Theme」x

DEMO1

DEMO2

使い方
まだ試していません。m(_ _)m
jQueryMobileのバージョンはα版のようです、β版に対応したテーマがでるの待つことに・・・

2011/07/10

アプリ用のGoolge Maps API用キー生成手順

1.キーストアから証明書のフィンガープリント(MD5)を取得する
 コマンドプロンプトからkeytoolコマンドを実行する
 デバッグ用キーストアのパスワードは、android

cd C:\Program Files (x86)\Java\jdk1.6.0_24\bin
 keytool -list -keystore "C:\Users\USERNAME\.android\debug.keystore

 各PCで生成された証明書のフィンガープリント(MD5)は、16進数表示の数字がコロン区切りで16個表示される。

Android用のMapsKeyの取得→ここから(Sign Up for the Android Maps API)

XMLのレイアウトサンプルが表示される

Eclipseで新しいプロジェクトを作成する際の入力項目

Eclipseで新しいプロジェクトを作るときに入力する項目
[New Android Project]

Projects Name プロジェクト名
Contens 保存先
Build Target ターゲットAndroidバージョン
Properties
Application name アプリ名(インストールしたときに表示される)
Package name パッケージ名(半角英数字小文字、取得しているドメインをトップ階層にする。後かあら変更可能)
Create Activity メインのクラス名
MinSDK Version 対象とするAndroidバージョン(API Levelの数字)

2011/07/09

windows7 にAndroid SDKインストール

windows7で、android-sdk-windowsをインストールする際につまずいたこと

インストール先を「C:\Program Files (x86)」にしたらプラグインの追加ができなかった

「C:\Users\USERNAME\Documents」にインストールしたら解決

スマホの位置情報取得方式

・GPS
・複数局測位方式 複数の基地局からの電波の強さから算出

2011/07/06

実機デバッグ

端末側を設定してUSBでつなげる
 端末側の設定
 メニュー→アプリケーション→提供元不明のアプリにチェック、
 さらに開発→USBデバッグとスリープモードしないをチェック

開発ツールから[実行]する際に、エミュレーターと実機を選択できるので、
迷わず実機を選択するとアプリが立ち上がる。

2011/07/05

jsWaffleka開発手順

AptanaStudio2,AndroidSDKのインストールとjsWaffleのインストールおよび設定が完了後のアプリ開発手順のまとめ 詳しくはこちら

新規プロジェクトの場合
1.jsWaffleを起動し、ProjectName PackageName OutputDirを入力してMakeProjectボタンをクリック
これでプロジェクトフォルダの生成が完了。Windowは閉じる

2.Aptana2を起動
3.[File]から[NewProject]を選択し、AndroidProjectを選択状態にしてNextボタンをクリック
4.existing sourceをチェックし、jsWaffleで生成したプロジェクトのパスをLcationに入力
5.警告は無視して[Finish]ボタンをクリック
6.

既存プロジェクトの場合
 Aptana2を起動

 

Galaxy S から S2 に機種変して

Galaxy S から S2 に機種変して気付いたこと

サイズは横幅が2mm広くなっているが、それ以上に大きくなったように感じる。
でも、手に収まる(ギリギリ)サイズです。

重さは、2g重くなっていますが普通の人にはわかりません。

ディスプレはさらに明るくなった感じがします。
バッテリーのもちはほとんどかわりません。

一番の変化

それはCPUパワーの変化でしょう

galaxy Sのときは、タスクマネージャーからメモリ消去を実施することが
ありましたが、galaxy S 2に変えてから無くなりました。

アプリの強制終了も滅多に起きません。

Galaxy Sでは、肝心のときにフリーズして再起動していました。
・出先でいざ地図を起動したときとか
・あわてて操作したときとか
よくフリーズしました

Galaxy S 2になって無くなりました。
これがデュアルコアの実力なのでしょう!

正直爆速です 。

Galaxy Sからの買い換える価値あります
2011夏モデル唯一のデュアルCPU

Xperia arc  と MEDIA を触れるとモッサリ感じるのは自分だけでしょうか

冬には、日本メーカーもクアルコムのデュアルコアを搭載してくるはずです。
もちろん Tegra2プロセッサー搭載機も選択肢に入ります。
Tegraは冬にはクアッドコアとか言っていますが・・・爆速を超えて超速?

今買って買い換えて後悔しないように・・・・

2011/06/26

Galaxy S2 のテザリングに関して

FOMAデータ通信専用プランでGalaxy S II を使い始めて3日目
テザリングを試そうとしたが
テザリングの設定をすると通信が切れる。

ISPは、mopera Uを利用しているので、それが原因か?
行き詰まったので、念のためドコモショップで確認すると・・・

確かに、moperaUでテザリングはOKとのこと。

ではなぜGalaxy S IIでテザリングができないのか?

待つこと数分、裏からもどってきたドコモショップ店員の一言

「Galaxy S II の仕様で、テザリングの設定をすると、
APNの設定が、SPモードに自動的に切り替わります」と・・・

そりゃ、いくらガンバってもmopera Uでテザリングができない訳だ。

誰が決めたんだこの仕様、それともバグか?
早いとこなんとかしてくれー
PCでデータ通信する際、いちいちSIMを差し替えるのは面倒だ!

GalaxyS2からHDMIでTV出力できるようになりました。

2011/06/22

jQueryMobile 祝β

ようやくβ版がリリースされました。
さっそくアルファ版サイトのライブラリをβ版に変更

すると

あれ、PCサイトをみているような小さい表示・・・

デモサイトのソースを見てみると

次のメタタグを発見
<meta name="viewport" content="width=device-width, initial-scale=1">
これで解決

デモサイトはPCブラウザで閲覧すると2カラムに表示されます。
jQueryMobileをα版をβ版に替えただけでは再現できず・・・

2011/06/20

Flash Builder 4.5の使い方まとめ

AIRアプリケーションを開発するためのツールが「Adobe Flash Builder

データ中心型開発

作成したAndroidアプリケーションは、「AIR Debug Launcher(ADL)」というシュミレーター上でプレビューやデバッグも可能

ActionScriptという言語と、MXMLというXMLファイルを使って実装する。

Flash Builderでの開発手順
  1. 新規プロジェクト作成
  2. デザイン画面でコンポーネント配置
  3. コンポーネントの動きをActionscript3.0で書く
  4. 実行する。
  5. 1~4を繰り返す
Viewコンポーネント
→ 単一のUI画面を表示
  → ViewをベースにしてカスタムのMXMLコンポーネントまたはActionScriptコンポーネントを作成し、コンテンツ内に表示させたいコンポーネントを追加する
→ Viewで、表示するデータの指定は、dataプロパティを使用する 
    → Viewでは、画面間でデータを受け渡すことができる。
ViewNavigatorおよびViewNavigatorApplicationがメモリを保存したり、アプリケーション実行後にデータを維持したりできるようになる。

ActionBar:標準的なヘッダーコンポーネント
タイトルとアクションボタンを1つ以上配置可能
画面ごとにカスタマイズ可能

ViewMeni:デバイスのメニューボタンを押したときに表示される標準コントロール
メニューアイテムのセットを含むviewMenuItemsプロパティを追加可能

ViewNavigator :スタックベースの履歴メカニズムを使用して、ActionBarとViewのセットを管理
アプリケーションが起動すると、 ViewNavigatorはfirstViewプロパティで指定したビューを表示する。

新しいビューに切り替える場合 → pushView()
前のビューに戻る場合 → popView()
を呼び出す

上記機能をすべて1つにまとめた便利なアプリケーションクラスが、ViewNavigatorApplication


Flash Builder の src フォルダの構成
[default package] アプリケーションのメインファイル
[valueObjects]
[views] ビューパッケージ



    2011年下半期のリリースが予定されている無償アップデーターにより、iOSとBlackberry Tablet OSアプリケーションの開発にも対応する。

    以上、詳細は
    Flash Builder 4.5でAndroidアプリ開発 ~概要から作成手順の基本まで最速解説!
    これからはじめるRIAとFlexプログラミング・・・Flex開発でもっともベーシックとなるトピック
    「」
    を参照。

    2011/06/19

    2010年ドコモAndroid端末まとめ

    2010年発売のドコモAndroidスマートフォン
    no Name model number weight(g) display OS Ver CPU
    1 Xperia SO-01B 139g 4.0 1.6 QSD8250 1GHz
    2 LYNX SH-10B 230g 5.0 1.6 QSD8250 1GHz
    3 Galaxy S SC-02B 118g 4.0 2.2 S5PC110 1GHz
    4 Galaxy Tab SC-01C 382g 7.0 2.2 S5PC110 1GHz
    5 REGZA Phone T-01C 149g 4.0 2.1 QSD8250 1GHz
    6 LYNX 3D SH-03C 140g 3.8 2.1 QSD8250 1GHz

    jsWaffleのファイル一覧

    jsWaffleで使用するフォルダは「assets」フォルダのみ
    ルートディレクトリ構造
    noディレクトリ概要
    1.setting設定ファイル置き場
    2asset HTML,画像ファイルなど素材入れ
    3bin実行ファイル出力先
    4genリソース番号などの自動管理するための領域
    5resアイコンファイルなどを入れる
    6srcjsWaffle本体がある

    assetsフォルダ内には、wwwフォルダがありその中の構造
    noディレクトリ概要
    1resデモで使う素材置き場
    2testデモで使うテスト用HTMLファイル入れ
    3index.htmlメインプログラム
    4jsWaffle.jsjsWaffleを使うためのJavaSciptライブラリ
    5jsWaffle.sdocsjsWaffleのマニュアル
    参考書籍

    BloggerでjQueryを使う

    Google BloggerでjQueryとjQuery UIを使って表(テーブル)を見やすく整える

    Blogeer内の管理画面
    デザイン > HTML編集 テンプレート内の</head>直前に下記を追加

    <script src='http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js' type='text/javascript'/>
    <script src='https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js' type='text/javascript'/>
    これで、jQueryとjQuery UIの読み込みOK

    あとはCSS3とJavaSciptを追記すれば・・・
    no Name model number g display OS CPU
    1 Xperia SO-01B 139g 4.0 Android 1.6 QSD8250 1GHz


    参考サイト:ASCII.jp Web制作の現場を替えるjQuery / 書籍

    2011/06/18

    FlashだのAIRだのFlexだの・・・

    Flashにはいろいろな呼び名があるので、整理してみる。
    • FlashによるRIAを開発するための開発技術が「Adobe Flex」。
    • RIAとは、リッチインターネットアプリケーションのことで、パーソナルコンピュータ等のソフトウェアの分類の1つであり、ウェブブラウザなどのクライアントの機能を活かした、柔軟なインターフェースをもつウェブアプリケーションのことである。(Wikipediaより
    • Flexとは、無償のオープンソースフレームワークのこと。
    • Flexの統合開発環境が「Flash Builder」(Eclipseベース)。
    • AIR For Androidとは、Adobe AIRのAndroid向け実行環境(ランタイム)
    • AIR for Android向けのアプリケーションは、Actionscriptという言語(.asファイル)と、MXMLというXMLファイル(.mxmlファイル)で作る。

    Adobe Flexは、Flash Player やAdobe AIRが普及している環境をターゲット
    Flash PlayerはWebブラウザにプラグインされ、ブラウザの中で動かせる。
    Adobe AIRは、windows,Mac のパソコン、Android,iOSのスマートフォン/タブレットデバイスで動作する。実行環境(ランタイム)がインストールされている必要あり。

    スマホ/タブレットサービス開発Adobe 製品

    スマートフォン/タブレット向けのネイティブアプリとwebアプリを開発するためのAdobe製品リスト

    Dreamweaver CS5.5

    Fireworks CS5

    Flash Builder 4.5 Standerd

    Flash Professional CS5(Extension for Adobe AIR2.5)

    2011/06/13

    jsWaffleでAndroidアプリ開発まとめ

    jsWaffleを使ってAndroidアプリを開発する際のクイックマニュアル(まとめ)

    jsWaffleとは、HTML5,javascript,cssでネイティブアプリが作れる開発フレームワーク


    開発環境の準備
    windows7 パソコンに以下をインストールする 。
    1. Aptana Studio 2 インストール
    2. Aptana Studio 2 ライブラリーインストール JavaScript Librariesを選択
    3. JDK インストール (すでにインストール済の場合はスキップ)
    4. Android SDK インストール (すでにインストール済の場合はスキップ)
    5. Aptanaを起動 Androidプラグインのインストール Help > Install New Software...
    6. Addボタン Name:Android Plugin Location:https://dl-ssl.google.com/android/elcipse/
    7. Aptana Studio 2 Android SDKインストールパスを設定 Window > Preferences
    8. Android SDK 仮想デバイスの設定 (すでにインストール済の場合はスキップ)
    9. jsWaffleのインストール
    詳細は参考書籍を参照

    開発手順
    1. jsWaffleでAndroidプロジェクトのひな形作成する
    2. Aptanaに1でつくったひな形をインポートする
    3. assetsフォルダにあるHTMLを編集する
    4. Androidアプリとして実行し、動作確認する
    5. 1~4を繰り返す

    さっそく、デモアプリ用プロジェクトを作る。
    apkファイルに変換し、Android端末にインストールしてみる

    参考書籍

    2011/06/12

    スマホ/タブレット端末向け

    大きく2つに分かれる
    1つが、マーケット等からダウンロードするクライアントアプリ型のネイティブアプリと呼ばれるもの。
    パソコンにソフトをインストールするのと同じ形態。
    java、Actionscript、Cなどで開発する。最近はjavascriptで開発できるフレームワークも出てきた

    もう一つが、ブラウザで動くwebアプリと呼ばれるもの。Googleドキュメントやモバゲー/グリーなどの携帯ゲームと同じ形態。
    従来のwebサービスと同様に、HTML,javascript,CSS3もしくはFlashなどで開発する。