This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.
To capture the video (filesize: 19MB), using the free "QuickTime Player" application:
| #!/usr/bin/env bash | |
| if [[ ! ( # any of the following are not true | |
| # 1st arg is an existing regular file | |
| -f "$1" && | |
| # ...and it has a .ipa extension | |
| "${1##*.}" == "ipa" && | |
| # 2nd arg is an existing regular file | |
| -f "$2" && | |
| # ...and it has an .mobileprovision extension |
| #!/usr/bin/env bash | |
| if [[ ! ( # any of the following are not true | |
| # 1st arg is an existing regular file | |
| -f "$1" && | |
| # ...and it has a .ipa extension | |
| "${1##*.}" == "ipa" && | |
| # 2nd arg is an existing regular file | |
| -f "$2" && | |
| # ...and it has an .mobileprovision extension |
| NOTE: Easier way is the X86 way, described on https://www.genymotion.com/help/desktop/faq/#google-play-services | |
| Download the following ZIPs: | |
| ARM Translation Installer v1.1 (http://www.mirrorcreator.com/files/0ZIO8PME/Genymotion-ARM-Translation_v1.1.zip_links) | |
| Download the correct GApps for your Android version: | |
| Google Apps for Android 6.0 (https://www.androidfilehost.com/?fid=24052804347835438 - benzo-gapps-M-20151011-signed-chroma-r3.zip) | |
| Google Apps for Android 5.1 (https://www.androidfilehost.com/?fid=96042739161891406 - gapps-L-4-21-15.zip) | |
| Google Apps for Android 5.0 (https://www.androidfilehost.com/?fid=95784891001614559 - gapps-lp-20141109-signed.zip) |
In a large, nested project where I prefer to control the workspace, I run pod install --no-integrate on my root project. However, some pods don't include their required static libs correctly within their target's framework build phases.
For example, Pod-TestFlightSDK's required libTestFlight.a is excluded and removed every time I update my pods. Which required me to manually update the Pod target each time to include the static lib, which required me to automate it:
post_install do |installer_representation|
installer_representation.project.targets.each do |target|
if target.name == 'Pods-TestFlightSDK'
libFile = installer_representation.project.new_file('TestFlightSDK/libTestFlight.a')
end| #!/bin/bash | |
| # combine mozjpeg and jpegoptim | |
| # you have to build https://github.com/mozilla/mozjpeg first | |
| # path = /opt/mozjpeg | |
| # ~# find . -iname "*.jp*g" -type f -exec jpegcompress "{}" \; | |
| if [ -z "$1" ]; then | |
| echo "is empty" | |
| exit; |
| class Cell: UITableViewCell { | |
| override func drawRect(rect: CGRect) { | |
| var bubbleSpace = CGRectMake(20.0, self.bounds.origin.y, self.bounds.width - 20, self.bounds.height) | |
| let bubblePath1 = UIBezierPath(roundedRect: bubbleSpace, byRoundingCorners: .TopLeft | .TopRight | .BottomRight, cornerRadii: CGSize(width: 20.0, height: 20.0)) | |
| let bubblePath = UIBezierPath(roundedRect: bubbleSpace, cornerRadius: 20.0) | |
| UIColor.greenColor().setStroke() | |
| UIColor.greenColor().setFill() |
| // USAGE: | |
| // Call RestorationDefender.printViewControllerClassesThatAreProbablyNotRestorable() to print a list of view controllers that will probably not return from state restoration. | |
| // Call RestorationDefender.crashWhenViewControllersDoNotImplementStateRestoration() to crash your app when a view controller appears without setting restorationIdentifier and restorationClass. | |
| // Call RestorationDefender.shoutWhenViewControllersDoNotImplementStateRestoration() to print a big message when a view controller appears without setting restorationIdentifier and restorationClass. | |
| import Foundation | |
| private func objc_getClassList() -> [AnyClass] { | |
| let expectedClassCount = objc_getClassList(nil, 0) | |
| var allClasses = UnsafeMutablePointer<AnyClass?>.alloc(Int(expectedClassCount)) |
| #!/bin/sh | |
| # | |
| # Simple script for uploading binaries to Fabric (d/h Crashlytics) | |
| # | |
| # written by @taufik_obet | |
| # modified for pushing to fabric by @hismamaz | |
| # | |
| # |
| public override class func initialize() { | |
| struct Static { | |
| static var token: dispatch_once_t = 0 | |
| } | |
| if self !== RCChatListViewController.self { | |
| return | |
| } | |