2010-11-28 6 views
0

Я пытаюсь отправить имя устройства по сети, реализованной в CFNetwork. Мое приложение успешно отправит NSString поверх симулятора, но не на самом устройстве. Эталонный класс имеет свойство для этой функции, установленного на:Отправка имени [[UIDevice currentDevice]] по сети

@propertyic,readonly,retain) NSString *name 

Я пробовал форматирование окончательной строки я намерен использовать с помощью stringWithFormat, а также stringByAppendingString, но он не будет работать, используя либо метод.

+0

Глупый вопрос, может быть, но это имя, установленное на устройстве? – vakio 2010-11-28 09:53:37

ответ

3

Первая попытка отправить глупое имя, которое вы создаете, как

NSString *nameTest = @"Name of iPad" 

Если вы видите это, проблема не отправить NSString, я думаю, что это работает для вас. Чем, вы знаете, получить имя с этим

NSString *name = [[UIDevice currentDevice] name]; 

Теперь ошибка вы можете иметь это: Нилл имя или имя с недопустимого символа, эта работа для меня:

NSArray *toRemove = [NSArray arrayWithObjects:@"'", @"\"", @"<", @">", nil]; 
for (NSString *currentChar in toRemove) { 
    name = [name stringByReplacingOccurrencesOfString:currentChar 
              withString:@""]; 
}  
if ([name isEqualTo:@""]) name = @"no name"; 

Смотрите, если это проблема