*

【android】 APIバージョンによる動作の違い

公開日: : 最終更新日:2013/11/29 android

「最近使用したアプリケーション」からの起動

2.x系 -> onNewIntentが呼ばれる
4.x系 -> 何も呼ばれない

2.x系の場合、直前に使用されたIntentの内容でonNewIntentが呼ばれるので、Intentの内容で処理を分けている場合、意図せず同じ処理を繰り返してしまうことになる。
しかも内容(Exstrasの中身など)が同じというだけでインスタンス自体は別のもの(Intent.hasCode()の結果が違う)ので意図して同じ処理が呼ばれたのか、タスクスイッチによって呼ばれたのか見分けがつかない。

ちなみに4.x系の場合はonNewIntentは呼ばれず、通常のライフサイクルイベントを開始する。
4.x系で仕様が変わったことを考えると上記2.x系の動作はミス仕様?

関連記事

no image

【android】アプリのバージョン情報を取得する

int versionCode = -1; String versionName = &quo

記事を読む

no image

インテント

基本 //任意のアクティビティの起動 Intent intent = new

記事を読む

no image

【android】 年月だけのDatePicker

final DatePicker datePicker = new DatePicker(sel

記事を読む

no image

【android】 Android4.1のserviceでdefaultPreferenceがおかしい

【現象】 ActivityでdefaultPreferencesで保存したデータがservice内

記事を読む

no image

【android】リスト項目のmatch_parentが効かない

下記のようなリスト項目用のレイアウトを用意して、リストの右端にチェックボックスを置くようにしたのです

記事を読む

no image

【android】非同期処理

Androidで非同期処理、マルチスレッドを処理するスニペット。 AndroidのスレッドはUIス

記事を読む

no image

【android】 setOnClickListener(false)が効かない

間違いその1 OnClickListenerが登録されているViewにsetClickable

記事を読む

no image

【android】 adbコマンド集

●adbサービス起動 adb start-server ●adbサービス終了 adb

記事を読む

no image

【android】ハードウェアキー入力を検出する

Activityを継承したクラスで下記を記述します。 public boolean

記事を読む

no image

【android】処理時間を計測する

パフォーマンスのリファクタリングを行うには処理時間の計測がかかせません。 SDK標準のクラスを使っ

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

no image
知らないと損をする6つのライセンスまとめ

オープンソースやフリーウェア、フリー素材などが巷に溢れ、それらを利用す

no image
ガリレオ:ニュースブラウザをリリースしました。

概要 ガリレオはニュースを読んだり、検索する機能に特化したブラウザア

no image
【android】Activityとプロセスのライフサイクル

またもやライフサイクル周りでハマったのですが、Androidのライフサ

→もっと見る

PAGE TOP ↑