http://en.wikipedia.org/wiki/Google_App_Engine
Run your web applications on Google's infrastructure http://www.stanford.edu/class/ee380/Abstracts/081105-slides.pdf
GAE Runtime http://code.google.com/intl/en/appengine/docs/python/runtime.html
| // A minimal iOS app set up entirely in code using Objective-C rather than using a storyboard and UIApplicationSceneManifest in the Info.plist. | |
| // Last updated for iOS 18. | |
| // Swift version: https://gist.github.com/douglashill/b8125f7e2336b6a47461df0d4898f64d | |
| @import UIKit; | |
| @interface SceneDelegate : UIResponder <UIWindowSceneDelegate> | |
| @end | |
| @implementation SceneDelegate |
| // Code to handle up/down cursor motion in a UITextView. | |
| // | |
| // Based on code from OmniGroup's OUITextView | |
| // https://github.com/omnigroup/OmniGroup/blob/master/Frameworks/OmniUI/iPad/OUITextView.m | |
| // | |
| #import "TextView.h" | |
| @interface TextView () | |
| # memcached requires libevent | |
| cd /usr/local/src | |
| curl -L -O http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.17-stable.tar.gz | |
| tar -xvzf libevent-2.0.17-stable.tar.gz | |
| cd libevent-2.0.17-stable* | |
| ./configure | |
| make | |
| sudo make install | |
| # Compile memcached utility |
| - (UIViewController *)topViewController{ | |
| return [self topViewController:[UIApplication sharedApplication].keyWindow.rootViewController]; | |
| } | |
| - (UIViewController *)topViewController:(UIViewController *)rootViewController | |
| { | |
| if (rootViewController.presentedViewController == nil) { | |
| return rootViewController; | |
| } | |
| import socket, ssl, json, struct | |
| import binascii | |
| # device token returned when the iPhone application | |
| # registers to receive alerts | |
| deviceToken = '39cac56f 986a0e66 3c4fd4f4 68df5598 024d2ca3 8b9f307c 741c180e 9fc30c62' | |
| thePayLoad = { | |
| 'aps': { | |
| 'alert':'Oh no! Server\'s Down!', |
http://en.wikipedia.org/wiki/Google_App_Engine
Run your web applications on Google's infrastructure http://www.stanford.edu/class/ee380/Abstracts/081105-slides.pdf
GAE Runtime http://code.google.com/intl/en/appengine/docs/python/runtime.html
| /*********************************************** | |
| * In application:DidFinishLaunchingWithOptions: | |
| ************************************************/ | |
| // Set up newsstand helper | |
| // newsstand is an ivar - you will need to declare it in your header and | |
| // release it in dealloc | |
| newsstand = [[UANewsstandHelper alloc] init]; |
| import re | |
| from hashlib import md5 | |
| def gfm(text): | |
| # Extract pre blocks. | |
| extractions = {} | |
| def pre_extraction_callback(matchobj): | |
| digest = md5(matchobj.group(0)).hexdigest() | |
| extractions[digest] = matchobj.group(0) | |
| return "{gfm-extraction-%s}" % digest |