commit | 08df2afeec46f363ef5f17146750bdf011412e56 | [log] [tgz] |
---|---|---|
author | Seigo Nonaka <nona@google.com> | Wed Jun 07 16:43:08 2017 -0700 |
committer | Seigo Nonaka <nona@google.com> | Fri Jun 09 09:53:08 2017 -0700 |
tree | 0b547298d1c695bff7e40ae03d33e492c096e18b | |
parent | 12621bf1a47e0ccfb0cc47150207afc02896e6f8 [diff] |
Stop copying files as much as possible. Due to lack of API before API 25 or before, need to prepare the real file for creating Typeface. The previous implementation creates temporary file and create Typeface from it. However, with that implementation, the mapped memory won't be shared between applications. To share the memory as much as possible, introduced following approach, - API 26 or newer: Use framework implementation. - API 21 - API 25 Try to find the file path from file descriptor. If found, use it for creating Typeface. If not found, use fallback file copying implementation. - API 20 or before Still use file copying approach. This CL also fixes font style resoltion from FontFamily on API 23 or before. Bug: 37749510 Bug: 62199090 Test: ./gradlew support-compat:connectedDebugAndroidTest on API 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26 Test: ./gradlew support-emoji:connectedDebugAndroidTest on API 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26 Test: ./gradlew support-appcompat-v7:connectedDebugAndroidTest on API 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26 Change-Id: Ie2dc9594b99598292c10a5402b1b903e27390dab
We are not currently accepting new modules, features, or behavior changes.
NOTE: You will need to use Linux or Mac OS. Building under Windows is not currently supported.
Follow the “Downloading the Source” guide to install and set up repo
tool, but instead of running the listed repo
commands to initialize the repository, run the folowing:
repo init -u https://android.googlesource.com/platform/manifest -b ub-supportlib-master
Now your repository is set to pull only what you need for building and running support library. Download the code (and grab a coffee while we pull down 7GB):
repo sync -j8 -c
You will use this command to sync your checkout in the future - it’s similar to git fetch
Open path/to/checkout/frameworks/support/
in Android Studio. Now you're ready edit, run, and test!
If you get “Unregistered VCS root detected” click “Add root” to enable git integration for Android Studio.
If you see any warnings (red underlines) run Build > Clean Project
.
You can do most of your work from Android Studio, however you can also build the full support library from command line:
cd path/to/checkout/frameworks/support/ ./gradlew createArchive
Run FooBarTest
Run android.support.foobar
Support library has a set of Android applications that exercise support library code. These applications can be useful when you want to debug a real running application, or reproduce a problem interactively, before writing test code.
These applications are named support-*-demos (e.g. support-4v-demos or support-leanback-demos. You can run them by clicking Run > Run ...
and choosing the desired application.
cd path/to/checkout/frameworks/support/ repo start my_branch_name . (make needed modifications) git commit -a repo upload --current-branch .
If you see the following prompt, choose always
:
Run hook scripts from https://android.googlesource.com/platform/manifest (yes/always/NO)?