Geek Notes : Autorisations microphone avec Flutter

Avec flutter, il est nécessaire de gérer les autorisations de l’application pour pouvoir accéder au micro par exemple.

Pour la partie Android, il faut modifier les fichiers AndroidManifest.xml du répertoire Android/app/debug/ et Android/app/profile

//Ajouter la ligne suivante. 
<uses-permission android:name="android.permission.RECORD_AUDIO"/>

Concernant IOS, la démarche est un peu plus complexe, il faut à la fois modifier le fichier podfile comme indiqué ci dessous et ajouter une description de l’utilisation dans Xcode :

...
//Commenter les lignes suivantes :

# post_install do |installer|
#   installer.pods_project.targets.each do |target|
#     flutter_additional_ios_build_settings(target)
#   end
# end

// et ajouter ensuite les lignes suivantes : 
post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.3'

      config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
        '$(inherited)',
        ## dart: PermissionGroup.microphone
        'PERMISSION_MICROPHONE=1',
      ]
      end
  end
end

Pour la partie Xcode, il est nécessaire d’aller modifier le fichier Info.plist en ajoutant la clef :

Privacy - Microphone Usage Description

auquel on attribuera la valeur :

$(PRODUCT_NAME) microphone use 

précision : copier $(PRODUCT_NAME) tel que


Le petit truc en plus : Ajouter libc++ dans les build settings à été un passage obligé pour faire fonctionner flutter_sound.

Posted

in

,

by

Tags: