diff options
author | Joe Onorato <joeo@google.com> | 2014-07-22 23:21:12 -0700 |
---|---|---|
committer | Yao Chen <yaochen@google.com> | 2014-07-23 17:56:57 -0700 |
commit | 69b078599b8d8bc3e8f94d6cab881145f4e2c129 (patch) | |
tree | a5e05fdfe4dd495b414a1e6f1f829ae1011f57f7 /tests/MusicServiceDemo | |
parent | 77bfc8f22892227ebc42afd282bd044742956be2 (diff) | |
download | frameworks_base-69b078599b8d8bc3e8f94d6cab881145f4e2c129.zip frameworks_base-69b078599b8d8bc3e8f94d6cab881145f4e2c129.tar.gz frameworks_base-69b078599b8d8bc3e8f94d6cab881145f4e2c129.tar.bz2 |
Allow apps to be slow at loading children and thumbnails by making those functions allowed to be asynchronous.
Change-Id: Ibcaee3f0f8d9ba14f1b002df9c6d4594c6278045
Diffstat (limited to 'tests/MusicServiceDemo')
-rw-r--r-- | tests/MusicServiceDemo/src/com/example/android/musicservicedemo/BrowserService.java | 34 |
1 files changed, 20 insertions, 14 deletions
diff --git a/tests/MusicServiceDemo/src/com/example/android/musicservicedemo/BrowserService.java b/tests/MusicServiceDemo/src/com/example/android/musicservicedemo/BrowserService.java index e5216b5..0e7fe13 100644 --- a/tests/MusicServiceDemo/src/com/example/android/musicservicedemo/BrowserService.java +++ b/tests/MusicServiceDemo/src/com/example/android/musicservicedemo/BrowserService.java @@ -121,23 +121,29 @@ public class BrowserService extends MediaBrowserService { } @Override - protected List<MediaBrowserItem> onLoadChildren(Uri parentUri) { - final ArrayList<MediaBrowserItem> results = new ArrayList(); - - for (int i=0; i<10; i++) { - results.add(new MediaBrowserItem.Builder( - Uri.withAppendedPath(BASE_URI, Integer.toString(i)), - MediaBrowserItem.FLAG_BROWSABLE, "Title " + i) - .setSummary("Summary " + i) - .build()); - } - - return results; + protected void onLoadChildren(final Uri parentUri, + final Result<List<MediaBrowserItem>> result) { + new Handler().postDelayed(new Runnable() { + public void run() { + final ArrayList<MediaBrowserItem> list = new ArrayList(); + + for (int i=0; i<10; i++) { + list.add(new MediaBrowserItem.Builder( + Uri.withAppendedPath(BASE_URI, Integer.toString(i)), + MediaBrowserItem.FLAG_BROWSABLE, "Title " + i) + .setSummary("Summary " + i) + .build()); + } + + result.sendResult(list); + } + }, 2000); + result.detach(); } @Override - protected Bitmap onGetThumbnail(Uri uri, int width, int height) { - return null; + protected void onLoadThumbnail(Uri uri, int width, int height, Result<Bitmap> result) { + result.sendResult(null); } /* |