[EXPERIMENTAL][AOSP][NRD90U] Unofficial Android 7.0 Nougat build

Search This thread

updateing

Senior Member
Aug 25, 2012
489
1,140
Wuhan
Google Pixel C
Code:
#include <std_disclaimer.h>
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/

Hello guys, this is an unofficial build of AOSP Nougat (with tag android-7.0.0_r6). Kernel is based on CM13's, with some recent commits in kernel/common in AOSP. Sources and patches are available at the end of the post.

Note: this ROM is just for having the first taste of Nougat, and thus missing a lot of key features. I may not be able to update it regularly.

Basic hardware functionality:
Almost everything works, except video hardware encoding, which causes camcorder to fail. HW decoding works though.
Everything should be working since 20160903.
I didn't find more hardware failures, but there can be more.
And remember, the proprietary firmwares and blobs are still in the age of Marshmallow, and a system won't be complete without corresponding firmwares and blobs.

Known bugs:
1. HW disk encryption is likely broken. I reverted some commits to make cryptfs_hw build, but I'm not sure if that works. Do not try it.
2. SELinux is permissive, and init allows service without a SELinux domain to start.
3. GPS may take longer to obtain a position fix. (yes it's working... sorry for the misunderstanding)
4. Only Launcher2 is included. You may install a new one as you like.
5. No LiveDisplay and gestures except DT2W (DT2W can not be turned off via Settings app for now) Color calibration is possible, see FAQ below.
6. Default input method could be broken. Be ready to "pm install your_ime.apk" in adb shell. Fixed in 20160828
7. com.qti.dpmserviceapp may produce continous FC. You can disable it via adb shell ("su -c pm disable com.qti.dpmserviceapp"). Removed in 20160828
8. Rotating screen while playing video can cause the display to "split" Fixed in 20160903
9. Camera service and media codecs all run in the same process, eliminating one of the security enhancements of Android N. May not be fixed until new HAL and blobs are available.

So the security improvements in Nougat are not making much difference in this only-a-taste ROM. If you rely on this, it would be better to wait for official releases.

FAQs:

1. Root / Gapps?

I'm using SuperSU 2.76 stable and OpenGapps 7.0 pico. They work without any issue.
If your contacts / calendars is not syncing, try the following steps:
1. Goto Settings > Apps, tap "Show system" in menu
2. Find "Google Contacts Sync", tap on it, tap "Permissions", turn on everything
3. Go back to Detail screen, clear its data
4. Go back to app list, clear "Contacts Storage"' data
5. Do the same for calendars (2-4)
6. Reboot

2. F2FS?

I did not test this myself... But kernel has support already (of cource, it's from CM) so you may have a try. Remember to backup!
EDIT: Some users reported that F2FS partitions are corrupted. If you are using F2FS, maybe you should wait.

3. Menu key / App switcher?

Menu key now acts as recents, since I don't think the former is as useful as the latter. And there is no more lag while tapping home button since we don't check for double tap anymore.

4. TWRP shows error?

If that's two lines of "log", you can safely ignore it.
If there is something else, please stop and post it here.

If you are using MultiROM, you may modify update-script. Read the first ~8 pages and you will find it.

Reference: I'm using official TWRP 3.0.2 w/o MultiROM This recovery didn't get replaced by stock one...


6. Disable HW keys, enable soft keys, screen color calibration?

Disable HW keys: echo 0 > /proc/touchpanel/keypad_enable (needs repeat on reboot)
Enable soft keys: echo "qemu.hw.mainkeys=0 >> /system/build.prop (once)
Screen color calibration: echo "32768 31784 27852" > /sys/class/graphics/fb0/rgb (needs repeat on reboot, change the values as you need. This example is 100% R, 97% G, 85% B)
Optionally you can enable color enhancing: echo 1 > /sys/class/graphics/fb0/color_enhance

Screenshot spoiler

2bxvlt.png

11r8aoo.png

206eucg.png

688ztw.png

20fycn9.png



Flashing Guide by @The Dork Knight Rises
In the 3rd post. Direct link: http://forum.xda-developers.com/showpost.php?p=68397804&postcount=3

Video hands-on by @savadam
https://www.youtube.com/watch?v=r54vWk-Azh8

Thanks for all your support!

Download:
20160919: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAYWRKd1owSUNudEU Mirror 2: https://mega.nz/#!fEk1CTyJ!F8rdnqT_oiipP-tHCuzFGFvsQGmUV6LRaD2t81N2WIA
You can still use HALs from 20160906 if you want.
(And if you are posting this somewhere else, please include the HALs in your post)

Older versions:

20160918: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAMWZ4OEx6Unp5bU0 Mirror 2: https://mega.nz/#!rdlkgboI!LQuFDtcppbizC_7Tfww1uWAmhw-lYuxjAlrhg9Z0tuQ

20160910: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAdGVTV3V0ekZaWHM Mirror 2: https://mega.nz/#!XEsTESpR!QDa7he2jdPCeIsbMY1vJAlCZ0RokAKV0IdtyuB0R-yc

20160906: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAWHNFb0xyYlBZM3c Mirror 2: https://mega.nz/#!zBVX1DTZ!S-LnpIEgJqn1r7So6QmEoD_APUqDnp93XbP-Ug__XBk
CAF and original AOSP HALs: https://drive.google.com/open?id=0BwkmhbR5VHpAaGdCQmxDUWgxQlU
Note on the HALs:
AOSP HALs (msm8996 display + msm8974 media) can not record screen, but they "seem" to make the system smoother. (msm8974 display HAL cannot be used because it corrupts the display when rotating screen with video playing)
CAF HALs (both based on vanilla CAF LA.BF.1.1.3_rb1.13) can record screen but "seem" not to be so efficient as AOSP ones.
The HAL included in the ROM are the AOSP variant.

20160903: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpATlN5T29WTS01Qkk Mirror 2: https://mega.nz/#!OcFlTDDK!EYiNpfE-9Pxx2wu4Oto7kO_oevfe0bMkXOTdhP1HDZc
20160831: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAVE1WR2xYd180MzA Mirror 2: https://mega.nz/#!jE92iSAD!pl0NMU6PPY3UNXE5DTDBKLUd4sFLG6fNTaUUMI0xdzg
20160828: Mirror 1: https://mega.nz/#!XdlXFDBQ!p7E0N64IEkGHn4GBzOZQDTCgR4KdD00O0dRwJlEnvcw Mirror 2: https://drive.google.com/open?id=0BwkmhbR5VHpAczA2T2g0RUZRS3c
20160827: https://drive.google.com/open?id=0BwkmhbR5VHpAUVdWUHNlc0lHZWs

Note: please read "known bugs" section before flashing! Also you can read the guide below.
When updating the ROM, just dirty-flash new build and Gapps (if you use them).
In order to prevent your recovery from being replaced by the stock one, flash SuperSU along with the ROM.

Sources:
Kernel: https://github.com/updateing/android_kernel_oneplus_msm8974/tree/nougat
Device: https://github.com/updateing/android_device_oneplus_bacon/tree/nougat
Build system: https://github.com/updateing/platform_build/tree/custom-kernel
And there are a lot more repos I didn't fork. The changes there as well as local_manifest are here:
20160918+ Check GitHub
20160910 https://drive.google.com/open?id=0BwkmhbR5VHpAcmo1RjhPd0N1c3c
20160906 No new patches except the HALs. For AOSP HALs, check previous patch archive and Sony's guide. For CAF HALs, just cherry-pick "Fix clang build" from CM.
20160903 https://drive.google.com/open?id=0BwkmhbR5VHpAQXFqZEJCT21UNDA
20160831 https://drive.google.com/open?id=0BwkmhbR5VHpASW54QnR4eGFlR1E
20160828 https://drive.google.com/open?id=0BwkmhbR5VHpAOEx2OWNYcE1xU2s
20160827 https://drive.google.com/open?id=0BwkmhbR5VHpALXdkNkptRnBLMkU

Changelog:
20160919
Fixed Fackbook crash by avoiding preloading libboringssl-compat.so (CM camera HAL is the only camera HAL that does not require this)
Updated BT configuration (please test if it has any side effect. Sometimes you need to search twice to find your Bluetooth gadgets.)
Tried to fix network location (added Google's network location provider)

20160918
Reverted to previous "stub" power HAL. May fix lagging and unusual power consumption noticed by some users.
Tried to fix NFC FW download mechanism. May fix non-working NFC for some users.

20160910
Updated to NRD90U (android-7.0.0_r6)
Switched to CM/QCOM power HAL. The original power HAL is more like a placeholder.
Now on Tap can be launched by long-pressing home button
Switchable WebView implementation, thanks to @fards here
Note:
1. If you are experiencing display issues (such as screen flicker with FLV SW decoding), try switching on "Disable HW Overlay" in Development Settings.
2. If you need multi-user feature, remove /system/priv-app/com.qualcomm.location. Otherwise the system will crash. It was accidentally added in this build.

20160906
Switched back to AOSP HALs to increase performance, but screen recording is broken again. You can choose CAF HALs listed above to fix that. Camcorder and HW encoding work with both variants, no need to worry.
Updated media profiles. Front camera knows that it is not capable of 1080p recording.

20160903
Fixed HW encoder and camcorder (they are different issues, though related) (and switched to CM13 media HAL)
Fixed display corruption while rotating screen with video playing (by switching to CM13 display HAL, don't know which lines of code fixed that)
DT2W can be turned off via Settings
Added Reboot option in power menu

20160831
Fixed crash in World Clock page when selecting countries/regions
Fixed hang in Developer Settings when the ROM is installed as secondary
Fixed crash when taking photos with HDR on
Added support for kexec
Added Stk

20160828
Fixed default input method FC
Remove com.qti.dpmservices to prevent FC
Dev: updated build system to finally automate everything

20160827
Initial build

Notes on the sources:
1. Build system produces correct boot.img in $OUT, but the boot image in OTA zip still has no DT included. Fixed in 20160828
2. Some fixes are really "dirty" (as I'm not able to find a proper way)...
3. Some JNIs fail to build (lots of C++ symbols no found). You may try linking C++ libs dynamically (c++_static -> c++_shared) to avoid this. See 20160828 patches, packages/inputmethods/LatinIME for example.
4. Some apps require android-8 ndk, but the earliest version in the tree is android-9. A symlink will do (or you can change the Android.mk in app) but I'm not really sure this will not introduce any bug.
5. Android N split mediaserver into multiple processes to improve security, such as cameraserver, mediacodec, etc. But camera blobs and old HALs were not designed like this. They assume they run in the same process, thus a buffer created by blobs are being used everywhere, which will cause illegal memory access under Android N. I reverted lots of patches about this, forcing camera and codec services to run in the mediaserver process as before - security compromised with functionality, again.

Hope you enjoy this.
 
Last edited:

The Dork Knight Rises

Senior Member
Mar 20, 2014
1,188
1,125
Mumbai
samriddhabasu.github.io
The All-In-One Post

Oh look at the time...it's flashy time already? XD

Screenshots:


Screenshot_20160828-193145.png
(Layers themes work. Use Substratum app)
AboutPhone.png
N.png
Notifs.png
QReply.png
NotifPriority.png
QS.png
QSEdit.png
Battery.png
MultiW.png
Tuner.png
NavTuner.png
NightMode.png
RGB.png
Screenshot_20160828-055347.png

Guide to flashing this properly (TWRP v3.0.2-0):
(THIS GUIDE IS MAINLY FOR THE FIRST BUILD 20160827. AS I AM RUNNING IT SMOOTHLY, I DO NOT PLAN TO UPDATE TO 20160828, AS IT HAS SOME MINOR FIXES, ALREADY COVERED IN MY GUIDE.
IF HOWEVER, YOU'RE FLASHING 20160828 OR LATER BUILD, HERE'S WHAT YOU SHOULD DO DIFFERENTLY:
-Flashing Google keyboard is not mandatory, as default input mode has been fixed
-adb steps do not need to be performed as the com.qti.dpmserviceapp has been removed
-You probably shouldn't flash the SystemUI Tuner mod zip, as the SystemUI APK from previous build may not be compatible with new build. If you flash it on 28 build and have SystemUI FCs or missing SystemUI, just reflash ROM, and don't flash the mod.
REST OF THE GUIDE REMAINS THE SAME
)
(This guide is for flashing as primary ROM without MultiROM. MultiROM guide by @7u5h4r: http://forum.xda-developers.com/showpost.php?p=68413163&postcount=242)

TL;DR version (that means short version)
http://forum.xda-developers.com/showpost.php?p=68552389&postcount=1172

  1. Download ROM zip from OP and Google Keyboard flashable zip, as well as any of the zips I linked below.
  2. Wipe your device (data, cache, dalvik/ART cache; preferably even system, just to be as "clean" as possible)
    (NOTE ABOUT DIRTY FLASHING:
    -If you dirty flash this ROM (eg. flashing newer build), you will need to flash GApps again along with the ROM zip as GApps are not preserved
    -This ROM actually booted for me even on a dirty flash from an MM custom ROM, and as a result I didn't face a lot of the problems you'd face on clean flash (GApps crashes, continuous qti app FCs, etc)
    But a lot of my apps were crashing until I reinstalled them, and in any case, it is not advised to dirty flash when coming from MM)
  3. Flash ROM zip and keyboard zip, optionally any of the following addons (DO NOT FLASH GAPPS YET):
    -SuperSU (v2.68+) for root
    -Any of the mods I linked below
    -Any other mods like Viper4Android etc (AT YOUR OWN RISK)
  4. Boot into the ROM. you'll probably see a lot of crashes, ignore them, and just find a PC for the next step
    (Optionally, you could try to enable Developer Options by tapping past the FC dialogs, once you have DevOps enabled, you'll see an option to mute FC notifications till next boot)
  5. Using ADB on your PC, disable the com.qti.dpmserviceapp package by running following commands:
    Code:
    adb devices
    You should see a device in the list of devices connected
    Code:
    adb shell
    pm disable com.qti.dpmserviceapp
    If you get error with permissions, you may need root. If your device is rooted:
    Code:
    su
    pm disable com.qti.dpmserviceapp
    (SKIP 6, 7 & 8 if you do not need Google services)
  6. Now reboot into recovery and flash a compatible GApps package (USE 7.0 GAPPS ONLY)
    Boot into ROM
  7. Go to Settings>Apps
    Find Google Play Services, and go to its Permissions. Enable essential permissions. Now Play Services won't keep crashing on you. Also find Google Contact Sync and give it permission to access Contacts.
  8. Go to Settings>Accounts and add your Google account
  9. Profit
  10. Praise DuARTe
  11. Hit Thanks if this helped

Here's some helpful zips for you guys!
 
Last edited:

Adam Myczkowski

Senior Member
Aug 29, 2015
451
373
2. SELinux is permissive, and init allows service without a SELinux domain to start.

Which sepolicy did you use? I am porting to a different device and Im currently trying to fix neverallows which is painful but I think I merged a commit to qcom/sepolicy which allows domain to start (im not very good in sepolicy). Its based off Cyanogenmod qcom/sepolicy repo. If you want to take a look its here android_device_qcom_sepolicy-1 and I had to add one thing to platform_system_sepolicy. I hope we'll be able to fix sepolicy soon.
 

Deltastylez

Senior Member
Aug 18, 2014
212
38
Really sorry that I forgot this. You could do "pm disable com.qti.dpmserviceapp" in adb shell (su first if it asks so)

You may find a lot of adb tutorials around...

But if there is a mute option in the FC dialog, you can mute it and disable in Settings.



well, getting this error

" Error: java.lang.SecurityException: Shell cannot change component state for com.qti.dpmserviceapp/null to 2 "


Never mind, fixed
 
Last edited:

antonio2966

Member
Sep 19, 2012
16
4
You may find a lot of adb tutorials around...

But if there is a mute option in the FC dialog, you can mute it and disable in Settings.
i've tried through adb shell but it doesn't work shell cannot change component state for com.qti.dpmserviceapp/null to 2 moreover it is not possible to disable it in settings thank u for your job
 

Top Liked Posts

  • There are no posts matching your filters.
  • 281
    Code:
    #include <std_disclaimer.h>
    /*
    * Your warranty is now void.
    *
    * I am not responsible for bricked devices, dead SD cards,
    * thermonuclear war, or you getting fired because the alarm app failed. Please
    * do some research if you have any concerns about features included in this ROM
    * before flashing it! YOU are choosing to make these modifications, and if
    * you point the finger at me for messing up your device, I will laugh at you.
    */

    Hello guys, this is an unofficial build of AOSP Nougat (with tag android-7.0.0_r6). Kernel is based on CM13's, with some recent commits in kernel/common in AOSP. Sources and patches are available at the end of the post.

    Note: this ROM is just for having the first taste of Nougat, and thus missing a lot of key features. I may not be able to update it regularly.

    Basic hardware functionality:
    Almost everything works, except video hardware encoding, which causes camcorder to fail. HW decoding works though.
    Everything should be working since 20160903.
    I didn't find more hardware failures, but there can be more.
    And remember, the proprietary firmwares and blobs are still in the age of Marshmallow, and a system won't be complete without corresponding firmwares and blobs.

    Known bugs:
    1. HW disk encryption is likely broken. I reverted some commits to make cryptfs_hw build, but I'm not sure if that works. Do not try it.
    2. SELinux is permissive, and init allows service without a SELinux domain to start.
    3. GPS may take longer to obtain a position fix. (yes it's working... sorry for the misunderstanding)
    4. Only Launcher2 is included. You may install a new one as you like.
    5. No LiveDisplay and gestures except DT2W (DT2W can not be turned off via Settings app for now) Color calibration is possible, see FAQ below.
    6. Default input method could be broken. Be ready to "pm install your_ime.apk" in adb shell. Fixed in 20160828
    7. com.qti.dpmserviceapp may produce continous FC. You can disable it via adb shell ("su -c pm disable com.qti.dpmserviceapp"). Removed in 20160828
    8. Rotating screen while playing video can cause the display to "split" Fixed in 20160903
    9. Camera service and media codecs all run in the same process, eliminating one of the security enhancements of Android N. May not be fixed until new HAL and blobs are available.

    So the security improvements in Nougat are not making much difference in this only-a-taste ROM. If you rely on this, it would be better to wait for official releases.

    FAQs:

    1. Root / Gapps?

    I'm using SuperSU 2.76 stable and OpenGapps 7.0 pico. They work without any issue.
    If your contacts / calendars is not syncing, try the following steps:
    1. Goto Settings > Apps, tap "Show system" in menu
    2. Find "Google Contacts Sync", tap on it, tap "Permissions", turn on everything
    3. Go back to Detail screen, clear its data
    4. Go back to app list, clear "Contacts Storage"' data
    5. Do the same for calendars (2-4)
    6. Reboot

    2. F2FS?

    I did not test this myself... But kernel has support already (of cource, it's from CM) so you may have a try. Remember to backup!
    EDIT: Some users reported that F2FS partitions are corrupted. If you are using F2FS, maybe you should wait.

    3. Menu key / App switcher?

    Menu key now acts as recents, since I don't think the former is as useful as the latter. And there is no more lag while tapping home button since we don't check for double tap anymore.

    4. TWRP shows error?

    If that's two lines of "log", you can safely ignore it.
    If there is something else, please stop and post it here.

    If you are using MultiROM, you may modify update-script. Read the first ~8 pages and you will find it.

    Reference: I'm using official TWRP 3.0.2 w/o MultiROM This recovery didn't get replaced by stock one...


    6. Disable HW keys, enable soft keys, screen color calibration?

    Disable HW keys: echo 0 > /proc/touchpanel/keypad_enable (needs repeat on reboot)
    Enable soft keys: echo "qemu.hw.mainkeys=0 >> /system/build.prop (once)
    Screen color calibration: echo "32768 31784 27852" > /sys/class/graphics/fb0/rgb (needs repeat on reboot, change the values as you need. This example is 100% R, 97% G, 85% B)
    Optionally you can enable color enhancing: echo 1 > /sys/class/graphics/fb0/color_enhance

    Screenshot spoiler

    2bxvlt.png

    11r8aoo.png

    206eucg.png

    688ztw.png

    20fycn9.png



    Flashing Guide by @The Dork Knight Rises
    In the 3rd post. Direct link: http://forum.xda-developers.com/showpost.php?p=68397804&postcount=3

    Video hands-on by @savadam
    https://www.youtube.com/watch?v=r54vWk-Azh8

    Thanks for all your support!

    Download:
    20160919: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAYWRKd1owSUNudEU Mirror 2: https://mega.nz/#!fEk1CTyJ!F8rdnqT_oiipP-tHCuzFGFvsQGmUV6LRaD2t81N2WIA
    You can still use HALs from 20160906 if you want.
    (And if you are posting this somewhere else, please include the HALs in your post)

    Older versions:

    20160918: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAMWZ4OEx6Unp5bU0 Mirror 2: https://mega.nz/#!rdlkgboI!LQuFDtcppbizC_7Tfww1uWAmhw-lYuxjAlrhg9Z0tuQ

    20160910: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAdGVTV3V0ekZaWHM Mirror 2: https://mega.nz/#!XEsTESpR!QDa7he2jdPCeIsbMY1vJAlCZ0RokAKV0IdtyuB0R-yc

    20160906: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAWHNFb0xyYlBZM3c Mirror 2: https://mega.nz/#!zBVX1DTZ!S-LnpIEgJqn1r7So6QmEoD_APUqDnp93XbP-Ug__XBk
    CAF and original AOSP HALs: https://drive.google.com/open?id=0BwkmhbR5VHpAaGdCQmxDUWgxQlU
    Note on the HALs:
    AOSP HALs (msm8996 display + msm8974 media) can not record screen, but they "seem" to make the system smoother. (msm8974 display HAL cannot be used because it corrupts the display when rotating screen with video playing)
    CAF HALs (both based on vanilla CAF LA.BF.1.1.3_rb1.13) can record screen but "seem" not to be so efficient as AOSP ones.
    The HAL included in the ROM are the AOSP variant.

    20160903: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpATlN5T29WTS01Qkk Mirror 2: https://mega.nz/#!OcFlTDDK!EYiNpfE-9Pxx2wu4Oto7kO_oevfe0bMkXOTdhP1HDZc
    20160831: Mirror 1: https://drive.google.com/open?id=0BwkmhbR5VHpAVE1WR2xYd180MzA Mirror 2: https://mega.nz/#!jE92iSAD!pl0NMU6PPY3UNXE5DTDBKLUd4sFLG6fNTaUUMI0xdzg
    20160828: Mirror 1: https://mega.nz/#!XdlXFDBQ!p7E0N64IEkGHn4GBzOZQDTCgR4KdD00O0dRwJlEnvcw Mirror 2: https://drive.google.com/open?id=0BwkmhbR5VHpAczA2T2g0RUZRS3c
    20160827: https://drive.google.com/open?id=0BwkmhbR5VHpAUVdWUHNlc0lHZWs

    Note: please read "known bugs" section before flashing! Also you can read the guide below.
    When updating the ROM, just dirty-flash new build and Gapps (if you use them).
    In order to prevent your recovery from being replaced by the stock one, flash SuperSU along with the ROM.

    Sources:
    Kernel: https://github.com/updateing/android_kernel_oneplus_msm8974/tree/nougat
    Device: https://github.com/updateing/android_device_oneplus_bacon/tree/nougat
    Build system: https://github.com/updateing/platform_build/tree/custom-kernel
    And there are a lot more repos I didn't fork. The changes there as well as local_manifest are here:
    20160918+ Check GitHub
    20160910 https://drive.google.com/open?id=0BwkmhbR5VHpAcmo1RjhPd0N1c3c
    20160906 No new patches except the HALs. For AOSP HALs, check previous patch archive and Sony's guide. For CAF HALs, just cherry-pick "Fix clang build" from CM.
    20160903 https://drive.google.com/open?id=0BwkmhbR5VHpAQXFqZEJCT21UNDA
    20160831 https://drive.google.com/open?id=0BwkmhbR5VHpASW54QnR4eGFlR1E
    20160828 https://drive.google.com/open?id=0BwkmhbR5VHpAOEx2OWNYcE1xU2s
    20160827 https://drive.google.com/open?id=0BwkmhbR5VHpALXdkNkptRnBLMkU

    Changelog:
    20160919
    Fixed Fackbook crash by avoiding preloading libboringssl-compat.so (CM camera HAL is the only camera HAL that does not require this)
    Updated BT configuration (please test if it has any side effect. Sometimes you need to search twice to find your Bluetooth gadgets.)
    Tried to fix network location (added Google's network location provider)

    20160918
    Reverted to previous "stub" power HAL. May fix lagging and unusual power consumption noticed by some users.
    Tried to fix NFC FW download mechanism. May fix non-working NFC for some users.

    20160910
    Updated to NRD90U (android-7.0.0_r6)
    Switched to CM/QCOM power HAL. The original power HAL is more like a placeholder.
    Now on Tap can be launched by long-pressing home button
    Switchable WebView implementation, thanks to @fards here
    Note:
    1. If you are experiencing display issues (such as screen flicker with FLV SW decoding), try switching on "Disable HW Overlay" in Development Settings.
    2. If you need multi-user feature, remove /system/priv-app/com.qualcomm.location. Otherwise the system will crash. It was accidentally added in this build.

    20160906
    Switched back to AOSP HALs to increase performance, but screen recording is broken again. You can choose CAF HALs listed above to fix that. Camcorder and HW encoding work with both variants, no need to worry.
    Updated media profiles. Front camera knows that it is not capable of 1080p recording.

    20160903
    Fixed HW encoder and camcorder (they are different issues, though related) (and switched to CM13 media HAL)
    Fixed display corruption while rotating screen with video playing (by switching to CM13 display HAL, don't know which lines of code fixed that)
    DT2W can be turned off via Settings
    Added Reboot option in power menu

    20160831
    Fixed crash in World Clock page when selecting countries/regions
    Fixed hang in Developer Settings when the ROM is installed as secondary
    Fixed crash when taking photos with HDR on
    Added support for kexec
    Added Stk

    20160828
    Fixed default input method FC
    Remove com.qti.dpmservices to prevent FC
    Dev: updated build system to finally automate everything

    20160827
    Initial build

    Notes on the sources:
    1. Build system produces correct boot.img in $OUT, but the boot image in OTA zip still has no DT included. Fixed in 20160828
    2. Some fixes are really "dirty" (as I'm not able to find a proper way)...
    3. Some JNIs fail to build (lots of C++ symbols no found). You may try linking C++ libs dynamically (c++_static -> c++_shared) to avoid this. See 20160828 patches, packages/inputmethods/LatinIME for example.
    4. Some apps require android-8 ndk, but the earliest version in the tree is android-9. A symlink will do (or you can change the Android.mk in app) but I'm not really sure this will not introduce any bug.
    5. Android N split mediaserver into multiple processes to improve security, such as cameraserver, mediacodec, etc. But camera blobs and old HALs were not designed like this. They assume they run in the same process, thus a buffer created by blobs are being used everywhere, which will cause illegal memory access under Android N. I reverted lots of patches about this, forcing camera and codec services to run in the mediaserver process as before - security compromised with functionality, again.

    Hope you enjoy this.
    103
    The All-In-One Post

    Oh look at the time...it's flashy time already? XD

    Screenshots:


    Screenshot_20160828-193145.png
    (Layers themes work. Use Substratum app)
    AboutPhone.png
    N.png
    Notifs.png
    QReply.png
    NotifPriority.png
    QS.png
    QSEdit.png
    Battery.png
    MultiW.png
    Tuner.png
    NavTuner.png
    NightMode.png
    RGB.png
    Screenshot_20160828-055347.png

    Guide to flashing this properly (TWRP v3.0.2-0):
    (THIS GUIDE IS MAINLY FOR THE FIRST BUILD 20160827. AS I AM RUNNING IT SMOOTHLY, I DO NOT PLAN TO UPDATE TO 20160828, AS IT HAS SOME MINOR FIXES, ALREADY COVERED IN MY GUIDE.
    IF HOWEVER, YOU'RE FLASHING 20160828 OR LATER BUILD, HERE'S WHAT YOU SHOULD DO DIFFERENTLY:
    -Flashing Google keyboard is not mandatory, as default input mode has been fixed
    -adb steps do not need to be performed as the com.qti.dpmserviceapp has been removed
    -You probably shouldn't flash the SystemUI Tuner mod zip, as the SystemUI APK from previous build may not be compatible with new build. If you flash it on 28 build and have SystemUI FCs or missing SystemUI, just reflash ROM, and don't flash the mod.
    REST OF THE GUIDE REMAINS THE SAME
    )
    (This guide is for flashing as primary ROM without MultiROM. MultiROM guide by @7u5h4r: http://forum.xda-developers.com/showpost.php?p=68413163&postcount=242)

    TL;DR version (that means short version)
    http://forum.xda-developers.com/showpost.php?p=68552389&postcount=1172

    1. Download ROM zip from OP and Google Keyboard flashable zip, as well as any of the zips I linked below.
    2. Wipe your device (data, cache, dalvik/ART cache; preferably even system, just to be as "clean" as possible)
      (NOTE ABOUT DIRTY FLASHING:
      -If you dirty flash this ROM (eg. flashing newer build), you will need to flash GApps again along with the ROM zip as GApps are not preserved
      -This ROM actually booted for me even on a dirty flash from an MM custom ROM, and as a result I didn't face a lot of the problems you'd face on clean flash (GApps crashes, continuous qti app FCs, etc)
      But a lot of my apps were crashing until I reinstalled them, and in any case, it is not advised to dirty flash when coming from MM)
    3. Flash ROM zip and keyboard zip, optionally any of the following addons (DO NOT FLASH GAPPS YET):
      -SuperSU (v2.68+) for root
      -Any of the mods I linked below
      -Any other mods like Viper4Android etc (AT YOUR OWN RISK)
    4. Boot into the ROM. you'll probably see a lot of crashes, ignore them, and just find a PC for the next step
      (Optionally, you could try to enable Developer Options by tapping past the FC dialogs, once you have DevOps enabled, you'll see an option to mute FC notifications till next boot)
    5. Using ADB on your PC, disable the com.qti.dpmserviceapp package by running following commands:
      Code:
      adb devices
      You should see a device in the list of devices connected
      Code:
      adb shell
      pm disable com.qti.dpmserviceapp
      If you get error with permissions, you may need root. If your device is rooted:
      Code:
      su
      pm disable com.qti.dpmserviceapp
      (SKIP 6, 7 & 8 if you do not need Google services)
    6. Now reboot into recovery and flash a compatible GApps package (USE 7.0 GAPPS ONLY)
      Boot into ROM
    7. Go to Settings>Apps
      Find Google Play Services, and go to its Permissions. Enable essential permissions. Now Play Services won't keep crashing on you. Also find Google Contact Sync and give it permission to access Contacts.
    8. Go to Settings>Accounts and add your Google account
    9. Profit
    10. Praise DuARTe
    11. Hit Thanks if this helped

    Here's some helpful zips for you guys!
    50
    Hi guys, long time no see from @updateing, huh?

    not to worry, he's still here...

    Everyone is busy with their lives, and him being located in China makes it especially hard for him (yes, XDA is banned in China).
    I have kept in contact with him, and together we've been able to push our changes for 7.1 to github.com/AOSP-bacon.

    Yes, work might be a bit slow, but take a look at this while you wait...

    http%3A%2F%2Fi64.tinypic.com%2Fw20cgp.png
    42
    [FOR MULTIROM USERS] [20160828][20160831][20160903][20160906][20160910][20160918][20160919]
    So, this guide is for all MultiROM users, I'll compile everything in it so that you won't need to gather the information of 5-8 posts. Since I did it, and it took me a little while to figure it out, I thought I should share this so that no one else ends up in FCs and bootloops. So let's begin.

    1. First off, every multiROM user wants to flash this as a secondary ROM so I modified the .zip so that the ROM flashes. (Thankyou @ansonscleung for this)
    Here are the modified files :
    For 20160828 : https://drive.google.com/file/d/0Bzedbk3OVKq1UWo0RmlwaDFCOFk/view?usp=drivesdk
    For 20160831 : https://drive.google.com/file/d/0Bzedbk3OVKq1Zy01bHRPdEZkckk/view?usp=drivesdk
    For 20160903 : https://drive.google.com/file/d/0Bzedbk3OVKq1ejJsZGZhVGc5dVk/view?usp=drivesdk
    For 20160906 : https://drive.google.com/file/d/0Bzedbk3OVKq1ZFZyQ3lvMkQ1ajQ/view?usp=drivesdk
    For 20160910 : https://drive.google.com/file/d/0Bzedbk3OVKq1d01ONXVReE9XZDA/view?usp=drivesdk
    For 20160918 : https://drive.google.com/file/d/0Bzedbk3OVKq1d2hLUlVIVndpZ0U/view?usp=drivesdk
    For 20160919 : https://drive.google.com/file/d/0Bzedbk3OVKq1dXlDa3hsSGZadGc/view?usp=drivesdk
    Flash this .zip as secondary ROM

    2. Flash SuperSU 2.68 or higher for root and any other add-on you want. I recommended just flashing SuperSU 2.76
    http://forum.xda-developers.com/showthread.php?t=1538053
    (Thanks to @Chainfire for this :D)

    3. For a more immersive experience, I recommended enabling the Navbar and disabling the HW buttons. For this, flash the following .zip(s)
    For enabling the Navbar : https://drive.google.com/file/d/0B2Y1syM7UNuDYVRhM3BTYVA3SXc/view?
    For disabling the HW keys : https://drive.google.com/file/d/0B2Y1syM7UNuDSFZwUHNLQ0RfdXM/view?
    (Thanks to @The Dork Knight Rises for this)

    After everything is flashed successfully(hopefully), press reboot and choose AOSP 7.0 to boot in multiROM viewer.
    If you flashed just I did, following all the instructions, then the ROM will take 3 boots to finally boot up. It will seem like a bootloop, but its not! You will get the android logo, then back to multiROM viewer 2 times, but then in the third time it'll boot up. Note that this happens only at the first boot. So, no worries.

    4. So you're finally into the system. Just enjoy the breeze(you'll not get any FC now). After you're done with adoring Nougat, reboot to recovery. Turn off the phone, and then volume down+power to get to recovery.

    5. So you're in recovery now, flash GApps now. I recommended OpenGapps Mini 7.0
    Link : http://opengapps.org

    6. After the flash is successful, boot again and this time you'll not bootloop. It'll take mere 15-20 seconds to boot this time.

    7. Now you'll see some Google Play services FC, but, don't worry. I've got your back. Go to settings>Apps>Menu>Show system apps>Open Google play services from there and grant all the permissions. Now open Google Contacts Sync and give it the Contacts permission. All the FCs should stop by now.

    8. To add your Google account, go to settings> account and add your account there.

    9. To add SystemUI Tuner, tap and hold the settings gear key in the status bar.

    10. Awesome. You're welcome.

    Thankyou every one who have already posted the step by step guide, but I really wanted to post my own for multiROM users. I'll be glad if this proves helpful to someone.

    *Please upvote this so that people can view this more easily, and its easier for them.
    Thankyou.
    @updateing can you add this to OP? This might be of some help to people.
    -------------------------
    Update: Opening the Developer Options freezes the settings. There is no such hang or lag, just a freeze. Simply remove Settings from recent and you're good to go. Other users are also reporting this. Seems like a ROM issue then :)

    Update2: So I flashed the "Enable hidden SystemUI mod" and it's working perfectly fine for me. (You can flash this after doing all this or at step #3)
    Because, this might have broken the sytemui.apk, I made a backup and I recommend taking a backup since its always the safer way round.
    Here's the proof that it's working even on 20160828: https://imgur.com/gallery/9O2wE

    Update3: No, don't flash the "enable hidden SystemUI". You won't be able to access the internal storage, and that's a big issue. So just don't flash this if you're using MultiROM with this ROM as a secondary ROM.

    Also, of you mess up somewhere, I advice a clean install instead of a dirty flash because if you dirty flash, you'll get many FCs since the GApps are not preserved in this ROM and nor will be the nav bar and the disable HW keys be preserved (the workaround is to dirty flash the ROM with the nav bar and HW keys .zip(s), along with the GApps and you're fine. Basically dirty flashing everything)

    Since I flashed the SystemUI .zip mod on 20160828 to enable hidden features, I had to either dirty flash everything again or restore my ROM backup(which I did). So it's always recommended to take a ROM backup. https://imgur.com/gallery/OXn9E

    Enjoy!
    35
    Boy, this is frustrating.

    The developer had the goodwill of commencing this thread to showcase his new project, and people keep cluttering the thread with useless or overly-repeated info, let alone the off-topic questions and unwanted requests.

    The only posts allowed here should be news from the developer himself, about improvements to his ROM.

    The title says clearly this is a stock AOSP ROM, and yet people keep asking for mods. This is infuriating.

    I check this thread regularly to know about the situation of the project, what bugs are left, and I need to go through dozens of pages of useless posts about something not working in custom kernel or mod...

    Hope a moderator will clean this up. This should be for bug reporting and fixing notices only.
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone