對於我的個人項目,我試圖檢索iPhone WiFi信號強度。我完全意識到,這是在沒有證件的善良之地,所以請避免從「沒有AppStore」的答案。 :)訪問和使用MobileWiFi.framework
Anywho,我一直在閱讀以前的WiFi網絡掃描儀應用程序(WiFi Stumbler),但恐怕大多數(如果不是全部)反映了過時的SDK文檔。希望這個問題也能爲最新的iPhone SDK 3.1.2提供一些集中/有見地的材料。
這裏是我的不完整/不工作代碼:
.H
void *libHandle;
void *airportHandle;
int (*open)(void *);
int (*bind)(void *, NSString *);
int (*close)(void *);
int (*scan)(void *, NSArray **, void *);
.M
libHandle = dlopen("/System/Library/PrivateFrameworks/MobileWiFi.framework/MobileWiFi",RTLD_LAZY);
open = dlsym(libHandle, "Apple80211Open");
bind = dlsym(libHandle, "Apple80211BindToInterface");
close = dlsym(libHandle, "Apple80211Close");
scan = dlsym(libHandle, "Apple80211Scan");
open(&airportHandle);
bind(airportHandle, @"en0");
NSLog(@"Result %@",libHandle);
當設備上運行時,它會產生我不斷所謂最喜歡...
異常類型:EXC_BAD_ACCESS(SIGSEGV)
我在想動態加載調用,不加載任何東西。目錄:/System/Library/PrivateFrameworks/僅列出了沒有二進制文件或別名的Info.plist文件。
大概做了一些非常錯誤的事情(錯誤的目錄?)...感謝任何幫助!
另外,作爲跟進。要提取WiFi信息,可能需要執行以下操作:
GetInfoCopy = dlsym(libHandle, "Apple80211GetInfoCopy");
而我的問題是1)有沒有人對此有任何好運? 2)你如何獲得一個標題轉儲,就像我在Objective-C庫上使用類轉儲(因爲MobileWifi在C中)?
被警告。最近,蘋果一直在強制刪除WiFi掃描儀。 – Rev316 2010-03-08 17:04:09
嗨,我在這個代碼中獲取EXC_BAD_ACCESS ... :( – Rajneesh071 2012-08-06 10:18:07
它不存在WiFiManager。bundle/WiFiManager - >破解應用程序 – vualoaithu 2014-04-21 01:53:01