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. */

Note: this ROM is just for having the first taste of Nougat, and thus missing a lot of key features.

Almost everything works, except video hardware encoding, which causes camcorder to fail. HW decoding works though.

(DT2W can not be turned off via Settings app for now)

Default input method could be broken. Be ready to "pm install your_ime.apk" in adb shell.

com.qti.dpmserviceapp may produce continous FC. You can disable it via adb shell ("su -c pm disable com.qti.dpmserviceapp").

Rotating screen while playing video can cause the display to "split"

Quote: 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

Quote: 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.

Quote: 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.

Quote: 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...

Quote: 5. File manager (to install APKs)?



http://forum.xda-developers.com/show...3&postcount=73

Quote: 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















Flashing Guide by @The Dork Knight Rises

Video hands-on by @savadam



20160918: Mirror 1:



20160910: Mirror 1:



20160906: Mirror 1:

CAF and original AOSP HALs:

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:

20160831: Mirror 1:

20160828: Mirror 1:

20160827:

20160918: Mirror 1: https://drive.google.com/open?id=0Bw...WZ4OEx6Unp5bU0 Mirror 2: https://mega.nz/#!rdlkgboI!LQuFDtcpp...uxjAlrhg9Z0tuQ 20160910: Mirror 1: https://drive.google.com/open?id=0Bw...GVTV3V0ekZaWHM Mirror 2: https://mega.nz/#!XEsTESpR!QDa7he2jd...KV0IdtyuB0R-yc 20160906: Mirror 1: https://drive.google.com/open?id=0Bw...HNFb0xyYlBZM3c Mirror 2: https://mega.nz/#!zBVX1DTZ!S-LnpIEgJ...p93XbP-Ug__XBk CAF and original AOSP HALs: https://drive.google.com/open?id=0Bw...GdCQmxDUWgxQlU AOSP HALs (msm8996 display + msm8974 media) canrecord 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=0Bw...lN5T29WTS01Qkk Mirror 2: https://mega.nz/#!OcFlTDDK!EYiNpfE-9...bMkXOTdhP1HDZc 20160831: Mirror 1: https://drive.google.com/open?id=0Bw...E1WR2xYd180MzA Mirror 2: https://mega.nz/#!jE92iSAD!pl0NMU6PP...6fNTaUUMI0xdzg 20160828: Mirror 1: https://mega.nz/#!XdlXFDBQ!p7E0N64IE...00O0dRwJlEnvcw Mirror 2: https://drive.google.com/open?id=0Bw...zA2T2g0RUZRS3c 20160827: https://drive.google.com/open?id=0Bw...VdWUHNlc0lHZWs

Quote: 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

Build system produces correct boot.img in $OUT, but the boot image in OTA zip still has no DT included.

You may try linking C++ libs dynamically (c++_static -> c++_shared) to avoid this.

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.I may not be able to update it regularly.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.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 DT2WColor calibration is possible, see FAQ below.6.Fixed in 201608287.Removed in 201608288.Fixed in 201609039. 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.In the 3rd post. Direct link: http://forum.xda-developers.com/show...04&postcount=3 Thanks for all your support!20160919: Mirror 1: https://drive.google.com/open?id=0Bw...WRKd1owSUNudEU Mirror 2: https://mega.nz/#!fEk1CTyJ!F8rdnqT_o...6LRaD2t81N2WIA 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: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).Kernel: https://github.com/updateing/android...74/tree/nougat Device: https://github.com/updateing/android...on/tree/nougat Build system: https://github.com/updateing/platfor.../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 GitHub20160910 https://drive.google.com/open?id=0Bw...mo1RjhPd0N1c3c 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=0Bw...XFqZEJCT21UNDA 20160831 https://drive.google.com/open?id=0Bw...W54QnR4eGFlR1E 20160828 https://drive.google.com/open?id=0Bw...Ex2OWNYcE1xU2s 20160827 https://drive.google.com/open?id=0Bw...XdkNkptRnBLMkU Changelog:1.Fixed in 201608282. 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).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.