Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 package org.chromium.chrome.browser.physicalweb; | 5 package org.chromium.chrome.browser.physicalweb; |
| 6 | 6 |
| 7 import android.annotation.TargetApi; | 7 import android.annotation.TargetApi; |
| 8 import android.app.Service; | 8 import android.app.Service; |
| 9 import android.content.Intent; | 9 import android.content.Intent; |
| 10 import android.content.SharedPreferences; | 10 import android.content.SharedPreferences; |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 29 * service get's restarted it will restart broadcasting as well by gathering the URL from | 29 * service get's restarted it will restart broadcasting as well by gathering the URL from |
| 30 * shared preferences. This will create a seemless experience to the user by beh aving as | 30 * shared preferences. This will create a seemless experience to the user by beh aving as |
| 31 * though broadcasting is not connected to the Chrome application. | 31 * though broadcasting is not connected to the Chrome application. |
| 32 * | 32 * |
| 33 * bluetooth.le.AdvertiseCallback and bluetooth.BluetoothAdapter require API lev el 21. | 33 * bluetooth.le.AdvertiseCallback and bluetooth.BluetoothAdapter require API lev el 21. |
| 34 * This will only be run on M and above. | 34 * This will only be run on M and above. |
| 35 **/ | 35 **/ |
| 36 | 36 |
| 37 @TargetApi(Build.VERSION_CODES.LOLLIPOP) | 37 @TargetApi(Build.VERSION_CODES.LOLLIPOP) |
| 38 public class PhysicalWebBroadcastService extends Service { | 38 public class PhysicalWebBroadcastService extends Service { |
| 39 private static final String TAG = "PhysicalWebBService"; | |
|
mattreynolds
2017/03/14 23:21:12
Remove if unused.
| |
| 39 public static final String DISPLAY_URL_KEY = "display_url"; | 40 public static final String DISPLAY_URL_KEY = "display_url"; |
| 40 | 41 |
| 41 public static final String PREVIOUS_BROADCAST_URL_KEY = "previousUrl"; | 42 public static final String PREVIOUS_BROADCAST_URL_KEY = "previousUrl"; |
| 42 | 43 |
| 43 private boolean mStartedByRestart; | 44 private boolean mStartedByRestart; |
| 44 | 45 |
| 45 @Override | 46 @Override |
| 46 public int onStartCommand(Intent intent, int flags, int startId) { | 47 public int onStartCommand(Intent intent, int flags, int startId) { |
| 47 String displayUrl = fetchDisplayUrl(intent); | 48 String displayUrl = fetchDisplayUrl(intent); |
| 48 | 49 |
| 49 // This should never happen. | 50 // This should never happen. |
| 50 if (displayUrl == null) { | 51 if (displayUrl == null) { |
| 51 stopSelf(); | 52 stopSelf(); |
| 52 return START_STICKY; | 53 return START_STICKY; |
| 53 } | 54 } |
| 55 // TODO(iankc): implement shortening, broadcasting, and notifications. | |
| 54 | 56 |
| 55 // TODO(iankc): implement parsing, broadcasting, and notifications. | |
| 56 stopSelf(); | 57 stopSelf(); |
| 57 return START_STICKY; | 58 return START_STICKY; |
| 58 } | 59 } |
| 59 | 60 |
| 60 @Override | 61 @Override |
| 61 public IBinder onBind(Intent intent) { | 62 public IBinder onBind(Intent intent) { |
| 62 return null; | 63 return null; |
| 63 } | 64 } |
| 64 | 65 |
| 65 private String fetchDisplayUrl(Intent intent) { | 66 private String fetchDisplayUrl(Intent intent) { |
| 66 mStartedByRestart = intent == null; | 67 mStartedByRestart = intent == null; |
| 67 if (mStartedByRestart) { | 68 if (mStartedByRestart) { |
| 68 SharedPreferences sharedPrefs = ContextUtils.getAppSharedPreferences (); | 69 SharedPreferences sharedPrefs = ContextUtils.getAppSharedPreferences (); |
| 69 return sharedPrefs.getString(PREVIOUS_BROADCAST_URL_KEY, null); | 70 return sharedPrefs.getString(PREVIOUS_BROADCAST_URL_KEY, null); |
| 70 } | 71 } |
| 71 | 72 |
| 72 String displayUrl = intent.getStringExtra(DISPLAY_URL_KEY); | 73 String displayUrl = intent.getStringExtra(DISPLAY_URL_KEY); |
| 73 ContextUtils.getAppSharedPreferences() | 74 ContextUtils.getAppSharedPreferences() |
| 74 .edit() | 75 .edit() |
| 75 .putString(PREVIOUS_BROADCAST_URL_KEY, displayUrl) | 76 .putString(PREVIOUS_BROADCAST_URL_KEY, displayUrl) |
| 76 .commit(); | 77 .commit(); |
| 77 return displayUrl; | 78 return displayUrl; |
| 78 } | 79 } |
| 80 | |
| 81 private native byte[] nativeEncodeUrl(String url); | |
| 79 } | 82 } |
| OLD | NEW |