iOS

Configuring Web Applications

  • https://developer.apple.com/library/content/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html

maggap - make iOS apps

  • https://github.com/MacGapProject/MacGap1

warning ‘Implicit declaration of function’

This was caused by a missing import statement in my fork of org.apache.cordova.wifiinfo. See [[https://github.com/companje/org.apache.cordova.wifiinfo/commit/e416e337e674336013248b0ac493362d23660a36|github]]

install iOS docs in Dash

First: To install OS X/iOS docsets you need to open Xcode and go to Preferences > Downloads > Documentation.

get name of currently connected WiFi network

CFArrayRef myArray = CNCopySupportedInterfaces(); CFDictionaryRef myDict = CNCopyCurrentNetworkInfo(CFArrayGetValueAtIndex(myArray, 0)); NSDictionary *ssidList = (__bridge NSDictionary*)myDict; NSString *SSID = [ssidList valueForKey:@"SSID"]; NSLog(@"%@",SSID);


# open Settings from your app
  [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=WIFI"]];
  [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString]];
* http://stackoverflow.com/questions/8246070/ios-launching-settings-restrictions-url-scheme  
* as of iOS8 you can open the built-in Settings app with

NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; if ([[UIApplication sharedApplication] canOpenURL:url]) { [[UIApplication sharedApplication] openURL:url]; }


# Reflector App
* [[http://www.airsquirrels.com/reflector/|via AirPlay het beeld van je telefoon naar je computer streamen]]

# iPhone 6 sensor hacks
* http://www.redmondpie.com/video-demo-shows-off-a-very-cool-iphone-trick-that-you-likely-dont-know-about/

# libobjc.A.dylib`objc_msgSend:
see [[phonegap]]

# URL handling (in .plist)
<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>doodle3d</string>
    </array>
    <key>CFBundleURLName</key>
    <string>com.foo.xyz</string>
  </dict>
</array> ```

file handling (in .plist)

    <key>UTExportedTypeDeclarations</key>
    <array>
      <dict>
        <key>UTTypeConformsTo</key>
        <array>
          <string>public.plain-text</string>
          <string>public.text</string>
        </array>
        <key>UTTypeDescription</key>
        <string>STL File</string>
        <key>UTTypeIdentifier</key>
        <string>com.doodle3d.stl</string>
        <key>UTTypeTagSpecification</key>
        <dict>
          <key>public.filename-extension</key>
          <string>stl</string>
          <key>public.mime-type</key>
          <string>chemical/x-pdb</string>
        </dict>
      </dict>
    </array>
    <key>CFBundleDocumentTypes</key>
    <array>
      <dict>
        <key>CFBundleTypeIconFiles</key>
        <array>
          <string>Document-molecules-320.png</string>
          <string>Document-molecules-64.png</string>
        </array>
        <key>CFBundleTypeName</key>
        <string>STL file</string>
        <key>CFBundleTypeRole</key>
        <string>Viewer</string>
        <key>LSHandlerRank</key>
        <string>Owner</string>
        <key>LSItemContentTypes</key>
        <array>
          <string>com.doodle3d.stl</string>
        </array>
      </dict>
    </array>

How to obtain Certificate Signing Request

  • [[http://stackoverflow.com/questions/12126496/how-to-obtain-certificate-signing-request Create a certificate with ‘Keychain Access’]]
  • [[https://developer.apple.com/account/ios/certificate/certificateCreate.action Upload the CertificateSigningRequest file to Apple’s Dev center]]
  • [[https://developer.apple.com/account/ios/profile/profileDownload.action Create a mobile provisioning profile]]

disable select in webpages with css

-webkit-user-select: none;


# disable glow effect for home screen icons of webpages
<code html>
<link rel="apple-touch-icon-precomposed" href="apple-touch-icon-72x72-precomposed.png" />

more info: http://mathiasbynens.be/notes/touch-icons

anti-aliasing on ios with openFrameworks

int main(){ ofAppiPhoneWindow * iOSWindow = new ofAppiPhoneWindow(); iOSWindow->enableAntiAliasing(4); iOSWindow->enableRetinaSupport(); ofSetupOpenGL(iOSWindow, 480, 320, OF_FULLSCREEN); ofRunApp(new testApp); }


# openFramworks for ios setup info
* http://www.openframeworks.cc/setup/iphone/

# in-app email
* http://blog.mugunthkumar.com/coding/iphone-tutorial-in-app-email/

# in-app purchase
* [[http://stackoverflow.com/questions/11200549/upgrade-free-app-to-paid-with-in-app-purchase|stackoverflow on upgrade-free-app-to-paid-with-in-app-purchase]]
* [[http://www.raywenderlich.com/2797/introduction-to-in-app-purchases|Introduction]]
* [[http://www.raywenderlich.com/21081/introduction-to-in-app-purchases-in-ios-6-tutorial|Introduction IOS6]]
* openFrameworks [[http://forum.openframeworks.cc/index.php?topic=11197.15|ofxInAppProduct]]

# line smoothing
* http://answers.oreilly.com/topic/1669-how-to-render-anti-aliased-lines-with-textures-in-ios-4/

# cross compiling
http://shift.net.nz/2010/09/compiling-freetype-for-iphoneios/

# problem
```file is universal but does not contain a(n) armv7 slice for architecture armv7```
try to remove armv7s from the build settings

# crash logs

~/Library/Logs/CrashReporter/MobileDevice/


# ld: symbol(s) not found for architecture armv7
dit betekent dat er een sourcefile (.m / .mm of .cpp) niet gevonden kan worden of niet wordt mee-gecompiled. Ook al zit deze misschien wel in je projectree.
Oplossing: ga naar je Project settings klik op de juiste Target en ga dan naar ''Compile sources''. Sleep de ontbrekende source file hier naar toe.

# enable redpark serial cable in your iOS project
Be sure to add 'Supported external accessory protocol' = 'com.redpark.hobdb9' to your project's .plist file

# Undefined symbols ...  _OBJC_CLASS_$_EAAccessoryManager
Add ''ExternalAccessory.framework'' to your project's Target Linked Libraries.

# snippets of basic usage of redparkWrapper
<code objc>
//
//  ViewController.h
//

#import <UIKit/UIKit.h>
#import "redparkWrapper.h"

@interface ViewController : UIViewController <RedparkWrapperDelegate> {

}
- (IBAction)go:(id)sender;

@property (retain) redparkWrapper* rp;
@property (nonatomic, retain) IBOutlet UITextView* res;

@end

// // ViewController.m //

#import “ViewController.h”

@interface ViewController ()

@end

@implementation ViewController

@synthesize rp, res;

  • (void)viewDidLoad { [super viewDidLoad];

    rp = [[redparkWrapper alloc] init]; [rp setDelegate:self];

    [res setText:@”nothing yet”]; }

  • (IBAction)go:(id)sender { [res setText:@”sending…”]; [rp sendSerial:@”TEST”]; }

-(void) newMessageAvailable:(NSString*)msg{ [res setText:@”receiving”]; [res setText:msg]; }

@end ```

(redpark-serial-cable-redparkwrapper.png?550)