質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

解決済

2回答

4738閲覧

起動毎に決まった処理を実行したい(Android)

masa21

総合スコア8

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2017/01/02 02:12

###現状
Androidで株価診断アプリを開発しています。
診断にあたり、日ごと、ユーザがメニューをクリックして最新の株価情報をダウンロードしています。

###やりたいこと
起動時に自動的に株価情報をダウンロードするようにしたい。

###質問
0. 起動時に特定の処理を動かくのに、どう実現するのが一般的なのか?
ActivityのonStartに実装すべき?
onCreateですと、ホームボタンや戻るボタンで非表示になっている状態では処理が実行されませんよね?onStartなら必ず通るのかな?
それとも、ホームボタン等で終わらせた場合、アプリを終了させてしまい、毎回onCreateを通るようにする?
やり方はあると思うのですが、どうするのが正解なのかなと悩んでいます。

  1. 画面を回転させたときにはダウンロードさせたくないが、どう実現するのか?

回転でActivityが再作成され、ダウンロード処理が動いてしまうのは避けたいです。
これに対して、回転をできなくするというのもありだと思っていますが、できれば回転も許してあげたい。

どうかご助言お願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

onStartはonPauseからそのまま復帰した際に呼ばれないので駄目だと思います

投稿2017/01/02 12:50

yuba_yuba

総合スコア44

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

1-Activity#onResumeがいいと思いますよ。
2-Activity#onRestoreInstanceStateをオーバーライドし、このメソッドが呼ばれたら画面が回転したと判断する。

投稿2017/01/02 04:01

yona

総合スコア18155

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

masa21

2017/01/02 16:13

回答ありがとうございます。 ためしにonResumeに実装してみました。 他のActivityを表示して、メインのActivityに戻ってきたときにもonResumeが呼び出され、処理が実行されてしまいます。 onCreateやonRestartでフラグを設定する等が必要なのでしょうか?
yona

2017/01/02 16:19

まずは、「アプリの起動」を具体的に定義してください。これはあなた以外にはわかりません。 その定義に沿ってonResumeで条件を設定してください。
masa21

2017/01/03 14:47

以下のようにフラグを設定しました。 ・onCreateで起動フラグOn ・onRestoreInstanceStateで起動フラグOff ・onPauseで起動フラグOff onResumeで、起動フラグがOnの場合に実行するようにしました。 ホームボタンで非表示にして、再度表示するのは起動とみなさない。 思い通り動いていると思います。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問