DEVICE TYPE | PRODUCT NAME | RESOLUTION (PIXEL) | UIKIT SIZE (POINT) | ASPECT RATIO (H:W) | UIKIT SCALE | PIXEL PER INCH (PPI) |
---|---|---|---|---|---|---|
iPhone1,1 | iPhone | 320 x 480 | 320 x 480 | 1.5 | 1.0 | 163 |
iPhone1,2 | iPhone 3G | 320 x 480 | 320 x 480 | 1.5 | 1.0 | 163 |
iPhone2,1 | iPhone 3GS | 320 x 480 | 320 x 480 | 1.5 | 1.0 | 163 |
iPhone3,1 | iPhone 4 (GSM) | 320 x 480 | 640 x 960 | 1.5 | 2.0 | 326 |
iPhone3,3 | iPhone 4 (CDMA) | 320 x 480 | 640 x 960 | 1.5 | 2.0 | 326 |
iPhone4,1 | iPhone 4S | 320 x 480 | 640 x 960 | 2.0 | 1.5 | 326 |
Find me on Github, Facebook, Youtube, etc by #iOSBySheldon.
Library and Framework are not same but close. Frameworks are just libraries with linking (binding). In other words, frameworks are just libraries that are bundled into targets. Therefore, their file extensions are different.
- Static Library - xxxx.a
- Dynamic Library - xxxx.dylib
This notes is written by Sheldon. You can find me with #iOSBySheldon in Github, Youtube, Facebook, etc.
Convert .mov/.MP4 to .gif
As a developer, I feel better to upload a short video when I create the pull request to show other viewers what I did in this PR. I tried .mov format directly got after finishing recording screen using Quicktime, however, gif offers preview in most web pages, and has smaller file size.
This is not limited to developer, anyone has this need can use this method to convert the files.
This will create a proxy server in whatever your availability zone your VPC is in. For me, that's us-east-1b
. For you, that may be something different. Steps 10+ should more or less work regardless of your provider since those steps cover the setup and configuration of TinyProxy.
- Click the Launch Instance button.
- Choose Ubuntu Server 14.04 LTS (HVM), SSD Volume Type. This isn't strictly necessary. If you choose another OS, check its documentation for how to install new packages.
- On the Choose an Instance Type screen, select t2.micro. It's Free Tier eligible.
- Click the Next: ... buttons until you reach the Configure Security Group screen.
- You may wish to reduce the amount of storage on the Add Storage screen. This is optional.
- You may wish to add a tag on the Tag Instance screen. This is also optional.
- On the Configure Security Group screen:
- Select Create a new security group.
#!/bin/sh | |
UNIVERSAL_OUTPUTFOLDER=${BUILD_DIR}/${CONFIGURATION}-universal | |
# make sure the output directory exists | |
mkdir -p "${UNIVERSAL_OUTPUTFOLDER}" | |
# Step 1. Build Device and Simulator versions | |
xcodebuild -target "${PROJECT_NAME}" ONLY_ACTIVE_ARCH=NO -configuration ${CONFIGURATION} -sdk iphoneos BUILD_DIR="${BUILD_DIR}" BUILD_ROOT="${BUILD_ROOT}" clean build | |
xcodebuild -target "${PROJECT_NAME}" -configuration ${CONFIGURATION} -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO BUILD_DIR="${BUILD_DIR}" BUILD_ROOT="${BUILD_ROOT}" clean build |
# Run this in the project repo from the command-line | |
# http://stackoverflow.com/a/4593065/99923 | |
git log --shortstat --author "Xeoncross" --since "2 weeks ago" --until "1 week ago" | grep "files changed" | awk '{files+=$1; inserted+=$4; deleted+=$6} END {print "files changed", files, "lines inserted:", inserted, "lines deleted:", deleted}' |