[Mate 8 General] duraaraa:
After having a great deal of stress regarding the notification issues, I have come up with a solution.

Please note:

1. I have no idea why my solution works on only this one version of the firmware, but I can only reproduce it on build number NXT-AL10C00B129SP02 (The second-to-newest Chinese firmware). I cannot reproduce the solution on other versions and have not yet gotten notifications working on them, so please make sure you have the same version of everything as I do to make it go smoothly. I have only tried and failed on the latest Chinese and the latest international firmware, so perhaps an older version of that will have good results.

2. I can't guarantee this will work for everyone. Everyone has a different combination of software and settings, etc. What works for me very well may not work for you, and vice versa.

That being said, here is what I did, and how you can test and make sure it's working right for you.

Step One: Set up the OS.

Get NXT-AL10C00B129SP02 (available from the development section of this forum). You can unpack it and flash it with flashboot. The unpacking tool is as follows:

http://fs1.d-h.st/download/00173/wwfQ/HuaweiUpdateExtractor_0.9.9.3.zip

This tutorial won't cover flashboot usage. Please figure it out with google and feel free to ask if you need additional help.

You will then need to get TWRP installed. Please refer to root thread.

Getting into TWRP, please first format your /data partition, then flash the following in order. (maybe different versions will work, but these are what I used, and they worked for me, so maybe better safe than sorry.)

---

decrypt boot B129SP02.zip (can be found in this forum)

BETA-SuperSU-v2.66-2016013015024.zip

open_gapps-arm64-6.0-micro-20160108.zip

---

Then, clear cache and dalvik cache, boot the device up, and set it up.

Get into developer options and turn on ADB debugging. We will use adb to check that everything is working properly. Also, configure an email account with gmail. We'll use gmail to test as well.

Step Two: Doze Settings

Download and install Doze Settings Editor, available from the following:

http://xdaforums.com/android/apps-games/root-doze-settings-editor-android-t3235130

Open SuperSU, then open Doze Settings Editor. SuperSU will ask for root permission, please grant it.

Go into Doze Setting Editor. To keep it easier, go to preferences and change display from milliseconds to seconds.

Set the following, from the top down.

30, 0, 0, 20.0, 0, 0, 12, 12, 2.0, 60, 600, 2.0, 3600, 300, 60, 20

(Easier way to do this is to load tuhinxp04's profile and just change idle timeout and max idle timeout to 60 sec and 600 sec respectively)

Step Three: Test

Now, we will test! Make sure you have adb on your computer, plug your phone into your computer, and run the following commands:

adb shell

dumpsys battery unplug

(turn off the screen of your phone)

dumpsys deviceidle step

(repeat this command until the state is IDLE.)

Now, check the status with this command:

dumpsys deviceidle

Things to look at from the output of this command are:

mState

mNextAlarmTime

Basically, mNextAlarmTime will count down to zero. When it reaches zero, mState will go from IDLE to IDLE_PENDING (and that's when you'll get your notifications). The settings we put in Doze Settings Editor make it so that the countdown starts at one minute, then increases twofold each time until it hits ten minutes. So the longest you'll wait to receive an email notification would be 9 min, 59 seconds.

If everything went well, the device will go from IDLE to IDLE_PENDING after the countdown. Send a test email and watch it arrive.

That's it! If this works, you'll get your notifications. You can adjust the numbers in Doze Settings Editor to match your personal preference.

Now here's the odd thing. With the latest Chinese firmware and international firmware, it does not go into IDLE_PENDING after the countdown. Instead, the countdown goes from +1sec to 0sec to -1sec and counts up, when debugging with ADB. I have no idea how to fix this, but if anyone with other firmware wants to try this solution and see what happens, hopefully we can fix notifications for all software versions. For now I'll stick with NXT-AL10C00B129SP02

UPDATE: I have somehow gotten AL10C00B129SP02 to behave the same as the newer version. I will look further into this as best I can and figure this out. So please hang on a little longer :(