Можно достигнуть части этого путем установки полномочий на папке, таким образом, что у целевых пользователей есть доступ для записи к папке, но не доступ для чтения.
, Например, чтобы позволить любому писать в папку, но не перечислять ее содержание, Вы могли сделать следующее:
chmod o=wx folder
Или только дать конкретную группу пользователей этот доступ:
chgrp groupname folder
chmod o=,g=wx folder
Теперь те пользователи не смогут перечислить содержание папки, но смогут поместить файлы в папку:
$ ls folder
ls: cannot open directory folder: Permission denied
$ touch folder/filename
Это не делает всего, что Вы хотите, с тех пор если пользователи могут все еще получить доступ к файлам в папке, если они могут предположить имя. Вы могли минимизировать этот риск через задание крона, которое регулярно перемещало файлы из папки поля отбрасывания к расположению, к которому другие пользователи не имеют никакого доступа.
На Mac вы можете использовать:
NSString *className = [self className];
или
NSString *className = NSStringFromClass([self class]);
На iPhone [self className]
не существует, поэтому вам придется использовать :
NSString *className = NSStringFromClass([self class]);
NSLog(@"%@",[self className]);
Обновление: извините, я не понял, что className не существует на iPhone. Как указано в приведенном выше комментарии; используйте ..
NSLog(@"%@", NSStringFromClass([self class]));
.. вместо.