Zugriff auf Kontakte

Hi,
aus meinem Programm greife ich auf die Kontakte vom macOS zu. Bis zum macOS 10.13. erschien ein Fenster mit der Frage, ob
das Programm auf die Kontakte zugreifen dürfte. Ab 10.14 kommt dieses Fenster nicht mehr und der Zugriff ist nicht möglich.
Wenn ich in den Systemeinstellungen unter Sicherheit / Kontakte den Haken für mein Programm rausnehmen und wieder setze,
dann funktioniert der Zugriff. Aber mit dem erneuten Starten vom Programm ist der Zugriff wieder gesperrt.
Wie kann ich erreichen, dass der Zugriff immer gewährleistet ist oder das Abfragefenster wieder erscheint?

Klemens

Hast Du so ein NSContactsUsageDescription-Dings in Deiner plist?

Nee, was bedeutet das nun?

Schau mal meine Liste hier:
https://www.mbsplugins.net/archive/2019-03-31/Required_keys_for_infoplist_fi/monkeybreadsoftware_blog_archive

Und bei den Contacts Klassen im MBS Plugin gibt es auch eine Funktion um explizit den Status abzufragen und um Erlaubnis zu bitten.

Genau wie für die URLs muß man bei den Kontakten sagen, wofür man die braucht. Siehe z.B. hier. Das ist aber nicht neu. Das muß man über ein Build-Script in die plist einfügen.

'contacts
dim command as String = “/bin/echo 'NSContactsUsageDescription = ““Nur Deine Email-Adresse und Dein Name werden benötigt.””; '>>” + appPath + “/Contents/Resources/de.lproj/InfoPlist.strings”
Call DoShellCommand(command)
command = “/bin/echo 'NSContactsUsageDescription = ““Only your email address and name will be accessed.””; '>>” + appPath + “/Contents/Resources/en.lproj/InfoPlist.strings”
Call DoShellCommand(command)
if theResult <> “” then print theResult

Ich finde es einfacher, eine Info.plist mit den benötigten Einstellungen zu erstellen, und dann ins Xojo-Projekt reinzuziehen… dann werden die Einträge der “eigenen Info.plist” beim Build mit-integriert.
Xojo User Guide: Using a plist

Hi,
in der plist ist ja einiges einzustellen. Ich habe mir mal die Beispiele von XOJO zum Zugriff auch die Kontakte angeschaut und ich wei nicht wo dort die info.plist “reingezogen” wurde. Auch das Beispiel zur plist von xojo http://documentation.xojo.com/api/networking/urlconnection.html ist schwer auf die Kontakte zu “migrieren”. Wie wrde das in Praxis aussehen? Wer kann mir dabei helfen die plist zum Zugriff auch die Kontakte zu erstellen?
Klemens

die info.plist ist ja nur eine XML Textdatei, die die richtigen Eintrge haben muss.
Und die werden dann in die info.plist vom Programm integriert.

Hier mal ein Beispiel:

[code]<?xml version="1.0" encoding="UTF-8"?>

NSRemindersUsageDescription Put some text here NSCalendarsUsageDescription Put some text here [/code]

Danke, hat nun mit der plist funktioniert.

Klemens

As alternative you can also use AppWrapper by Sam Rowlands

Nachtrag: Ah sorry, sehe wir sind in deutsch :wink:

I nearly read “Als alternative you can also use AppWrapper by Sam Rowlands”
:wink: