[Android] keystore ファイルの内容を確認するコマンド

Android アプリの署名ビルドに使う keystore ファイルの内容を確認するコマンドをご紹介します。

Android

続きを読む

[Android] getActionBar() で NoSuchMethodError

Android アプリ開発で、2.3 とかも動作対象端末にしたい場合、getActionBar() ではなく ActionBarSherlock の getSupportActionBar() を使うようにする。

getActionBar() を使うと NoSuchMethodError というエラーが発生してしまう。

スレッド [<1> main] (中断中 (例外 NoSuchMethodError))	
	<VM はモニター情報を提供しません>	
	TutorialActivity.onCreate(Bundle) 行: 40	
	Instrumentation.callActivityOnCreate(Activity, Bundle) 行: 1047	
	ActivityThread.performLaunchActivity(ActivityThread$ActivityClientRecord, Intent) 行: 1615	
	ActivityThread.handleLaunchActivity(ActivityThread$ActivityClientRecord, Intent) 行: 1667	
	ActivityThread.access$1500(ActivityThread, ActivityThread$ActivityClientRecord, Intent) 行: 117	
	ActivityThread$H.handleMessage(Message) 行: 935	
	ActivityThread$H(Handler).dispatchMessage(Message) 行: 99	
	Looper.loop() 行: 123	
	ActivityThread.main(String[]) 行: 3691	
	Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) 行: 使用不可 [ネイティブ・メソッド]	
	Method.invoke(Object, Object...) 行: 507	
	ZygoteInit$MethodAndArgsCaller.run() 行: 864	
	ZygoteInit.main(String[]) 行: 622	
	NativeStart.main(String[]) 行: 使用不可 [ネイティブ・メソッド]

うっかりミス

[Android] Event Listener(イベントリスナ)の削除・解除方法

Android アプリ開発で、setOnTitleClickListener でセットした OnClickListener を解除・削除する方法をご紹介します。

例えば OnClickListener をセットするメソッドを下記のようにすると、

public void setOnTitleClickListener(OnClickListener listener) {
    mTitleView.setOnClickListener(listener);
}

OnClickListener を削除するメソッドは下記のようになります。

public void removeOnTitleClickListener() {
    mTitleView.setOnClickListener(null);
}

無理矢理ですが setOnClickListener(null) するだけです。

参考情報

[Android] 明示的 Intent で YouTube 公式アプリにて動画を再生する方法

Android アプリ開発で、明示的 Intent で YouTube 公式アプリで動画を再生するコードがバグってて、正しく動作するコードを調べたのでメモ。

YouTube

続きを読む

JSONP のセキュリティについて

JSONP を使う上でのセキュリティについて気になったので、調べたサイトをメモ。

Web 2.0的アプリのセキュリティ:機密情報にJSONPでアクセスするな : アークウェブのブログ

第3回 JSONPでのクロスドメインアクセス:ここが危ない!Web2.0のセキュリティ|gihyo.jp … 技術評論社

[気になる]JSONPの守り方 - @IT

なぜJSONPだとクロスドメイン制約を超えられるのか? – 射撃しつつ前転

JSONPはセキュアでないのか? – snippets from shinichitomita’s journal

Node.js (Express) で JSONP を対応させる方法は下記が参考になります。

Express で JSONP をスマートにレスポンスする方法

[Android] TextView の文字を中央寄せ(センタリング)する方法

Android アプリ開発で TextView の文字を中央寄せ(センタリング)する方法をご紹介します。

Android

続きを読む

[iOS] Your Info.plist contains the UINewsstandIcon sub-property under CFBundleIcons, which is intended for use with Newstand feature. To include Newsstand features, the Info.plist must include the UINewstandApp=true Info.plist key.

iPhone アプリを Xcode 経由で申請しようとしたら、エラーが発生しました。

エラー内容

The following issues were found during validation

The following issues were found during validation:

Your Info.plist contains the UINewsstandIcon sub-property under CFBundleIcons, which is intended for use with Newstand feature.
To include Newsstand features, the Info.plist must include the UINewstandApp=true Info.plist key.

解決方法

NewstandIcon

ニューススタンド対応にしない場合は、Info.plist ファイルの Icon files (iOS5) の項目の Newsstand Icon の項目を削除すればOKです。

[iOS] エラー「No application records were found.」

Xcode から iOS アプリを iOS App Store へ登録しようとしたらエラーが発生しました。

xcode_Submit to the iOS App Store

xcode_No application records were found

「No application records were found.」というエラーが発生しました。

原因は、「Ready to Upload Binary」ボタンを押してない状態でした。

[Android] アクションバーを非表示にする方法

Android アプリ開発で、アクションバーを非表示にする方法をメモ。

getActionBar().hide();

[Android] Toast 風な通知ビューをカンタンに表示するライブラリ「Crouton」

Android アプリ開発で、Toast 風な通知ビューをカンタンに表示するライブラリ「Crouton」が便利だったので、ご紹介します。

GitHub:
keyboardsurfer/Crouton · GitHub

jar ファイルのダウンロードはこちらから:
Maven Repository: de.keyboardsurfer.android.widget » crouton

ブログ記事:
Useful Android Libraries: Crouton | Grokking Android

スライド資料:
Crouton DevFest Berlin 2012 // Speaker Deck

他にも、Android-AppMsg というライブラリがありました。

johnkil/Android-AppMsg · GitHub

The Making of Prixing #4: In-layout Notifications – Cyril Mottier