dev/Android

Android の開発メモなど

Eclipse の Subversion で commit しようとしたら Checksum mismatch

Eclipse上のsubversionクライアントでchecksum mismatchエラー - R42日記

Subversion の commit で Checksum mismatch が出たら・・・。

  1. Eclipse 外から、mismatch ファイルが存在するフォルダを削除。(ファイルを消してもダメ。親フォルダ毎消す)
  2. プロジェクトを refresh。(当該フォルダが Eclipse 上でも表示されなくなる)
  3. 削除したフォルダを SVN から Update で取得。


サイズが大きいフォルダだったので、Update にかなり時間がかかったorz

ImageButton に xml で focusable="false" しても無意味

なぜなら、ImageButton のコンストラクタの中で setFocusable(true) しているから・・・orz

ListView内にImageButtonを配置するとListViewがクリックできない場合の対処法 - さおくんC#とAndroid実践メモ - Yahoo!ブログ

上の記事の方と同じく、ListView に ImageButton を配置して android:focusable="false" したのにリストをクリックできなくなって悩みました。Button なら問題ないのに・・・。

上の記事の通り、ImageButton 生成後にコードから setFocusable(false) してあげれば解決。


ImageButton は ImageView を含むから、きっと ImageButton と ImageView それぞれに focusable を持っていて、どちらかがうまく設定されないのではないかと予想してたんですが。
実際には ImageButton は ImageView の子供で・・・。

public ImageButton(Context context, AttributeSet attrs, int defStyle) {
    super(context, attrs, defStyle);
    setFocusable(true);
}

コンストラクタで super した後にわざわざ setFocusable(true) してる。
うぅむ。きっと訳あってのことなんでしょうけど・・・。


xml アトリビュートの設定漏れとかでなく、わざわざ意図的に setFocusable(true) してるとは。
楽しませてくれます^^;

Apple、旧iOS向けに、旧バージョンのアプリをダウンロード可能に | iOS | Macお宝鑑定団 blog(羅針盤)
f:id:jmab:20130917210933p:plain

Android には随分昔からある機能。
というか、Android では、同一バージョンでもプラットフォーム毎に実行ファイルを分けられる。

プラットフォーム、特に OS バージョンと画面ピクセル数の単一性が iOSデベロッパーにとっては大きな魅力だったけど。最早そういう時代ではないという象徴。

既に iOS デベロッパもプラットフォームの多様性に悩まされる時代に入っている。

日本はキャリア決済が強い

Google 自身による Google Play についての説明会。

グーグル、日本市場では「キャリア決済」が強い--Android最新動向 - CNET Japan

日本市場はキャリア決済が強いそうです。
キャリア決済対応後の売上が 14 倍だとか^^;

日本は課金ゲーム天国ですからねぇ。

逆に、ゲーム以外では稼げない市場 orz

Debug certificate expired が出た^^)

久しぶりに Mac mini で APK をエクスポートしようとしたら、出ました。
「Debug certificate expired」^^;
どこかで聞いたことあるエラー。

デバッグ証明書が期限切れ。デフォルトの有効期限て何年?1年?
最近はデフォルトが延びてるのかな??? MacBook Air では出たこと無いぞ^^;

キーストアファイル debug.keystore を探して、削除して、ビルドしなおせば OK。

debug.keystore は、ユーザーのホームディレクトリの .android 直下にある。

Mac: ~/.android/
Win: %USERPROFILE%¥.android¥

debug.keystore の場所は、Eclipse の Preference > Android > Build の Default debug keystore に書いてある。

以上

Unable to resolve superclass of ...

久々にビルドしたら、ランタイムでエラーだらけ^^;
android-support-v4.jar が解決されていないみたいなんだけど・・・。

An error occured after update the Android SDK Tool REV 22 "Unable to resolve superclass of L" - Stack Overflow]

SDK Tools v.22 にアップデートすると発生するのかな???

私の場合は、
Project -> Properties -> Java Build Path -> Order and Export -> Check Android Private Libraries
で、ぜーんぶにチェックつけたら、回避できました。


取りあえず動いたから、これ以上追究しないでおこう^^;