Создать (нормальный / безопасный) идентификатор пакета приложения из любой (небезопасной) строки - PullRequest
1 голос
/ 13 сентября 2011

Я хочу создать нормальное / безопасное имя пакета приложения (т. Е. Несколько читабельное, без «странных» символов и т. Д.) Из некоторой случайной строки Unicode (mich может содержать только что-либо).Для меня не имеет значения, является ли эта функция Какао, ObjC, Python и т. д.)

(Это связано с вопросом имени файла и вопросом имени пакета ,идентификатор пакета гораздо более ограничительный. Я думаю, что он не может даже содержать пробелы, и я также хотел бы вырезать точки и поставить свой собственный префикс.)

Я думаю, что Xcode также имеет некоторую функцию, которая делает это автоматически изназвание приложения.Возможно, в Какао есть какая-то стандартная функция для этого.

1 Ответ

0 голосов
/ 14 сентября 2011

Идентификаторы пакетов должны быть в форме обратного URL (гарантируя глобальную уникальность):

com.apple.xcode, например

Так что на самом деле вам нужно доменное имя, тогда вы можете придумать что угодноСхема, которая вам нравится ниже.

Учитывая это и некоторые знания о символах на вашем входе, вы можете либо просмотреть свой ввод, составив новую строку только с теми битами, которые вы хотите, или использовать методы, такие как stringByReplacingOccurrencesOfString: withString:и, если хотите, lowercaseString.

Разрешенные символы в идентификаторах пакетов именуются в документации по списку свойств 1013 * как:

Строка идентификатора пакетадолжен быть универсальным идентификатором типа (UTI), который содержит только буквенно-цифровые символы (AZ, az, 0-9), дефис (-) и точку (.).Строка также должна быть в формате обратного DNS.

...