2013年11月30日土曜日

YouTubeService has leaked

バージョンが5.3.24のYouTubeにおいて、YouTube API Demosで、PlayerViewDemoActivity("Simple PlayerView")を起動し、そしてこのActivityを終了させると、次のログが出力される。アプリの動作には問題はない。原因は不明です。

E/ActivityThread(3632): Service com.google.android.youtube.api.service.YouTubeService has leaked IntentReceiver com.google.android.apps.youtube.core.utils.ConnectivityReceiver@424ccd10 that was originally registered here. Are you missing a call to unregisterReceiver()?
E/ActivityThread(3632): android.app.IntentReceiverLeaked: Service com.google.android.youtube.api.service.YouTubeService has leaked IntentReceiver com.google.android.apps.youtube.core.utils.ConnectivityReceiver@424ccd10 that was originally registered here. Are you missing a call to unregisterReceiver()?

YouTubeのバージョンの取得方法
String s = YouTubeIntents.getInstalledYouTubeVersionName(getBaseContext());
Log.d("PlayerViewDemoActivity", "Installed YouTube Version==" + s);

Installed YouTube Version==5.3.24 (2013/11/30)

対応方法(案)
不都合が生じるYouTubeのバージョンをアプリ開発者が相互に報告しあって、不都合が生じるバージョンのYouTubeがインストールされている場合、アプリの振る舞いを工夫する。例えば、起動を中止する。
地味な対応策だな。

Android player crashes when on attempt to play and ads videoによると、YouTubeのバージョンが、
5.2.27
5.3.23
において不都合が発生しているようである。

2014.01.23: YouTubeのversionが5.3.32の場合も上記不都合が発生することを確認しました。
2014.03.15: YouTubeのversionが5.5.27の場合も上記不都合が発生することを確認しました。
2014.04.20: YouTubeのversionが5.6.32の場合も上記不都合が発生することを確認しました。
2014.05.04: YouTubeのversionが5.6.35の場合も上記不都合が発生することを確認しました。
2014.05.09: YouTubeのversionが5.6.36の場合も上記不都合が発生することを確認しました。

(参考)
Various crashes using Android YouTube Player API

0 件のコメント:

コメントを投稿