Мое приложение отклонено.Доступ к '/usr/lib/libpcap.A.dylib' Что я могу сделать, чтобы избежать этого? - PullRequest
1 голос
/ 04 июня 2011

Я отправил простое приложение в Mac OSX App Store, но оно было отклонено со следующим объяснением:

"Приложение создает файлы, записывает их или открывает для доступа на чтение / запись к следующемурасположение (я):

'/ usr / lib / libpcap.A.dylib' "

Я использую код углерода, такой как FSMountServerVolumeSync и FSGetCatalogInfo.

Есть ликак я мог бы аннулировать это?

Редактировать: Это вызвано не углеродным сценарием оболочки: /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I |sed -e 's / ^ * SSID: // p' -ed \ ")"

Ответы [ 2 ]

6 голосов
/ 05 июня 2011

Поскольку проблема связана с использованием утилиты командной строки airport, если вы ориентируетесь на Mac OS X v10.6 +, я предлагаю вам использовать CoreWLAN Framework для получения SSIDтекущий беспроводной интерфейс:

#import <CoreWLAN/CoreWLAN.h>

CWInterface *wif = [CWInterface interface];
if (wif) {
    // There's an active WiFi connection; get its SSID
    NSString *currentSSID = wif.ssid;
}
0 голосов
/ 05 июня 2011

ОК, я понял, в чем причина проблемы.Я могу использовать команду терминала fs_usage , чтобы увидеть, что происходит в файловой системе.Я использую " sudo fs_usage -w | grep" / usr / lib"

Это проблема:

15: 58: 03.049 stat64 / usr / lib / libpcap.A.dylib 0.000007 airport
15: 58: 03.049 открыто F = 4 (R_ _ _) /usr/lib/libpcap.A.dylib 0.000020 airport

Я используюсценарий оболочки для получения имени активного соединения WIFI. Очевидно, что аэропорт открывает /usr/lib/libpcap.A.dylib для чтения, другие библиотеки не открываются таким образом (нет (R_ _ ))

РЕДАКТИРОВАТЬ: Это был ответ на мой второй вопрос, но Bavarious простое решение для получения SSID устраняет все трудности для меня;)

...