Macos Mac应用程序反复请求访问权限

Macos Mac应用程序反复请求访问权限,macos,electron,electron-builder,electron-vue,Macos,Electron,Electron Builder,Electron Vue,我已经创建了一个用electron vue编写的Mac应用程序。 它需要键盘访问和屏幕录制访问 理想情况下,当我给予许可时,它应该立即开始工作 但我的应用程序有时会在重启后工作。 有时,每次重启后,它都会不断请求许可,即使我们已经给予了许可 我无法理解做错了什么 你能帮忙吗 mypackage.json "name": "pramod-dektop-creator", "version": "0.0.1", "description": "pramod-desktop-c

我已经创建了一个用electron vue编写的Mac应用程序。 它需要键盘访问和屏幕录制访问

理想情况下,当我给予许可时,它应该立即开始工作

但我的应用程序有时会在重启后工作。 有时,每次重启后,它都会不断请求许可,即使我们已经给予了许可

我无法理解做错了什么

你能帮忙吗

mypackage.json

    "name": "pramod-dektop-creator",
    "version": "0.0.1",
    "description": "pramod-desktop-creator",
    "author": "Pramod <pramod@xyz.com>",
    "scripts": {
        "build": "node .electron-vue/build.js && electron-builder",
        "build:clean": "cross-env BUILD_TARGET=clean node .electron-vue/build.js",
        "build:dir": "npm run build:clean && node .electron-vue/build.js && electron-builder --dir",
        "build:web": "cross-env BUILD_TARGET=web node .electron-vue/build.js",
        "dev": "node .electron-vue/dev-runner.js",
        "pack": "npm run pack:main && npm run pack:renderer",
        "pack:main": "cross-env NODE_ENV=production webpack --progress --colors --config .electron-vue/webpack.main.config.js",
        "pack:renderer": "cross-env NODE_ENV=production webpack --progress --colors --config .electron-vue/webpack.renderer.config.js",
        "postinstall": "electron-builder install-app-deps",
        "rebuild": "electron-rebuild -f -w sqlite3"
    },
    "main": "./dist/electron/main.js",

    "build": {
        "afterSign": "notarize.js",
        "asar": true,
        "productName": "pramod-dektop-creator",
        "appId": "org.pramod.desktop-creator",
        "protocols": {
            "name": "pramod-dektop-creator",
            "schemes": [
                "pramod"
            ]
        },
        "directories": {
            "output": "build"
        },

        "dmg": {
            "sign": false,
            "contents": [
                {
                    "x": 410,
                    "y": 150,
                    "type": "link",
                    "path": "/Applications"
                },
                {
                    "x": 130,
                    "y": 150,
                    "type": "file"
                }
            ]
        },
        "mac": {
            "icon": "build/icons/icon.icns",
            "gatekeeperAssess": false,
            "entitlements": "info.plist",
            "entitlementsInherit": "info.plist",
            "hardenedRuntime": true
        },
        "win": {
            "icon": "build/icons/icon.ico"
        }
    },
    "iohook": {
        "targets": [
            "node-72",
            "electron-70"
        ],
        "platforms": [
            "win32",
            "darwin",
            "linux"
        ],
        "arches": [
            "x64",
            "ia32"
        ]
    },
    "license": "",
}
“名称”:“pramod dektop创建者”,
“版本”:“0.0.1”,
“说明”:“pramod桌面创建者”,
“作者”:“普拉莫德”,
“脚本”:{
“构建”:“node.electron vue/build.js&&electron builder”,
“build:clean”:“cross-env build_TARGET=clean node.electron vue/build.js”,
“build:dir”:“npm运行build:clean&&node.electron vue/build.js&&electron builder--dir”,
“build:web”:“cross-env build_TARGET=web node.electron vue/build.js”,
“dev”:“node.electron vue/dev runner.js”,
“包”:“npm运行包:主和&npm运行包:渲染器”,
“pack:main”:“cross env NODE_env=production webpack--progress--colors--config.electron vue/webpack.main.config.js”,
“pack:renderer”:“cross-env NODE_env=production webpack--progress--colors--config.electron vue/webpack.renderer.config.js”,
“postinstall”:“electron builder安装应用程序deps”,
“重建”:“电子重建-f-w sqlite3”
},
“main”:“/dist/electron/main.js”,
“构建”:{
“后签名”:“公证人.js”,
“asar”:没错,
“产品名称”:“pramod dektop创建者”,
“appId”:“org.pramod.desktop creator”,
“议定书”:{
“名称”:“pramod dektop创建者”,
“计划”:[
“普拉莫德”
]
},
“目录”:{
“输出”:“生成”
},
“dmg”:{
“符号”:假,
“内容”:[
{
“x”:410,
“y”:150,
“类型”:“链接”,
“路径”:“/应用程序”
},
{
“x”:130,
“y”:150,
“类型”:“文件”
}
]
},
“mac”:{
“icon”:“build/icons/icon.icns”,
“看门人”:假,
“权利”:“info.plist”,
“授权信息”:“info.plist”,
“hardenedRuntime”:对
},
“赢”:{
“icon”:“build/icons/icon.ico”
}
},
“iohook”:{
“目标”:[
“节点-72”,
“电子-70”
],
“平台”:[
“win32”,
“达尔文”,
“linux”
],
“拱门”:[
“x64”,
“ia32”
]
},
“许可证”:“,
}

请检查您是否已授予正确应用程序的权限

怎么做

转到
安全和隐私设置。

右键单击应用程序并选择该选项

它将带您进入已获得许可的应用程序

交叉检查您授予访问权限的应用程序是否正确

对我来说,安装的应用程序不同于我授予的权限

我删除了重复的应用程序并再次授予了权限。之后,它开始工作


可能解决不了您的问题,但值得一试。

我也遇到过这个问题,不确定是什么原因造成的,但我发现用户必须取消选中,然后在“系统设置”中重新选中应用程序的“可访问性权限”复选框,才能使键盘控制正常工作!这可能是mac的问题?我在莫哈韦面对这个问题,是的。我在Mojave Too中遇到了一个问题,您是在开发模式下运行此应用程序还是在打包后运行生产应用程序?打包应用程序并尝试将应用程序安装到
/Applications
后,它会询问once@tpikachu就我而言,我的应用程序打包并安装在
应用程序中
,我认为每次我更新Electron时都会发生这个问题,尽管我不确定这是否真的是原因。