Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 # Google Play services in Chrome for Android | |
| 2 | |
| 3 [TOC] | |
| 4 | |
| 5 Google employee? See [go/chrome-gms](https://goto.google.com/chrome-gms) for | |
| 6 more info. | |
| 7 | |
| 8 ## General setup | |
| 9 | |
| 10 The Google Play services are a combination of [services][play_store] exposed on | |
| 11 Android devices, and [libraries][dev_doc] to interact with them. Chrome relies | |
| 12 on them for critical features like Sign in, Feedback or Cast. | |
| 13 | |
| 14 The standard way of adding the Google Play services as a dependency to a project | |
| 15 is to import it through the Android SDK manager, as a Maven repository. That | |
| 16 repository contains multiple versions of the library, split into separate APIs | |
| 17 (for example Cast, GCM, Android Pay, etc.) To avoid downloading a lot of data we | |
|
jbudorick
2016/11/29 16:09:35
nit: . outside )
dgn
2016/12/06 18:19:21
Done.
| |
| 18 won't need to build Chrome, android checkouts of Chromium will download an | |
| 19 archive containing only the APIs we currently need in Chrome, and in a single | |
| 20 version. | |
| 21 | |
| 22 The up to date list of clients and version used can be seen in | |
| 23 [//build/android/play_services/config.json][config_json_rel_path]. | |
| 24 | |
| 25 > If you are working on a feature that requires different or more recent APIs, | |
| 26 > you will need to locally download the Google Play services SDK repository. | |
|
mcasas
2016/11/24 22:19:12
nit: probably these two lines don't need to be quo
dgn
2016/11/25 16:53:52
I just wanted to make that more visible. (preview:
jbudorick
2016/11/29 16:09:35
I'm fine with this as-is, though you could also co
dgn
2016/12/06 18:19:21
Done.
| |
| 27 | |
| 28 The simplest way to download the latest SDK is to run: | |
| 29 | |
| 30 ``` | |
| 31 $CHROMIUM_SRC/build/android/play_services/update.py sdk | |
| 32 ``` | |
| 33 | |
| 34 Check out the help of that script for more info. | |
| 35 | |
| 36 [play_store]: https://play.google.com/store/apps/details?id=com.google.android.g ms | |
| 37 [dev_doc]: https://developers.google.com/android/guides/overview | |
| 38 [config_json_rel_path]: ../build/android/play_services/config.json | |
| 39 | |
| 40 ## Adding a dependency on new APIs | |
| 41 | |
| 42 As explained above, the default checkout has access to only a specific set of | |
| 43 APIs during builds. If your CL depends on some APIs that are not included in the | |
| 44 build, you will need to make a request to update our dependencies. | |
| 45 | |
| 46 Just [file an issue][bug_link] and assign it to dgn@chromium.org | |
|
jbudorick
2016/11/29 16:09:35
Nit: I would just incorporate this into the previo
dgn
2016/12/06 18:19:21
Done.
| |
| 47 | |
| 48 Not doing so could make the CL fail on the trybots and commit queue. Even if it | |
| 49 passes, it might fail on the internal bots, and result in the CL getting | |
| 50 reverted. So please make sure the APIs are available to the bots before | |
| 51 submitting. | |
| 52 | |
| 53 [bug_link]:https://bugs.chromium.org/p/chromium/issues/entry?labels=Restrict-Vie w-Google,pri-1,Hotlist-GooglePlayServices&owner=dgn@chromium.org&os=Android | |
|
mcasas
2016/11/24 22:19:12
Great stuff, if you want you could also link as ex
dgn
2016/11/25 16:53:52
I don't really want to explain exactly how to roll
jbudorick
2016/11/29 16:09:35
This would be great.
dgn
2016/12/06 18:19:21
Acknowledged.
| |
| OLD | NEW |