As I know AndroidManifest.xml will not be generated every time when you run cordova build
. When you add/remove a plugin it will be modified accordingly. But if you add your own permissions it will not be removed(Unless there is a conflict).
Since the permissions are Android (platform) specific, in your case you have to add it into the AndroidManifest.xml file only.
Even in plugin.xml of any plugin they add permission as shown :
<platform name="android">
<config-file target="AndroidManifest.xml" parent="/manifest">
<uses-permission android:name="android.permission.INTERNET"/>
</config-file>
</platform>
Which says add uses-permission line to AndroidManifest.xml file at the installation time of plugin. But you cant mention this in config.xml file.
Also don't forget to put this attribute in the root widget element present in the config.xml file,located in the root folder of the app, as @hiddentao said in a comment.
config.xml
<widget
xmlns:android="http://schemas.android.com/apk/res/android"
...>
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…