Comments (13)
The preview sources aren't fully open. The tags don't correspond to the code shipped by Google, at least for many of the repositories.
from android-prepare-vendor.
When I mentioned vanilla I was referring to AOSP using the blobs from the preview channel (https://developers.google.com/android/nexus/blobs-preview). From the perspective of the vendor blobs extraction script we're interested at first point to identify possible additions/deletions that will affect the extraction list from the /system partitions (priv-apps, libs, etc.).
But it seems that we don't have corresponding tags yet so building is not a straight forward options yet, leaving us only with the factory preview image to work with.
Digging into the factory preview image it seems that the blobs at which your run failed are still there. So probably something went wrong in the extraction process. I'll start digging the OAT version that Android N is using at the latest image and ensure that de-optimization tools are compatible with the corresponding libart version.
Will keep you posted here.
from android-prepare-vendor.
Thanks for reporting.
Usually I don't spent time with preview images since they're not supposed be fully functional and thus pose hidden challenges that result into more (usually unnecessary) work. Will have a look when possible to see if something has changed in the way bytecode is pre-optimized or the blobs list is different for Android-N.
Have you tried to flash the vanilla image in a Nexus 5x phone to verify all hardware stacks (GSM, WiFi, NFC, Bluetooth, etc.) are working?
from android-prepare-vendor.
When you say vanilla you mean AOSP? So far I have been able to build the Android N preview 3 for Nexus 5x but it won't boot (boot loop...related to keystore?). The preview 3 stock image works fine.
Since there are no instructions with regards to building and flashing Android N AOSP on Nexus 5x I can;t figure out what to do...
from android-prepare-vendor.
SmaliEx used to de-optimize the OAT files doesn't seem to support (yet) the libart version used in Android N preview images. If you comment the &>/dev/null
parts in system-img-repair.sh
script you will see the various errors when de-optimizing the OAT files.
Hopefully it will get fixed by the time Android N reaches production, otherwise we'll have to migrate to a different tool (not sure if a decent alternative exists) for the de-optimization of OAT files, or deal with them in a different way at the build process (e.g. patchoat them to align with AOSP build boot.oat and include them as pre-optimized bytecode).
I'll leave the bug open for now until we have any final updates / decisions.
from android-prepare-vendor.
It appears that SmaliEx is able to cope with it now: testwhat/SmaliEx@227f79c.
from android-prepare-vendor.
@thestinger thanks for the update. Had an early look at the Nexus 9 (WiFi) Android N factory image and seems that Google is no longer pushing apps pre-optimized. The only pre-compiled oat files present are the framework jars. We might actually get lucky here and avoid the de-optimization headache for the Android N releases.
Will wait for the Nexus 5x/6p factory images to appear online to verify this new policy before start coding around the Android N support. Fingers crossed we might actually have less work to be handled here. I just hope that the proprietary blobs list is not changed for the same devices. Have some concerts about the bluetooth modules since I've noticed a recent big refactor at the AOSP tree.
from android-prepare-vendor.
There's definitely some new stuff in /system. They seem to have replaced with pittpatt blobs in /vendor with different blobs there. I'm not sure which stuff can be considered to be part of Google Play though.
from android-prepare-vendor.
I'm having a lot of trouble simply getting a working build for the Nexus 9 and it doesn't really seem to be related to blobs... it simply doesn't mount /vendor for some reason. Mounting it manually on a userdebug build does work. Bonus: upgrades from 6.0.1 -> 7.0 are broken due to the new encryption stuff.
from android-prepare-vendor.
Then probably something changed at the build chain and the script generated makefiles are missing pieces (or broken). Unfortunately we'll have to do lots of digging/tweaking work since I just noticed the Nexus 5x NRD90M image has different policy from N9 and the system apps are pre-optimized.
I'll work with it during the weekend and keep you posted with available options (probably at the CopperheadOS IRC channel). Will start with N9 since deps are significantly smaller compared to N5x/N6p.
from android-prepare-vendor.
It turns out the issue is that it can't find the verity metadata for /vendor. It might have actually been a problem before but verity is actually enforcing now. I'm not sure.
from android-prepare-vendor.
They apparently only optimize frameworks on the Nexus 9 due to extremely bad I/O performance, where the optimized code takes longer to load. Nexus 6 might be similar.
from android-prepare-vendor.
Have started working compatibility with Android N. First success device was Nexus 9 WiFi (tested with a user-debug build and so far no issue). Have created separate issues per device to track down progress. Closing this one since preview images are no longer a thing.
from android-prepare-vendor.
Related Issues (20)
- Audio not working in crosshatch HOT 3
- oatdump dependencies download failed HOT 2
- Bytecode repair fails for a Google Nexus factory image HOT 3
- Setup wizard HOT 2
- product.img already appears to be generated by AOSP and ends up as a duplicate
- include files for product.img for full configuration similar to vendor.img
- sargo (Pixel 3a) support HOT 15
- eSIM manager crashes on sargo HOT 7
- 'dexrepair' command not found HOT 2
- No valid OS found HOT 4
- syntax error, unexpected QQSTRING_START with jq 1.3 from Ubuntu 14.04 repos HOT 1
- cannot verify dl.google.com's certificate HOT 1
- API 29 support (Android 10.0) HOT 18
- 404 causes download-nexus-image.sh to always report ToS accept failure HOT 1
- Nexus ToS accept request failed - Images download failed HOT 2
- ext4fuse command not found HOT 1
- How to unlock bootloader in custom rom evolution x HOT 1
- download_nexus_image.sh error Image URL not found HOT 2
- Stuck in bootloader HOT 20
- Doesn't work with Python3.7 HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from android-prepare-vendor.