This post is edited to contain only useful information:
Manual identification and removal of scripts that trigger specific permissions.
-
"Prevent Phone from Sleeping" / aka Wake_Lock -Any script that contains the word movie in the title
-
"Control Vibration" - Remove:
-DeviceVibrate.cs
-
"Precise Location (GPS and Network-Based)" - Remove:
-GetLocationInfo.cs
-ProjectLocationToMap.cs
-StartLocationServicesUpdate.cs
-StopLocationServicesUpdate.cs
-
"Network Access" - Thanks to Alex for his help in identification with this.
-Remove the Networking folder
In the project tab of Unity, locate: Plugins\PlayMaker\WebGL\PlayMaker.dll and ensure that WebGL and Android both have checkmarks (nothing else should have checkmarks). Then click Apply.
In the project tab of Unity, locate: Plugins\PlayMaker\PlayMaker.dll and remove the checkmark from Android. Then click Apply.
Click File, Build Settings, click Player settings, Other settings, In Scripting Define Symbols enter "UNITY_WEBGL", press enter. File, Save Project. Then build your unity project
Please note the following caveats: 1) Must be built as a final android APK. A checkmark in google development build still seems to include unnecessary permissions despite the above changes.
2) Due to a bug in Unity 5.1, you cannot remove permissions at all, unless you edit the android manifest.xml post Unity3d. Downgrading to 5.0.4 works.
3) Downgrading is easy, download 5.0.4 here:
http://unity3d.com/get-unity/download/archive, backup your project, open it with 5.0.4 and it will "recompile" but it will work.