[Apple] WWDC 2015 Keynote Summary

OS X, iOS by Craig

OS X

  • Yosemite -> 55% adoption rate (7% for windows 8.1)
  • El Capitan -> Experience, Performance
  • Experience
    • Spotlight, Built-in apps,
    • Shake mouse cursor, it goes magnified.
    • Gestures(swipe to delete, etc)  on Mail adopt iOS’s
    • Comes ‘Pin Site’ and music mute function on Safari
    • Spotlight now have New, Weather and even moving
    • Tab of new mail when it’s full screen
    • Split screen by full screen button(green one), click, hold and drag.
    • Easy access to SpaceBar
  • Performance
    • Metal for Mac: OpenGL natively runs on Metal
    • Metal is computed powered by OpenCL and OpenGL
    • Commercial that adopt Metal: 2K, Unity, Blizzard, Feral, Unreal Engine, The Foundry, Campo Santo, Autodesk, aspyr
  • Free update on Fall, 2015

iOS

  • Adoption rate: 83% (12% for Android)
  • iOS 9: Foundation, Intelligence, Apps, iPad
  • Siri 1B request per week, 5% miss, 40% faster
  • Siri is now Proactive Assistance
  • Swipe to left can search now
  • API for Search now opened
  • Deep linking to Apps from search result
  • Privacy: Anonymous, Not associated with Apple ID, Randomized identifier, Not linked to other Apple Services, Not shared to third party, …
  • ApplePay – UK in July
  • ApplePay app is Wallet
  • Notes has formatting now, can make checklist, can drawing inside notes. (응: Just like an Evernote)
  • Transit app could show routing bus, train and subway
  • News apps iOS9-NewApps

 

 

 

 

 

 

 

 

  • iPad
    • QuickType
    • Two-finger trackpad over keypad to moving cursor
    • Shortcut to App Switching like OS X
    • Multitasking
      • Slideover on right
      • Split-screen for touching divider on Slideover
      • Picture-in-picture
    • Developer APIs with Size Classes and Auto layout for iPhone and iPad
    • PIP on iPad Air, iPad Air 2, iPad mini 2, iPad mini 3
    • Split-screen on iPad Air 2
  • Extend Battery life with single switch called ‘Low Power Mode’
  • Need only 1.3 GB for upgrading to iOS 9
  • Dev (69:40)iOS9-NewFeatures

 

 

 

 

 

 

 

    • OCR accessory setup
    • Search extensibility
    • Audio unit extension
    • VPN plug-in extension
    • Swift 2
    • Map customization
    • Direct document
    • UI testing in Xcode
    • Notification actions
    • Third party notifications
    • Sensor profile
    • App thinning
    • Motorized windows profile
    • Flyover and Walkthrough  <=== ???
    • New Health data types
    • Code coverage
    • Gaming APIs
    • Automated shades profiles
    • Layout guide
    • Shortcut Bar
    • Object-oriented Contacts
    • New multitasking APIs
    • New HomeKit profiles
    • iCloud open in place
    • Home security profile
    • Storyboard references
    • App transport security API
    • Stack view
    • Wireless CarPlay
    • HomeKit iCloud remote access
  • New framework – GameplayKit, Model I/O, ReplayKitiOS9-NewFrameworks

 

 

 

 

 

 

 

  • HealthKit
  • HomeKit – Security over iCloud
  • CarPlay without plug-ins
  • Swift 2 – Whole Module Optimizations (73:12)Swift2

 

 

 

 

 

 

 

    • Recursive nested functions
    • Availability checking
    • Multi-payload enums
    • Swift 1.2 to 2.0 Migrator
    • Shorter compile time
    • New playgrounds
    • @testable
    • Improved option sets
    • do { }
    • Parallelized WMO
    • Markdown in comments
    • Protocol extensions
    • Faster debug mode
    • Faster runtime
    • defer
    • Objective-C generics
    • Nullability in Objective-C
    • Error handling model
    • Mutability warnings
    • Synthesised “headers” in Xcode
    • C function pointer APIs
    • Pattern matching in “if”
    • guard
    • SIMD support
  • Swift 2 is Open Source by the end of 2015
  • Public beta on July, 2015
  • Free upgrade in Fall, 2015
  • Upgrade to iOS for all of iOS 8 devices

App Store

  • 100 Billion App downloads
  • 30B dollars to Developers
  • 98% of all Fortune 500 companies have an iOS app
  • In 2015 the App Store has 1,500,000 apps
  • There are 195,000 educational apps in the App Store (81:45)
  • The average person has 119 apps (83:30)
  • 850 apps downloaded every second

watchOS by Kevin Lynch

  • Enhancement
    • Photo face
    • Time-Lapse face
    • Complications – customized watch face with watchOS SDKs
    • Time Travel
    • Night-stand for clock
    • Communicating
      • Friends, Digital Touch
      • Reply to Email
      • FaceTime Audio
      • Health & Fitness
    • Transit
  • WatchKit – Native App Support: You could app logic directly on Apple Watch now (94:58)
  • Apple Watch connect directly to Wi-Fi with WatchConnectivity.framework
  • New Features (95:35)watchOS-NewAPIs
    • Accelerometer => Golf Swing
    • Watch Connectivity
    • Security
    • HomeKit
    • Core Foundation
    • Audio
    • Video
    • NSURLSession
    • Core Motion
    • MapKit
    • ImageIO
    • WatchKit
    • Core Graphics
    • ClockKit
    • HealthKit
    • EventKit
    • CoreData
    • Digital Crown
    • Contacts
    • Microphone
    • Taptic Engine
    • Core Location
    • Animation & Layout
    • PassKit
  • Developer Beta available today
  • Free upgrade on Fall, 2015

One more thing…

  • Apple Music by Eddy Cue
  • New music ecosystem
  • Revolutionary music service
  • 24/7 global radio => b1: Beats One by Apple
  • Connecting fans with artists
  • Lauching +100 countries on 30th June, 2015
  • Android app coming in Fall, 2015
  • Apple Music for $9.99 USD per month with 1st 3 month free
  • Apple Music for $14.99 USD for 6 family members

[iOS] How to build FreeRDP for iOS properly

Install HomeBrew for OS X
Goto http://brew.sh
Run followings on Terminal.app.
 
ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
 
Run brew command for install CMake and PkgConfig.
 
brew install cmake pkg-config
 
 
Download FreeRDP-master from github
Download FreeRDP-master.zip from github.
Read carefully README.iOS file.
 
Enter scripts directory and edit  OpenSSL-iFreeRDP.diff file like followings:
Add “ -miphoneos-version-min=4.3” on armv7 and armv7s lines.
before
+”darwin-armv7s-cc”,”/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang:-arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/__IOSSDK__ -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-arch armv4 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib”,
+”darwin-armv7-cc”,”/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang:-arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/__IOSSDK__ -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-arch armv4 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib”,
After
+”darwin-armv7s-cc”,”/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang:-arch armv7s -miphoneos-version-min=4.3 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/__IOSSDK__ -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-arch armv4 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib”,
+”darwin-armv7-cc”,”/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang:-arch armv7 -miphoneos-version-min=4.3 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/__IOSSDK__ -O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-arch armv4 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib”,
 
Run followings on Terminal.app.
cd scripts
./OpenSSL-DownloadAndBuild.command
 
Move openssl directory into external directory if not exist.
cd scripts
mv openssl ../external
 
Run followings on Terminal.app.
cmake -DCMAKE_TOOLCHAIN_FILE=cmake/iOSToolchain.cmake -GXcode -DPKG_CONFIG_EXECUTABLE=/usr/local/bin/pkg-config
 
 
Make a script for changing absolute paths to relative paths
Run vi on Terminal.app or TextEdit.app and add followings in `changePathToRelative.command`.
#!/bin/sh
#
# Written by Henry Kim on May 28, 2015, 11:10
#
PROJECT=”FreeRDP.xcodeproj/project.pbxproj”
TARGET=$(PWD)

if [ -f $PROJECT ]; then
cp $PROJECT $PROJECT.bak
cat $PROJECT.bak | sed -e ‘s|’$TARGET’|\$\(SRCROOT\)|g’ > $PROJECT.new

        mv -f $PROJECT.new $PROJECT
        echo “Successfully replaced into relative pathes on iOS project file”

else
echo “No iOS project file in this directory”

fi
 
Save above script file and change a permission and run.
$ chmod +x changePathToRelative.command
$ ./changePathToRelative.command
Successfully replaced into relative pathes on iOS project file
 
Now you can open FreeRDP.xcodeproj anywhere !!!
 

How to manage your Synology NAS well enough?

It’s just work!