かめのはこ

とあるエンジニアのメモ帳です

【android】バージョン情報

マーケットとは別に勝手サイトにアプリを公開しようとした時とか
アプリ起動時とかにやりたい
 
バージョンチェック(&更新通知)
 
の為にアプリのバージョン情報を取得して送信したいので、その取得のメモ
 
■定義(まずはマニフェスト

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="test.packageTest"
      android:versionCode="1"
      android:versionName="1.0.0">
</manifest>

 
android:versionCode
※整数値で定義(インクリメントしてく)
 
android:versionName
※自由に記述していいみたい(1.0.0など)
 
 
■取得

PackageInfo packageInfo = null;
TextView tv = (TextView)findViewById(R.id.TextView);
try {
        packageInfo = getPackageManager().getPackageInfo("パッケージ名", PackageManager.GET_META_DATA);
} catch (NameNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
}
tv.setText("versionCode : "+packageInfo.versionCode+" / "+"versionName : "+packageInfo.versionName);

 
パッケージインフォは他にもいろんなもんとれるので
パッケージとバージョン管理する場合は、必須になりそうです
 

【android】アプリで絵文字を表示してみる

Androidアプリで絵文字を使う要件があったので
試してみた
SO-01B端末でしか試してないのであしからず
 
■まずは入力
 
通常の入力フォームでは絵文字入力はでてこなかった
 
EditTextにallowEmoji属性trueを付加する
 
// ソース

EditText et = new EditText();
Bunble bunble = et.getInputExtra(true);
if ( bunble != null ) bunble.putBoolean("allowEmoji",true);

 
これでソフトウェアキーボード上の記号ボタンを押すと
絵文字一覧が登場した
 
 
■続いて表示
 
バイトコードで記述してやれば表示されました
 
晴れ
 ユニコード E63E
 バイトコード -13,-66,-128,-128
 
曇り
 ユニコード E63F
 バイトコード -13,-66,-128,-127
 
// ソース

package test.textview;

import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;
import android.widget.TextView;

public class EmojiTest extends Activity {
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  LinearLayout layout = new LinearLayout(this);
  layout.setOrientation(LinearLayout.VERTICAL);
  TextView tv1 = new TextView(this);
  TextView tv2 = new TextView(this);
  // set byte code
  byte[] byte_emoji_hare = new byte[]{-13,-66,-128,-128};
  byte[] byte_emoji_kumori = new byte[]{-13,-66,-128,-127};
  // to string from byte code
  String string_emoji_hare = new String(byte_emoji_hare, 0, 4);
  String string_emoji_kumori = new String(byte_emoji_kumori, 0, 4);
  tv1.setText("晴れ : " + string_emoji_hare);
  tv2.setText("曇り : " + string_emoji_kumori);
  layout.addView(tv1);
  layout.addView(tv2);
  setContentView(layout);
 }
}

 
バイトコードを調べる
 
絵文字をEditTextに入力し、そのデータからgetBytes()で取得する
※地道だ
 
// ソース

String msg = et.getText().toString();
String hoge="";
for( byte ans : msg.getBytes() ) hoge = hoge + ans + ":";
System.out.println(hoge);

 

FireFoxを複数バージョン入れてみる

FireFox 4のベータが出てたので既存の3と共存させる為のメモ。

1.firefox全て閉じる

2.プロファイルマネージャを起動して新しいプロファイルを作成する
 firefox.exe -ProfileManager

3.起動するショートカットにプロパティ(プロファイル)を追加する

 既存の3には
  firefox.exe -p default -no-remote

 新しい4にはさっき追加したプロファイルを
  firefox.exe -p fox4b ※2で作成したプロファイル名

お知らせ

本日アンドロイドを趣旨として活動する
 
チーム Ando(あんどぅ)発足しました。
 
まだ少人数体制ですが
 
とにかくAndroid漬けな日々を充実させる為
 
じわじわ活動していきます、
 
興味のある方は こちら
 

【android】気になるアプリ

今日の一押し
 
■<駅DASH! Lite>
こういうの欲しかった。ありそうでなかった気がする。
 
自分が乗りたい駅と、進行方面指定するだけで
アクセスした時間に一番近い発車時刻までの残り時間が出てくるアプリ。
シンプルですぐ見れるのが素敵。
 
仕事帰りなんか重宝しそうですね。
 
いざホームにいったら10分以上またされる時、
こんだけあったらトイレいっときゃよかったとこあるし
お世話になりまぁす(^o^)/