最近在研究别人的应用。 打开app包,看到有MainWindow.nib文件,想研究下这里面是如何组织的。
用xcode打开,没内容。
用ibtool
ibtool --export-strings-file file.strings MainWindow.nib
报错
<key>description</key> <string>The document "MainWindow.nib" could not be opened. Interface Builder cannot open compiled nibs.</string>
网上查了,说可以用plutil 转换部分内容
plutil -convert xml1 -o - MainWindow.nib
还是报错
MainWindow.nib: Property List error: Unexpected character N at line 1 / JSON error: JSON text did not start with array or object and option to allow fragments not set.
有人研究过怎么查看编译过的nib文件的信息吗?求助。。。
为了满足好奇心,想逆向看一下别的应用怎么组织界面的。 但在网上查了一下很少这方面的资料。
好像有个UINIB的类可以加载nib文件啊。 貌似,好像可以写个app加载这个nib,并把信息dump出来。 等有空了试验下
嗯。你问倒我了。😄。
开始我想找一下某个应用的application delegate。那个应用里面没有ApplicationDelegate的类、我看了main里面传的也是nil。
看了Apple的文档,说是可能在maintain nib里面定义。就想反编译看一下。当时在网上也没查到什么资料,就上来问一下。
后来通过猜测找到了那个应用的delegete啊,所以这个问题就不急迫,
但是对于大家为什么没人研究反编译nib的问题很好奇。
你这么一问,我倒是想明白了,原来反编译的价值不大啊。😄 直接看界面应该就能猜出个七八,实在不行再用reavel一看。应该就没有什么秘密了吧 。
谢谢