首页 > 解决方案 > 通过在 java 中创建并打包到 .dmg 中的应用程序访问 mac osx 上的麦克风

问题描述

我正在为 macOS 制作一个 java 应用程序。它使用麦克风进行录音。

当我使用“java -jar ...”从命令行运行我的应用程序时,它会要求我访问麦克风,并且可以录制一些东西。

当我创建一个 dmg 包并在安装后运行它时,它从不要求麦克风许可,也不会记录。我正在使用 javapackager 创建一个包。

我已将以下条目添加到 Info.plist

<key>NSMicrophoneUsageDescription</key>
<string>This application needs access to your Microphone</string>

我的包包括 java 运行时,并且 Info.plist 都已更新

/Applications/<name>.app/Contents/Info.plist

/Applications/<name>.app/Contents/PlugIns/Java.runtime/Contents/Info.plist

我错过了什么吗?我应该添加什么来触发麦克风权限警报?

我应该先对申请进行公证吗?

标签: javamacosmacos-catalinaprivacy

解决方案


推荐阅读