Definir variáveis NSUserAutomatorTask sem exigir que os Fluxos de trabalho do Automator declarem essa variável

Estou a usarNSUserAutomatorTask para iniciar um.workflow, criado por meio do aplicativo Automator no macOS 10.1

Estou passando variáveis para o fluxo de trabalho através dovariables propriedade:

https: //developer.apple.com/documentation/foundation/nsuserautomatortask/1418099-variable

O aplicativo pai está na caixa de areia. O script está localizado no.applicationScriptsDirectory e é executado com sucesso quando as variáveis não estão definidas ou quando as mesmas variáveis são definidas no aplicativo e declaradas no fluxo de trabalh

if let workflow = try? NSUserAutomatorTask(url: url) {

    workflow.variables = ["randomVariable": "value"] // NOTE

    workflow.execute(withInput: nil) { (value, error) in
        if let error = error {
            print(error) // No variable named "randomVariable"
        }
    }
}

O fluxo de trabalho falha ao executar com o erro:

Nenhuma variável chamada "randomVariable"

No entanto, se eu editar o fluxo de trabalho e adicionar uma variável para corresponder à definida no código, tudo estará be

Já não recebo o erro e o fluxo de trabalho é executado corretamente:

Este é um problema, porque quero passar várias informações como variáveis para qualquer fluxo de trabalho em potencial e para cada fluxo de trabalho decidir individualmente lidar com cada parâmetro necessári

Eu não quero require que todo fluxo de trabalho declara as variáveis que meu aplicativo irá opcionalmente providenciar

Observe que, no meu exemplo de fluxo de trabalho, a variável nunca é usada. Não quero o requisito adicional de que seja declarad

Existe alguma maneira de evitar que cada fluxo de trabalho declare as variáveis que meu aplicativo passa ao executar o fluxo de trabalh

Or, existe uma maneira de inspecionar quais variáveis um fluxo de trabalho declarou? Eu só poderia passar os que realmente são usados pelo fluxo de trabalh

questionAnswers(1)

yourAnswerToTheQuestion