2011-03-21 4 views
3

現在、私のアプリで行われたすべてのURL接続をログに記録しようとしています。これを行うために使用できるデバッグスイッチ、またはネットワークアクティビティモニタツールはありますか?iOS - トラッキングURL接続

また、ソースベース全体にNSLogステートメントを含める唯一の方法はありますか?

おかげで、楽器で アッシュ

答えて

0

ネットワークアクティビティモニタは、System Instrumentsの下にあります。私は個人的にそれを使用していないので、あなたが望むことをしているかどうかわかりません。

1

、アプリケーションのすべてのNSURLConnectionsだからデフォルト

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSURLCache_Class/Reference/Reference.html

のための共有キャッシュクラスを使用し、あなたができることの一つは、デフォルトのキャッシュをサブクラス化し、その後cachedResponseForRequestNSURLCache方法でありますあなたの要求を追跡することができます。あなたのAppDelegatedidFinishLaunchingWithOptions方法で

@interface CustomNSURLCache : NSURLCache { 

} 

@end 


@implementation CustomNSURLCache 


-(NSCachedURLResponse *)cachedResponseForRequest:(NSURLRequest *)request { 

    NSLog(@"connection will send request for url: %@", request); 

    return [super cachedResponseForRequest:request]; 

} 

@end 

、あなたのキャッシュのインスタンスに共有キャッシュを設定します。

CustomNSURLCache *customCache = [[CustomNSURLCache alloc] initWithMemoryCapacity:0 diskCapacity:51200 diskPath:nil]; 
[NSURLCache setSharedURLCache:customCache]; 
[customCache release]; 

(0デフォルトのメモリ容量の値とDiskCapacity用512000である)

あなたは新しい接続

NSURLRequest *request1 = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:@"http://stackoverflow.com"]]; 
[[NSURLConnection alloc] initWithRequest:request1 delegate:self]; 

を作成するときに今、あなたはあなたのコンソール

でこのように表示されます

接続はURLの要求を送信します:< NSURLRequest https://stackoverflow.com/>

関連する問題