iOS:通过蓝牙将NSString转换为选择器FAILS
||
好的,我正在使用iOS GameKit做一个简单的实验。步骤如下:
-1。我在iPad1上有一个NSString \'myFunction \'。
-2。我通过GameKit与iPad2的蓝牙连接进行拍摄。编码为NSASCIIStringEncoding。
-3。 iPad2收到该消息。
-4。 iPad2从接收到的数据中获取字符串'myFunction \',并将其记录到调试器中,这样我就可以知道它是否通过了。使用NSASCIIStringEncoding对其进行解码。目前很好。
-5。我使用NSSelectorFromString()将\'myFunction \'转换为选择器。
-6。我在实现-(void)myFunction {}的对象上执行选择器
-7。 iPad2崩溃,抱怨无法在对象上找到函数myFunction。
现在,如果在步骤5中将字符串\'myFunction \'硬编码到NSSelectorFromString()中,它将可以正常工作。我知道这是一些编码问题。我尝试使用NSUTF8StringEncoding对字符串进行编码,但不仅程序仍然崩溃,而且在步骤4中将字符串记录为null。
我仔细研究了NSString类参考中所有各种编码字符串的方法,
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html#
但是在我依次尝试每个人之前,先看看是什么粘在墙上了,我想知道是否还有其他人试图做类似我正在尝试的事情?通过蓝牙发送字符串以转换为另一端的选择器并执行。
没有找到相关结果
已邀请:
1 个回复
驮帽俺篮号