アプリ関連ニュース
AndroidのContext
Androidを開発する上でContextを利用することは多々あります
ダイアログの表示、プリファレンス、トーストの表示などです
また、ユーティリティクラスでは、そのほとんどでContextの入れ子ができるでしょう
私は、Activity、Service、Broadcastで取得したContext、Applicationで取得したContextくらいしか使ったことはありませんが、どのような違いがあるのかを確認していきます
Activity、Service、Broadcast上のContext
ActivityとServiceについては、「this」でContextを取得することができます
Broadcastは、onReceiveの引数にContextがあるので、それを使います
これらのContextは、取得してきたコンポーネントの寿命と同じになります
コンポーネントは終了しているが、コールバックで戻ってきたところに、Contextを使っている場合には、メモリリークでエラーとなりアプリが異常終了します
ダイアログの表示タイミングによっても、メモリリークが発生します
Applicaiton上のContext
Application上のContextとは、getApplicationContext()で取得できるContextです
他にも、Applicationを継承しているクラスで「this」を使うこと、上記Activity等のContextからgetApplicationContext()で取得することができます
このContextの寿命は、アプリのタスクが切れるまでとなります
こちらの方が、一般的に寿命は長いと思います
終わりに
Contextは多くの箇所で使いますので、場所にあったContextを使うことが一番かと思います
Activity内で完結しており、Activityが終了以降はContextを使用していないなら、ActivityのContextを使えばいいと思います
Activityが終了以降でもContextを使用している場合でも、その一部をApplicationのContextを使えば問題ないかと思います
また、ダイアログ等の表示にContextを使う場合には、各Contextのテーマ等も影響しますので、注意が必要です
火曜日担当:poppy
admin at 2017年07月11日 11:39:01
AndroidStudioでKotlinを使用(2)
admin at 2017年07月03日 07:10:19
AndroidStudioでKotlinを使用
少し前からKotlinに対しての興味はあり、AndroidStudioでも公式にサポートされることになるので、使って見ようかと思いました
Kotlinを使う場合にAndroid Studio3.0未満では、Pluginからインストールして、gradleも修正する必要がありました
Android Studio3.0からはプラグインをインストールせずとも、プリインストールされていて、標準機能として使えるようになるみたいです
今回は、変数宣言、if文、for文などの基本的な記述をまとめていきます
admin at 2017年06月20日 10:00:01
- 2017年6月19日
- Android
AndroidOSシェア(2017年6月)
SH at 2017年06月19日 10:28:53
- 2017年6月02日
- Windows
現在のOSのシェアを調べてみた
いよいよ6日に迫るWWDC 2017。今年はiPhoneシリーズ10周年という事で新型iPhoneに期待が寄せられます。
先月は、Microsoft Build 2017、Google I/O 2017と、ここ最近はカンファレンスラッシュでした。
各OS共に、続々と新技術、新サービスの情報を提示し、ワクワクさせてくれます。Apple製品をこよなく愛する日本人から見て、真打ちともいうべきWWDCでAppleはどんな情報を公開してくれるのでしょうか。
さて、今回は以前もこのブログで紹介した、最新のOSのシェアについて報告します。ついにIntelが25年間君臨し続けた半導体の売り上げをSamsungが抜いたとの情報も入ってきていますし、シェアも目まぐるしく変化していっています。
komu at 2017年06月02日 10:00:46

