The permission dialog only exists in the webplayer. As standalong application you already have all freedom as your game is just like and other application. On Android / iOS there are the operating system permissions which you have to set when you build your application. Those permissions are asked when you install your app on the device.
Application.RequestUserAuthorization is only relevant for webbuilds. There you can use it to request authorization for microphone and / or webcam at any time you like.
Android permissions and iOS are usually added by Unity automatically, but in some cases Unity isn’t able to determine which permission it really needs. Sometimes you need to edit the Android manifest manually. iOS actually handles permissions itself. As your whole code is reviewed and analyzed by Apple they set the required permissions for you. iOS just has a simple way to enforce certain hardware features. That’s the only way to control on which devices your application can be installed.