我想从一些随机的Unicode字符串(mich可能只包含任何内容)中创建一个理智/安全的应用程序包名称(即有些可读,没有“奇怪”字符等)。
(对我来说无关紧要,函数是Cocoa,ObjC,Python等。)
(这与filename question和bundle name question有关,但是捆绑标识符的限制性更强。我认为它甚至不能包含空格,我也想删除点并放入我的自己的前缀。)
我认为Xcode还有一些功能可以从应用程序名称自动执行。也许Cocoa中有一些标准功能可以做到这一点。
答案 0 :(得分:0)
捆绑标识符应采用反向URL形式(保证全局唯一性):
com.apple.xcode
,例如
所以你真的需要一个域名,那么你可以在下面发明你喜欢的任何方案。
考虑到这一点,以及对输入中字符的一些了解,您可以扫描输入组成一个只包含您想要的位的新字符串,或者使用stringByReplacingOccurrencesOfString: withString:
等方法,如果您愿意,{ {1}}。
包标识符中允许的字符在Property List Documentation中命名为:
捆绑ID字符串必须是统一类型标识符(UTI),其仅包含字母数字(A-Z,a-z,0-9),连字符( - )和句点(。)字符。该字符串也应采用反向DNS格式。