Могу ли я поместить код Flurry в Oncreate () и Ondestroy ()?
Вопрос
Я пытаюсь использовать Flurry для моего приложения Android. В нем говорится, что я должен поместить код Flurry в методах OnStart () и Onstop (). У меня нет этих методов в моем коде. У меня есть два действия, и оба используют только методы Oncreate () и Ondestroy (). Могу ли я поместить в это код Flurry? Будут ли с этим проблемы?
Решение
OnStart () и OnStop () - это методы, которые обрабатывают часть жизненного цикла деятельности, поэтому вы можете добавить их в свою деятельность без каких -либо проблем.
@Override
protected void onCreate(...) {
super.onCreate(...);
...
}
@Override
protected void onStart() {
super.onStart();
FlurryAgent.onStartSession(this, "your_key");
}
@Override
public void onStop()
{
super.onStop();
FlurryAgent.onEndSession(this);
}
Другие советы
onStart
а также onStop
существующие методы на Activity
, как onCreate
. Анкет Если вы хотите добавить функциональность в этих точках Жизненный цикл активности, вы можете переопределить их так же, как и для onCreate
.
public class MyActivity extends Activity {
@Override
protected void onStart() {
super.onStart();
FlurryAgent.onStartSession(this, "FLURRYKEY");
}
@Override
public void onStop()
{
FlurryAgent.onEndSession(this);
super.onStop();
}
}
onCreate
а также onDestroy
не являются подходящей парой методов, которые можно использовать для отслеживания сеанса Flurry, потому что onDestroy
не гарантированно называться. Смотрите документы на onDestroy
. Анкет Вы можете получить ситуации, когда приложение будет убито системой, и Flurry будет думать, что сессия все еще идет.
Существуют ситуации, когда система просто убьет процесс хостинга деятельности, не называя этот метод (или любой другой) в ней, поэтому она не должна использоваться для выполнения вещей, предназначенных для того, чтобы остаться после того, как процесс исчезнет.