Skip to content

Instantly share code, notes, and snippets.

View enigmaticape's full-sized avatar

Enigmatic Ape enigmaticape

View GitHub Profile
#import <XCTest/XCTest.h>
#import <OCMock/OCMock.h>
typedef void(^MockBlock)(void);
@interface Action : NSObject
@property (nonatomic, strong) MockBlock action;
@end
@enigmaticape
enigmaticape / SKRequest+Blocks.h
Last active August 29, 2015 14:01
Adding block based interface to Store Kit SKRequest
#import <StoreKit/StoreKit.h>
typedef void(^SKRequestCompletion)(SKRequest * request, NSError * error);
@interface SKRequest (Blocks) <SKRequestDelegate>
- (void) startWithCompletion:(SKRequestCompletion) completion;
@end
#import "SKRequest+Blocks.h"
#import <objc/runtime.h>
static char const * const completion_key = "completion";
@implementation SKRequest (Blocks)
- (void)
request :(SKRequest *) request
didFailWithError:(NSError *) error
@enigmaticape
enigmaticape / SKRequest+Blocks.example
Created May 20, 2014 15:28
Example of using SKRequest+Blocks
SKRequest * arequest = (
[[SKReceiptRefreshRequest alloc]
initWithReceiptProperties:nil
]
);
[arequest
startWithCompletion:^(SKRequest *request, NSError *error)
{
if( error ) {
@enigmaticape
enigmaticape / oneweirdtrick.c
Created May 21, 2014 18:35
Determine if Wi-Fi is enabled on iOS with this one weird trick.
struct ifaddrs *interfaces;
if(!getifaddrs(&interfaces)) {
for( struct ifaddrs *interface = interfaces; interface; interface=interface->ifa_next) {
BOOL up = (interface->ifa_flags & IFF_UP) == IFF_UP;
if ( up ) {
NSLog(
@"Name : %s, sa_family : %d",
interface->ifa_name,
interface->ifa_addr->sa_family
Name : lo0, sa_family : 18
Name : lo0, sa_family : 30
Name : lo0, sa_family : 2
Name : lo0, sa_family : 30
Name : pdp_ip0, sa_family : 18
Name : pdp_ip0, sa_family : 2
Name : en0, sa_family : 18
Name : awdl0, sa_family : 18
Name : lo0, sa_family : 18
Name : lo0, sa_family : 30
Name : lo0, sa_family : 2
Name : lo0, sa_family : 30
Name : pdp_ip0, sa_family : 18
Name : pdp_ip0, sa_family : 2
Name : en0, sa_family : 18
Name : awdl0, sa_family : 18
Name : awdl0, sa_family : 30
Name : lo0, sa_family : 18
Name : lo0, sa_family : 30
Name : lo0, sa_family : 2
Name : lo0, sa_family : 30
Name : pdp_ip0, sa_family : 18
Name : pdp_ip0, sa_family : 2
Name : en0, sa_family : 18
Name : en0, sa_family : 30
Name : en0, sa_family : 2
Name : awdl0, sa_family : 18
#import <Foundation/Foundation.h>
#import <ifaddrs.h>
#import <net/if.h>
#import <SystemConfiguration/CaptiveNetwork.h>
@interface SMTWiFiStatus : NSObject
- (BOOL) isWiFiEnabled;
- (BOOL) isWiFiConnected;
SMTWiFiStatus * wstatus = [SMTWiFiStatus new];
NSLog(@"Wifi Enabled : %@", [wstatus isWiFiEnabled ] ? @"Yes" : @"No");
NSLog(@"Wifi Connected : %@", [wstatus isWiFiConnected] ? @"Yes" : @"No");
NSLog(@"Wifi BSSID : %@", [wstatus BSSID]);
NSLog(@"Wifi SSID : %@", [wstatus SSID ]);