【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系の動作はミス仕様?
関連記事
-
-
[android] ActivityとFragmentのライフサイクルいろいろ
Fragmentを使い始めてライフサイクル関係でハマることがあったので備忘録。 FragmentA
-
-
【android】オーバーレイでトップレイヤーにViewを表示する
常にホーム画面や他のアプリより前面にViewを表示する方法です。 前面に透明のViewGroupを
-
-
【android】アプリ内課金を実装する
アプリ内課金のサンプルコードを解析します。 参考URL 公式API Android
-
-
【android】リソースからいろいろ取得する
リソースで定義したいろいろをコード内で呼び出す方法です。 レイアウト //リソースからレ
-
-
アプリ間連携 Intentfiler
ブラウザの共有からURLを受け取る。 Manifest.xmlのURL受け取り先のactivity
-
-
【android】任意のスレッドで処理を行う
非UIスレッドでUIを操作したい場合に、任意の処理をUIスレッド上で実行する。 目次
-
-
【android】言語・地域設定の取得
androidでは利用する言語と国名がjava.util.Localeのオブジェクトとして設定されて
-
-
【android】 Android4.1のserviceでdefaultPreferenceがおかしい
【現象】 ActivityでdefaultPreferencesで保存したデータがservice内
-
-
【android】 adbコマンド集
●adbサービス起動 adb start-server ●adbサービス終了 adb
-
-
【android】リスト項目のmatch_parentが効かない
下記のようなリスト項目用のレイアウトを用意して、リストの右端にチェックボックスを置くようにしたのです