750 Results for ‘accessibility’

Accessibility in SwiftUI WWDC 2019 Session 238
Accessibility and our Accessibility technologies on our platforms. Then talk a little bit about how SwiftUI make your makes your apps more accessible by default. John is going to come in and take us through the Accessibility API that we are introducing today. And, also take us through the Accessibility
Accessibility on OS X WWDC 2014 Session 207
accessibility information for the item under the mouse. So here, there’s three sections that are showing up. The very top is the accessibility Hierarchy. So if this is analogous to… it’s kind of like the view Hierarchy. If your accessibility elements aren’t in the accessibility Hierarchy, they
Accessibility in iOS WWDC 2013 Session 202
Access. [ Pause ] So now, I’m going to return to the Accessibility Settings menu, to General Accessibility. I’m going to scroll down, remove VoiceOver from my shortcut and instead, add Guided Access. I’m going to go ahead and set a passcode for Guided Access, nobody look. Great. So
iOS Accessibility WWDC 2015 Session 201
Accessibility on iOS, my name is Ian Fisch and I’m an engineer on the Accessibility team. So accessibility is really about making sure all users, regardless of abilities, have full access to all of our products and the great features you put in your apps, and that means we
Apple Watch Accessibility WWDC 2015 Session 204
accessible, it needs to have accessible applications. This is where you come in. This is where you really get to be the champions of accessibility and the champions of our VoiceOver users by making your applications accessible. And the way you make your applications accessible is through our WatchKit Accessibility
Accessibility on iPhone OS WWDC 2010 Session 122
Accessibility on iPhone OS. We’re going to learn how to make an app useable by everyone. My name is Chris Fleizach. I’m on the iPhone Accessibility and VoiceOver team. So when I talk about accessibility, what do I mean? I think about accessibility as using technology to overcome
Deliver an Exceptional Accessibility Experience WWDC 2018 Session 230
accessibility element, which will be a custom UI accessibility element that supports those gestures. Let’s implement carousel accessibility element. This will be a subclass of UI accessibility element. It also needs to know about the current dog object it’s representing, so let’s create a property for that
What’s New in Accessibility WWDC 2016 Session 202
accessibilities APIs before, maybe it’s time for a quick refresher before we jump onto some new API. So, how do we use the accessibility APIs to make sure our apps are accessible? Well, the first step is to audit our app for accessibility. Traditionally, the best way to do
Preparing and Presenting Media for Accessibility WWDC 2013 Session 608
accessibility, our software assumes that all closed-caption media has the characteristics “transcribes spoken dialog for accessibility” and “describes music and sound for accessibility“. So this declaration is here for illustrative purposes only. It’s closed-captions, it’s intended for accessibility, so we assume they have those characteristics. Declare
Media and Gaming Accessibility WWDC 2017 Session 217
accessible. You can connect with accessibility users and developers at our get-together tonight. Designing your game for accessibility really means more people can enjoy it. When you’re designing for accessibility think about how accessibility is really a spectrum. So, you want to create these different great experiences so
Auditing Your Apps for Accessibility WWDC 2016 Session 407
accessibility issues in your apps. So, some of you may be new to accessibility. So let me quickly go over what it means to make your app accessible and some of the issues that you may encounter as you develop your apps. So, accessibility is about making sure that everyone
A Practical Guide to the App Sandbox WWDC 2013 Session 710
access to as an attacker are the files that the user currently has open in TextEdit. Nothing else, no other access to the user’s disk. No other access to the user’s hardware. No access to user’s E-mail, no access to user’s browsing history, you’re
Accessibility in OS X WWDC 2013 Session 200
accessibility features in OS X Mavericks. Here at Apple, we care very deeply about accessibility and we work really hard to deliver a lot of great accessibility features. We work on all sorts of products, like VoiceOver and closed captioning, Zoom and Guided Access. And if I were to summarize
Accessibility on iOS WWDC 2014 Session 210
accessible, both by adding visual accommodations, and by implementing Semantic Accessibility. So first, what is accessibility? Accessibility is all about making things usable for everyone. On iOS, we look at four broad areas of user needs. We want users with physical and motor challenges, users with learning needs, users with
Advances in macOS Security WWDC 2019 Session 701
access because the files are typically only accessed by specialized apps such as disk management or backup utilities. But first, let’s talk about those files and folders that require user consent to access. Now, macOS Mojave introduced user consent requirements to access your contacts, calendars, reminders, or your photos
Your Apps and the Future of macOS Security WWDC 2018 Session 702
access their respective data. With these prompts, well-intentioned software can honor the user’s preferences with regards to how they access their personal data. Well now, in macOS Mojave, access to this data requires user consent even for apps that access the Backing/Store directly via the file system. Now
Platforms State of the Union WWDC 2019 Session 103
accessibility and it begins with accessibility being built in. People should be able to use our products out of the box, and that includes people of all abilities. Accessibility should be comprehensive. People should have access to the whole platform, every corner of the OS, every corner of your apps
Building a Document-based App WWDC 2014 Session 234
access to it I can edit and access it in the text edit container. Let’s go ahead and x out of this. As you can see, now that I’ve granted my app access to this document it has now updated in the NSMetadataQuery and I can list it
Accessibility for iOS WWDC 2012 Session 210
Access. Guided Access mainly locks you into a single App and controls access to the hardware features. Now, why is this important and why is it important for accessibility? We designed Guided Access to really address the needs of users who are using the iPad with autism and what is
What’s New in Accessibility WWDC 2017 Session 215
Accessibility Team and I’m here today to talk to you about what’s new in accessibility this year. So, for those of you that don’t know exactly what I mean when I say accessibility well first of all, I’m happy that you’re here and second, when
Improving the Accessibility and Usability of Complex Web Applications WWDC 2014 Session 516
accessible web applications, some of them with only a single switch using Switch Control software. This lady can control an entire iOS device as well as your accessible web applications using only the single switch that’s mounted by her forehead. It’s absolutely incredible. And accessibility is a broad
Optimizing On-Demand Resources WWDC 2016 Session 221
access to your on-demand resources. It’s created with a tag or a set of tags, and it has some other options for managing it. You use it to begin and end accessing to those resources. Begin accessing is what triggers a download if necessary, and end accessing is
UI Testing in Xcode WWDC 2015 Session 406
Accessibility and UI testing. I mentioned earlier that accessibility data is what makes UI testing possible. So given that, it is not hard to see how the quality of the accessibility data really impacts your testing. In fact, the better the accessibility data for your application, the easier it is
Usable by Everybody: Design Principles for Accessibility on Mac OS X WWDC 2010 Session 100
Accessibility Mailing List. It’s a very well trafficked and friendly mailing list for any of your questions. There’s also great documentation in which you can get to via the WWDC website. And Apple also has a really wonderful accessibility web page which talks about accessibility and accessible interfaces
Managing Documents In Your iOS Apps WWDC 2018 Session 216
accessing your documents. And, always make sure that if they do access them, access these documents, that is done with user consent. So, since access to documents in other containers is restricted, how can your app gain access to these documents that your customer has picked? What we have to
Disability and Innovation: The Universal Benefits of Accessible Design WWDC 2016 Session 104
accessibility people will be there, including developers who’ve gone through this process of making sure their apps are accessible. So these are resources that are available to you and will help you design apps that are accessible. Accessibility benefits your consumers, but it also benefits you. Accessibility has many
Keychain and Authentication with Touch ID WWDC 2014 Session 711
accessibility you require for that item. So, let’s see what options you have. The accessibility is pretty easy. You already know accessibility, because to set accessibility you will use the same accessibility classes and constants which you are now using with accessible attribute. And the behavior will be the
Engineering Privacy for Your Users WWDC 2016 Session 709
access and which don’t. Now if your app got access to the Media Library in iOS 9.3, you will continue to have access in iOS X. So how do you know if you already have access? Well with most of the protected classes of data we have what’s
Protecting your Users’ Privacy WWDC 2013 Session 714
access. As I said before, if the user wants to grant you access to the particular data category, then you’re going to receive a populated object back. If the user decides to not allow access to a particular data category, then you’re either going to get a nil
JavaScript for Automation WWDC 2014 Session 306
access an application is by name. Here we’re accessing the Safari application. And beyond name we can also access applications by Bundle ID, by Path, by Process ID, and we can get the application that’s running the script we’re currently in by getting the current application. So
Better Apps through Better Privacy WWDC 2018 Session 718
access to the entire library, the user has control by picking what they share, so we don’t need to show a permission prompt and ask them to make a decision about future access. This is the default method for accessing contacts, camera, and photos data. There are going to
Protecting Secrets with the Keychain WWDC 2013 Session 709
access to an item, you don’t see it, you can’t do anything with it, end of story. There’s just no discussion. On OS X if you’re in an application that doesn’t have access to an item because it’s not on the access control list
User Privacy in iOS and OS X WWDC 2014 Session 715
access occurs. We think that Just in Time access is a key differentiating feature of our platform. If the user decides to allow access, then you’ll get data back. And, if they decide not to allow access, you won’t get anything. Transparency is the second principle. Transparency is
Building Efficient OS X Apps WWDC 2013 Session 704
access. What this means is that rather than telling a system how to access data, you tell it what data it should access. This allows it to automatically encapsulate best practices and do things in the most performant way possible. Now, I want to talk through two examples of how
Finding Bugs Using Xcode Runtime Tools WWDC 2017 Session 406
access race. And notice that it doesn’t matter which stored properties are these functions, these methods accessing or changing. Even if teleport only changes X, Y and Z while the other method only changes time, it’s still a Swift access race. The rules simply state that you need
Creating Extensions for Safari, Part 1 WWDC 2010 Session 505
access any cross domain things that you normally wouldn’t be able to do from webpages, from your Global Page. So, you can access Twitter.com or whatever you put in here. And I don’t need access to secure pages, so this prevents access and inadvertent access to secure pages
Design For Everyone WWDC 2017 Session 806
accessible. But the word accessible wasn’t invented to describe accommodating those with disabilities. It’s about access, whoever we are. Easily reached or obtained. Easily used. Easily understood. Everyone. Whether you have a permanent or situational impairment, young or old, new or pro to technology. Whatever language you sign
The Keys to a Better Text Input Experience WWDC 2017 Session 242
access, which means access to some lower level parts of the system. Let’s talk a little bit about what full access really means. So, first of all, there’s actually quite a bit of value in not asking for full access. This is why we built the full access
Securing Application Data WWDC 2010 Session 209
accessibility. You can give it one of these values, and that will set the accessibility of your Keychain item. Just like the file system, the Keychain needs update if you want to change the accessibility class of a given Keychain item. By default, when we move the Keychain back to
Keynote WWDC 2014 Session 101
access their own data but can’t get at your personal information or mess with other apps without your permission. Well, the handle Extensibility in an iOS way, we wanted to build on the same sandboxing model. So now extensions live inside an application’s own sandbox with access to
Mastering Modern Media Playback WWDC 2014 Session 503
access a property synchronously by accessing your getter before loading the property, you would be blocking your main thread leading to a spin and making your application unresponsive to your end-user. On OS X, however, you can dispatch this work to a background queue to access the getter and
Understanding Crashes and Crash Logs WWDC 2018 Session 414
access exception and the process will stop. We see here the address that we were accessing at the time of the crash. We can look at the stack trace, this is the function that performed the bad access of course. This is the objc release function, it’s part of
Platforms State of the Union WWDC 2014 Session 102
accessibility APIs. Accessibility is a topic we care about deeply, and along with the new look, we made it dramatically simpler to let your applications work with voiceover and our other accessibility technologies. We took, we took some lessons we learned on iOS and created a new API that requires
Incorporating the Camera and Photo Library in your App WWDC 2010 Session 421
access to full-sized images, not the little dinky images we give back, as well as access to the image metadata. Now for those of you eagle-eyed viewers in the audience, when you saw the iMovie demo on Monday in the keynote, you might have noticed that they were
Maximizing OpenCL Performance WWDC 2010 Session 418
accessing a contiguous region of memory, it’s properly aligned, and each one’s accessing it in order. So instead of the 16 threads having to do 16 different memory accesses the GPU coalesces that into one access of larger width. And so you get that back in one memory
Accessible Drag and Drop WWDC 2018 Session 241
accessibility. Of course, you want to expose the power of your Drag and Drop interactions to people using your app through an assistive technology like Voiceover. There are a few accessibility problems the accessibility Drag and Drop API’s were designed to solve. First, your accessibility element might not host
Creating an Accessible Reading Experience WWDC 2019 Session 248
accessible, you should first audit it with VoiceOver. A convenient way to do this is to add VoiceOver to your accessibility shortcut. You can do this by launching settings, tapping accessibility, scrolling down to accessibility shortcut and tapping VoiceOver. Now depending on your hardware, you can press the home button
Accessing Health Records with HealthKit WWDC 2018 Session 706
access or denied access to. And now to querying. Because HKClinicalRecord is an HKSample you can take advantage of all of the existing sample query infrastructure in HealthKit. Things like SampleQuery, AnchoredObjectQuery and ObserverQuery will all work and if your user has granted continuous access background delivery will also work
Accessibility Inspector WWDC 2019 Session 257
Accessibility Team. Today, I’m excited to talk about a tool called Accessibility Inspector. The Accessibility Inspector provides an easy way to find, diagnose, and fix accessibility issues within your app. In this presentation, we will be doing exactly that, using a sample app. Let’s jump right into it
What’s New in Swift WWDC 2017 Session 402
access to a particular grapheme in a string. We can have random access to a particular code unit, and you can still get at those in Swift strings. But what does that mean, it doesn’t mean anything in this example to access the fifth code unit. It’s certainly
Automating User Interface Testing with Instruments WWDC 2010 Session 306
accessibility based. Now, there’s one key thing with accessibility that’s going to make automating your application easier, and that’s up here. The Accessibility Label. You set this in Interface Builder, you put a name in for your controls that you’re building up, that is going to
Advanced Text Handling for iPhone OS WWDC 2010 Session 110
access to four of these font faces through UIKit. You only have access to the regular, the bold, the bold italic, and the italic. With Core Text, you’ll have access to all those font faces, and there are some that are extended, regular I’m sorry, light. So, all
What’s New in Network Extension and VPN WWDC 2015 Session 717
access network resources. They also don’t want all of their Internet traffic to be routed through the company’s VPN. And then you have enterprises that want to give their employees access, but they want to restrict the applications that can access their internal network. So this is where
Thread Sanitizer and Static Analysis WWDC 2016 Session 412
accesses memory, its counter is incremented. So, for example, here suppose thread one access two memory locations. Thread two accessed 22 memory locations. Thread three accesses 55 memory locations. Now, this timestamps are not comparable. Each thread uses those timestamps or counters to order the accesses to memory that it
Bringing People into AR WWDC 2019 Session 607
access. Here we will provide you with access to each and every element of the skeleton. And, we interface it through a very easy-to-use API. You can enable all those advanced use cases that we discussed earlier, which requires either using the skeleton data for analysis, or as
Crafting Custom Cocoa Views WWDC 2010 Session 141
accessible, if you make your views accessible, they can be driven not only by VoiceOver but by anything that you want to use the accessibility APIs with, any code that you want to write, AppleScript, your user interface becomes scriptable. So the basics in making a costume view accessible, something
Engineering Subscriptions WWDC 2018 Session 705
access to that next subscription window. And so the user who is on your website trying to access your content can now access that next subscription period all without the app having to launch with that new transaction. If you are using this technique though status polling it’s important
Platforms State of the Union WWDC 2017 Session 102
access pretty much all the new language features String, codable, all of them. You can access all the new APIs from the SDK. The only thing you don’t get is any Swift-related improvements to existing APIs that you may have been using before. That’s what gives you
Platforms State of the Union WWDC 2015 Session 102
access the Taptic Engine. You can do audio recording right from the Watch. And you can embed audio and video playback. You can make a phone call from your application, and you get access live access to the data from the health sensors and the Accelerometer. We are so excited
Platforms State of the Union WWDC 2016 Session 102
access to the heart rate and accelerometer sensors so that they now provide continuous values for the entire duration of the workout as well. [ Applause ] In addition to these sensor enhancements, we’ve also got a whole bunch of great, new hardware access APIs. Crown events give you raw access
What’s New in Core Location WWDC 2015 Session 714
access the Swift when in use authorization. All right. Brief reappearance of monitoring API just for the purposes of this extra row we have. Little known fact is you can access monitor API region monitoring in both cases. You can access it if you have always authorization but also in
Introducing the Contacts Framework for iOS and OS X WWDC 2015 Session 223
access off to a background queue using GCD or NS operation, we provide a helper method here, an async method called request access for entity type completion handler. Now the user may deny access, and your app should be able to handle this gracefully. And if the user allows access
Cocoa Tips and Tricks WWDC 2010 Session 107
Accessibility throw an exception or two when an Accessibility client has happened, or an Accessibility client has experienced an error. But in general, it doesn’t happen that much. So reporting exceptions. One thing that a lot of apps do, and it’s a good thing for you to do
Privacy and Your App WWDC 2015 Session 703
accessible. Lastly so next, protected until first authentication, this is your default class. Now, it’s not accessible on boot, but as soon as a user enters their passcode, the data is accessible, and then it’s still accessible when the device is locked. Next is protected until open. This
LLDB: Beyond “po” WWDC 2019 Session 429
access as var. The summary uses var.name to access the Trips name and var.destinations to access its destinations. But there’s a problem with the summary. It only works for Trips that contain exactly three destinations. Because formatters can’t access computed variables like the count of an array, we
Graphics and Media State of the Union WWDC 2010 Session 400
access to time-based media and professional access to time-based media with dropping ease of use. To set the stage, I would like to talk a little bit about what we had in iOS 3. In iOS 3, we gave you UIKit API to access the camera, record data
Security and Your Apps WWDC 2015 Session 706
access items in the background, for example, if you are a VoIP app. Always accessible is going to be deprecated in iOS 9. So you need to start moving items out of that into a higher level. We have WatchKit 2, your Watch apps now have access to the SecItem
What’s New in HomeKit WWDC 2016 Session 710
access. So it is possible to grant or deny remote access capabilities to your accessories at home using this functionality. It’s the same set of functionality is now also supported by the iPad. Not only that, if the user has multiple of these remote access capability devices in their
Getting the Most Out of HealthKit WWDC 2016 Session 209
access to some or even many HealthKit data types, so that all raises a really important question. When should I be requesting access to some or all of these types? Here are our recommendations on that front. First, we recommend that you request access to sensible groupings of types that
Introducing WatchKit for watchOS 2 WWDC 2015 Session 105
access to the motion sensors in the iOS devices. It also exists on watchOS and gives you access to the accelerometer. As on iOS, on watchOS Core Motion can give you live data while the application is running, but new and cool and specific to Apple Watch is it also
Keynote WWDC 2016 Session 101
access to our favorite apps quickly. We want to be able to access them anywhere. So by using the side button, we can get to them easily. Now, another key design goal we had was to make the watch feel more familiar. And so we’ve done with the watch
Building Apps with Dynamic Type WWDC 2017 Session 245
accessing the preferredConstantSizeCategory property on either your view’s traitCollection or on the UIApplication object. The default text size will return large and the standard sizes run from extra small to extra, extra, extra large. The Accessibility sizes are prefixed with Accessibility to avoid adding more extras. Now, in iOS
Using Collections Effectively WWDC 2018 Session 229
access any index in the collection in constant time. And of course, random access collections remain collections, and so you can still iterate forward and backward. Now as Swift developers, we have access to many useful collections that conform to these protocols, collections such as array, set, and dictionary. But
Creating Extensions for Safari, Part 2 WWDC 2010 Session 506
access setting which is the Include Secure Pages checkbox. If you have that checked, then you could access for example the https version of www.apple.com and the http version. If you don’t have it checked, you won’t have access to the https version. So the whitelist and blacklist
VoiceOver: App Testing Beyond The Visuals WWDC 2018 Session 226
access to your experience, and it’s built in to every Apple device. Now think about that last point. It’s kind of awesome. I mean that means that every person who uses your app has access to VoiceOver. But not every VoiceOver user has access to every app. And
Managing Mobile Devices WWDC 2010 Session 108
access in a single payload and this is a technique we call the carrot and stick. So the carrot and stick basically says if you want access to my email servers you must have a passcode of a certain standard on your device. If you want access to my VPN
Building Apps for Enterprise and Education WWDC 2014 Session 704
access for other apps. To access Document Providers, use the UIDocumentPickerViewController. This is the same one you use for iCloud Doc folder. Use Document Providers to get access to enterprise network resources. Don’t build in network protocols into your app. Instead, rely on the admin to configure network access
What’s New in HomeKit WWDC 2015 Session 210
access and new features and enhancements for Bluetooth Low Energy HomeKit accessories and new accessory categories. So let’s get started with remote access. With remote access, you’d be able to control your accessories even when you are away from your house. So let’s take an example of
Measuring and Optimizing HLS Performance WWDC 2018 Session 502
access log mean? Well, for that let’s look at how AV Player Item Access Log works. So the AV Player Item Access Log provides a history of your session. It is initially null, but as playback occurs, you’re going to receive an AV Player Item New Access Log
Introducing CloudKit WWDC 2014 Session 208
access. CloudKit supports both a concept of public and private databases. You can see public databases as a soup of data that’s all your user can access to. Private databases are meant to store the actual data just on behalf of a specific user. CloudKit support both structured and
Designing for Privacy WWDC 2019 Session 708
access CNCopy anymore. You can find out more details about this in the networking sessions listed below. Second, contacts access. Starting in iOS 13, apps that have been authorized by a user to access contacts will no longer have access to the notes field of a contact. The notes field
Platforms State of the Union WWDC 2018 Session 102
accessible from the very start. We provide great capabilities that make our platforms and all of your apps accessible and we want to encourage you to take, keep taking advantage of these because it’s really important to those users. Now, our users also entrust us with their most precious
Modern Swift API Design WWDC 2019 Session 415
access your data. So you can decide how your data is stored. And you can decide how your data is accessed. And all your users need to do with your property wrapper is use that custom attribute syntax to tie into your system. So as we’ve been developing property
Keynote WWDC 2015 Session 101
access the microphone on the Watch. So yes, in watchOS 2, you can access the microphone right on the Watch and bring that audio right into your app. [Applause] We also heard you want to play audio out of the speaker. You can do that. WatchOS 2 with native apps
HomeKit Deep Dive WWDC 2018 Session 231
access to Home shortcuts via Control Center. This is a great way to view and control your favorite HomeKit accessories, and it even provides access to your scenes. Now, this is very really convenient, but another great way to control HomeKit accessories is through Siri. You can tell Siri good
Apple Design Awards WWDC 2015 Session 103
Accessibility Team, and we’re really excited about the accessibility. It’s just amazing work that the Workflow team has done in the Workflow app. Apple is very deeply committed to accessibility. We have accessibility in all our products, including iOS, OS X, and now even the Watch. But you
Mastering Core Data WWDC 2010 Session 118
accessed. So any time you go to make a change to your data model, that’s going to change how that data is saved and accessed. So if you want access to your old data, you need to adapt that old data to a new structure, and you do that
Key Event Handling in Cocoa Applications WWDC 2010 Session 145
accessibility that it contains a group that all of its item should be considered part of a group. From there, the label views will report the appropriate things to accessibility and that’s great. But we still need to deal with this image. For an accessibility user, this image is
What’s New in Core Motion WWDC 2015 Session 705
access to walking, running, cycling, and stationary states. And that’s motion activity on the Apple Watch. Developers have wanted access to the sensors itself and we do provide access to the accelerometer through the familiar CMAccelerometer API. And that should be all there is to the accelerometer but it
What’s New in Location Technologies WWDC 2017 Session 713
accessing their location, and in that way your app is still considered in use. We introduced the WhenInUse authorization mode because we wanted to allow users a greater level of control over how apps access their private data. And users love this. They love knowing that apps can only access
Creating Immersive Apps with Core Motion WWDC 2017 Session 704
access to the raw sensor data, as well as the sensor fusion in the form of DeviceMotion. CMAltimeter provides access to relative altitude updates for the device. CMPedometer provides access to step counts as step-related information, as well as work-out, pause and resume events. MotionActivityManager provides access to
Automating App Store Connect WWDC 2018 Session 303
access. So here, if I were to choose something like finance, I’d get a key that has access to things like financial reports or sales reports but it won’t have access to things like beta testers or builds. I can add on levels of access or I can
Web Inspector and Modern JavaScript WWDC 2014 Session 512
Accessibility. A new in the Web Inspector, we have an Accessibility Details View. And this is pretty, pretty important. If you’re working on a major website, you want to be accessible to everyone. Apple cares a lot about accessibility. And we do a lot of work to make accessibility
Building AR Experiences with Reality Composer WWDC 2019 Session 609
access the named entities in our scene, we can do so as easily as calling for example seasons.sun, .earth, and .moon. And this will give us access to the entity that we named in Reality Composer. It’s just like working with any other object. So, putting it all together
Delivering Optimized Metal Apps and Games WWDC 2019 Session 606
access. So, the next best practice is for you to optimize your textures so the GPU can have faster access. It is very important that you configure your textures correctly. You will want to use private storage mode, so only the GPU has access to the texture data and it
Using HTML5 Offline Storage WWDC 2010 Session 512
accessible offline. There’s a fantastic new standard called the HTML5 application cache and it does that for us. And it makes the entire application accessible offline. All the HTML and JavaScript, CSS, all of the media that makes up the UI. And even though cache is in the name
What’s New in File Management and Quick Look WWDC 2019 Session 719
access to folders. This access is listed and can be revoked in the privacy pane under the Files and Folder section. Be aware that because users can revoke access at any time, you need to make sure that your code gracefully handles errors when attempting to open documents or when
iOS Configuration and APIs for Kiosk and Assessment Apps WWDC 2017 Session 716
Accessibility, way down at bottom, Guided Access. And if you turn this on, it is now possible to lock an iPad, any iPad, to any arbitrary application. A lot of parents and teachers do this before they turn over their iPad to their child. For instance, if your child was
Introducing Metal 2 WWDC 2017 Session 601
accesses. At this point the compiler and the hardware are going to cooperate to be able to implicitly take the entire range of [inaudible] shader that accesses that memory from the very first to the very last access and turn it into a critical section behind the scenes. You can
Extending your App with Safari App Extensions WWDC 2016 Session 214
access to. Like information about content scripts and style sheets, your extension’s website access is described in the extension’s Info.plist under the SFSafariWebsiteAccess/key and it’s a dictionary with two parts. The first part is the website access level. And this extension is specifying an access level of
Creating Info Graphics with Standard Web Technologies WWDC 2010 Session 509
accessibility. Accessibility with Standard Web Technologies is either free or very easy to do. Easy to add. And so let’s talk about, I just want to get you started on doing Info Graphics. We’re certainly not going to go into all the details here. But what we’re
WWDC 2017 Keynote WWDC 2017 Session 101
access to more controls. And this allows us to pack lots of capabilities really easily into the design. So you see, we have our wireless control so I could just tap on Airplane Mode. But if I 3D Touch on the platter, I get access to even more features. And
Metal for OpenGL Developers WWDC 2018 Session 604
access the object data. And on systems with dedicated video memory Metal may create a mirrored memory backing for efficient access by both processors. Because of this, explicit calls are necessary to ensure data is synchronized for GPU and CPU access. Here’s an example of creating a texture object
Direct Access to Video Encoding and Decoding WWDC 2014 Session 513
access to the parameter sets. This sort of packaging is superior for random access in a file. It allows you to jump anywhere and begin decoding at an I frame. So what do you have to do if you have an Elementary Stream coming in? Well, we’ve got you
Building, Archiving, and Submitting Your App WWDC 2012 Session 414
access the file system outside of your own sandbox directory. You can’t connect to or host any network servers. You can’t access devices such as the camera, microphone, USB devices, or printers. You can’t access the user’s personal data like contacts, calendars, and location services. What
Privacy and Your Apps WWDC 2017 Session 702
access to their entire Photos library. So, this will make them more comfortable using your app, because they will have better control over their data. We’re also, adding a Write only access to the Photos library. So, for example, if there’s a game that wants to save a
Keynote WWDC 2013 Session 100
access to the Store with all of its content. Books of course ultimately about reading so you can get in here and read, move easily between the pages. You have access to all the controls you’d expect. Your Bookmark, search, can adjust your type and font and type size
Building Great Document-based Apps in iOS 11 WWDC 2017 Session 229
access to all the documents inside the app container. You will be able to import and create new documents but only the default safe location which will be a [inaudible] for you. So how are you going to access to a file in any other place in the system? Well
Developing Wireless CarPlay Systems WWDC 2017 Session 717
access points or dual band APs to offer a variety of in-car services and applications. If these access points are operating in the same frequency band they need to use different channels to avoid interference. If the access points use the same SSID and password they need to offer
Debugging with Xcode 4 and LLDB WWDC 2010 Session 316
access things through Python. We made our APIs such that they’re very easy to hand off to some of the script interpreters. The Script Interpreter Tool such as SWIG that allows us to give you guys the full access to the LLDB API. So from Python, you can start
What’s New in Core Location WWDC 2019 Session 705
access to their location or they do not want your app to have access to their location in the background, then they can at this point respond that they’d like to keep your app in when in use authorization. But, if you and your users are on the same
What’s New in Core Location WWDC 2014 Session 706
access, the status bar will not be presented because the user has granted access for that app to use location at any time, which is what is needed in order to access location anytime from the background. For example, when your app is running the background due to Background App
Getting Started with Xcode WWDC 2019 Session 404
access to health data. So here I’ll search for HealthKit. And now I have access to all of the documentation for the entire framework. And this is also available offline. Luckily, I have all of the code that I need ready in a code snippet. And I’ll add
Using Store Kit for In-App Purchases WWDC 2013 Session 305
access to fly charts the latest fly charts, access to financial services, all the professional apps. Now if you summarize, iOS supports all four types of in-app purchases. OS X supports only consumables and non-consumables. And as you’ve probably guessed, today we’re excited to bring subscriptions
What’s New in Cocoa Touch WWDC 2017 Session 201
access with documents that you’re accessing using this class. And you can do that by using NSFileCoordinator, directly, or by sub-classing UIDocument, which builds in a lot of file coordination behavior for you. To hear more about this class and other document based topics, please check out this
Cocoa Interprocess Communication with XPC WWDC 2012 Session 241
access to the hard drive, and access to the network, and the one on the right has access only to the contacts. So this provides two really key benefits. The first is one of security, which I just mentioned. So the process on the right, if it’s compromised in
Advances in Networking, Part 2 WWDC 2019 Session 713
access, then you can access the Wi-Fi network information. If your app is the currently enabled VPN app on the device, you can access the information. And finally, if your app is in any hotspot configuration app, then it can also access the information but only for the networks
Apple Design Awards WWDC 2016 Session 103
accessible apps. We’re looking for localized apps. Because accessible and localized apps mean that those apps are available to an even wider audience than they were prior to being accessible and localized. And so there’s a lot of stuff that we look for in winning apps, and these
Customizing Your App’s Appearance for iOS 7 WWDC 2013 Session 214
accessibility element of the control itself. And that will cause the accessibility system to look for the subviews of the control and treat them as accessibility elements. UIButton implements a lot of accessibility for us automatically so all we need to provide is an Accessibility Label for our button, for
Moving to AV Kit and AV Foundation WWDC 2013 Session 606
accessibility by automatically. This may not work in the current seed but it will work fine in the next seed. We have a session coming up tomorrow on preparing and presenting media for accessibility that goes into more details about what it means for the playback pipeline to honor the
Metal 2 Optimization and Debugging WWDC 2017 Session 607
access, eliminate dynamic access to local arrays. This is basically saying that we have an array variable in our shader code that is storing the stack and where accessing it using some other index variable. This is a very common pattern when providing for the CPU, but GPUs are different
Adopting Multitasking on iPhone OS, Part 1 WWDC 2010 Session 105
access to some shared system data. So what do I mean by shared? What’s shared system data? Well we have a number of APIs that allow you to access Calendar, Address Book, music and media libraries. Those are all, all those APIs are basically wrapping access to some shared
Creating Extensions for iOS and OS X, Part 2 WWDC 2014 Session 217
access certain sensitive user data like photos or contacts. You’ll get a dialog saying: “Would you like to allow this app to have access to this piece of data?” And the user can either decline or allow. So when the user allows your app to have access to a
Interface Builder Core Concepts WWDC 2013 Session 405
access these items easily. The third part are the inspectors, and the inspectors are where you’re going to edit the properties of your views and controls. So, there’s a lot of step you can do in a canvas but this gives you the fine-grained access to all
Introducing MusicKit WWDC 2017 Session 502
access to Apple Music. This user consent is very similar to what ou would request before getting access to the user’s location or the user’s contact information. This is also something you need to request per application and per iOS device. So, if your apps, app works on
What’s New in Managing Apple Devices WWDC 2019 Session 303
access rights key here. Device enrollments use access rights to gate certain management capabilities for device enrollments, but these simply don’t apply to the user enrollments. So, they’re not specified. There’s more differences between the device enrollment protocol and the user enrollment protocol than I go to
Building Document Based Apps WWDC 2015 Session 234
accessed documents, but this suffers from many similar pitfalls as NSFileManager did earlier. Let’s take a quick look at this. So let’s say we store a list of NSURLs to our documents which are the recently accessed documents. But then the iCloud Drive daemon moves the document while
Building User Interfaces for iOS 7 WWDC 2013 Session 201
accessibility enhancements. So Dynamic Type includes the text styles, it includes user settable sizes including enhance to accessibility sizes and it contains these legibility enhancements. And so, by simply changing the way you specify your application, from specifying specific fonts, specific sizes, to using text styles and letting the system
Developer Tools State of the Union WWDC 2010 Session 300
access to the recent files, unsaved files, but I also have access to counter parts of this file, in this case, the header, but also, super classes, siblings, and include files. This kind of navigation right at your fingertips is so critical, but so powerful, that I can actually decide
What’s New with Screen Recording and Live Broadcast WWDC 2017 Session 606
access to its own audio, video, and microphone samples straight from ReplayKit. Giving you direct access to your application’s audio and video samples from ReplayKit will provide you with more flexibility and control over the content your users are already creating. Just like with recording, In-App Screen Capture
Advances in Core Image: Filters, Metal, Vision, and More WWDC 2017 Session 510
access all the information that you need that pertains to the output. And sampler lets you access all the information that pertains to the input image. And sample is a representation of a single-color sample from an input image. And along with these types we also have some convenience
I/O Kit Device Drivers for Mac OS X WWDC 2010 Session 203
access to system services. You can choose to use Objective-C, which you cannot do in the kernel. You have access to better logging facilities, such as the ASL log system. You can create your own log file and log your messages out to that. And you should not be
What’s New in iOS Design WWDC 2019 Session 808
accessibility on equal footing with these other goals. The new system fully supports bold text and increased contrast accessibility modes. And, lastly, they wanted the new design system to be simple, straightforward, and easy to implement. All right, now let’s get into the specifics. Color seems like the right
Introducing the Photos Frameworks WWDC 2014 Session 511
access to your Image or Video Editing tool right from within the built-in camera or photo applications. No need for the user to switch between applications. No need for the user to grant specific access rights to your application. It’s a very simple way for your tool to
What’s New in SpriteKit WWDC 2015 Session 604
access to all the great features in SpriteKit for nodes. You have access to our actions library so you can now run actions on the camera. You have access to our constraint system so you can apply constraints to the camera. You can make it align with game entities, you
iAd Integration and Best Practices WWDC 2013 Session 613
access to amazing API’s on the platform like Gyroscope and Cameran and so on, ads also have access to these API’s. The ads are seamlessly integrated with iOS’ software and as hardware, so there’s not this sandboxed limited experience inside an ad. It’s just an app
A Peek at 3D Touch WWDC 2016 Session 228
access, permission to access the user’s contacts, or we may not have found a match for this friend. So we’ll want to have a fall-back, in this case we’ll use the system’s message style to display as the icon. Now that we have the icon
App Distribution – From Ad-hoc to Enterprise WWDC 2019 Session 304
access to specific apps in the account. Make sure to limit third-party developer access to only those apps that they’re working on. But note, user access cannot be restricted to specific apps on the developer site. Users will have access to all of the bundle IDs on the
Writing Energy Efficient Apps WWDC 2017 Session 238
access the location of the user when the user starts playing a game. But if you see from the energy report that the pie chart tells you that your location utilization is very high, that could be a possible leak within your application where you’re continuously accessing location and
What’s New in iTunes Connect WWDC 2017 Session 302
access to different builds. Let’s take a look at how testers can interact with the builds that they have access to. Once they’ve been given access to a build I’m sorry in the test flight app we always show testers the latest build that’s available to
What’s New in tvOS 12 WWDC 2018 Session 208
accessibility to our custom rendered apps. It’s actually incredibly easy. By implementing focusItemContainers, focusItems in rect method, you are providing the focus engine with enough information to allow voiceover to assist your users in navigation. Remember to set accessibility labels and accessibility hints on your focusItems in order for
Designing for Apple Watch WWDC 2015 Session 802
accessing actions without losing your current scroll position. Now, Menus are also a great when your app has a global control that you want people to be able to access from any screen. So for example, in the activity app, there’s an action for changing your daily move goal
Metal Shader Debugging and Profiling WWDC 2018 Session 608
access to all variables interacting with the thread group memory. Now, let’s look at how accessing other threads can help you debug fragment shaders. So while your code executes millions of different pixels, seeing a single variable for a single pixel may not help you in all the cases
Working with HEIF and HEVC WWDC 2017 Session 511
accessing this content, playing it back and displaying it, capturing and creating HEIF and HEVC Movies, and then export and transcode. So, first let’s cover access. So, many of you are using PhotoKit and PhotoKit will deliver HEVC assets for playback. So, if you’re using requestPlayerItem or requestLivePhoto
Designing Award Winning Apps and Games WWDC 2019 Session 802
accessible. In the Accessibility section of the Settings app, people can turn on labels that allow these switches to be even more legible. So using standard components creates consistency, predictability and legibility across apps and devices. So Lauren, I know you have an awesome example of inclusion as well. Yeah
Performance on iOS and watchOS WWDC 2015 Session 230
access a piece of information or service some interaction in your app, it’s not going to keep them waiting, and that makes them really happy and keeps them coming back. If you are going to adopt Multitasking on iPad in iOS 9, not only does your app no longer
What’s New in ResearchKit WWDC 2016 Session 234
access. User account is a very important aspect of managing the user in your app. App access provide this necessary functionality. Two basic operations to support account in your app, account registration and account login. Account registration allows your user to log in to register with your app is password
Writing Great Accessibility Labels WWDC 2019 Session 254
accessibility label is, understanding the context for writing great labels, and best practices. So, let’s so what is an accessibility label? Well, the definition is pretty short. It’s a localized string that succinctly identifies the accessibility element. But let’s unpack that a bit. Identifies the accessibility element
What’s New in Metal, Part 1 WWDC 2015 Session 603
accesses the GPU. On the one side we have our high-level 2D and 3D scene graphs APIs that give you incredible functionality and convenience. And on the other side with Metal, we provided a direct access path to the GPU. So this gives you an amazing range to do
Advanced Metal Shader Optimization WWDC 2016 Session 606
accesses are statically bounded. The best way to do this is to pass your arguments by reference rather than pointer where possible. If you’re passing only a single item or a single struct, this is straightforward, you can just change your pointers to references and change your accesses accordingly
Working with Metal: Fundamentals WWDC 2014 Session 604
accessing so I can go and get the right index. Use that index to access the right vertex data. So, just you know, imagine, just imagine that this is that ID, okay. So in this code, what we see is here is going to use this ID and reference into
App Extension Best Practices WWDC 2015 Session 224
accessible Keychain for you so you don’t have to pass the Keychain access group identifier to these APIs. It’s just a tip to remember. And you can find out more about these APIs by watching the Security and Your Apps video. In summary, today Sophia told you all
What’s New in Xcode WWDC 2015 Session 104
accessing resource on the NS Bundle resource request. This moves all the content that I fetched into the cache so it is available for future access but it also marks it as available for purging in the even that the system runs out of space. With that, we have written
Advanced Testing and Continuous Integration WWDC 2016 Session 409
access to your applications data structures and API, but for your UI tests, you have to access your application using accessibility and send events and see your application as a user would from the outside. For your unit tests, all your tests are going to run in the same launch
Designing Accessories for iOS and OS X WWDC 2013 Session 700
access these things from apps, the actual protocols and the frameworks, like I said, that are available, again, across both OS platforms. And so let’s dive in to a couple of these. Let’s talk a little bit about what you can do with them and we won’t
Understanding Undefined Behavior WWDC 2017 Session 407
accesses across threads is too expensive. And the tradeoff that was made here was to rely on tools, specifically Thread Sanitizer, to catch violations involving accesses from multiple threads. In general, using Thread Sanitizer is very beneficial for your SWF code because data races and access races are undefined behavior
Metal for Game Developers WWDC 2018 Session 607
accessible buffer, you can modify its contents at any time, like change the shader type, or the camera matrix, or anything else that you might need to change. And of course, by moving your rendering to the GPU, you remove expensive CPU and GPU synchronization points that are normally required
Intermediate Swift WWDC 2014 Session 403
accessed and only when it’s accessed and only that one time. Now just as we have initialization in Swift, we also have [ Applause ] Just as we have initialization in Swift we have deinitialization. Deinitialization is responsible for tearing down the object. Now as Joe has already told you, memory
Advanced Text Layouts and Effects with Text Kit WWDC 2013 Session 220
access the glyph information using this method, glyphAtIndex, simply enough. But notice that the index passed through this method is a glyph index. It’s not the character index you use to access the contents of NSTextStorage. So glyph index character index, where are they? They are usually the same
Optimizing Swift Performance WWDC 2015 Session 409
access control. We have been talking a lot about the class Pet, but what about Dog? Remember that Dog is a subclass of Pet that has internal access instead of public access. If we call noise on an instance of class Dog, without more information, the compiler must insert indirection
What’s New in Safari and WebKit WWDC 2018 Session 234
Access API. With the Storage Access API, every time a domain with cross-site tracking would like to access cookie in a third-party context, you’ll need to request storage access. If the user has not granted access previously, a prompt appears, asking the user whether to permit cookie
Designing Accessories for iOS and OS X WWDC 2014 Session 701
access to all of our specifications that define everything I’ve talked about here, explain to you how to implement all of the security, the pairing, the protocol and the profiles on your accessory. You also get access to a great development and certification tool. It’s an OS X
What’s New in Core Data WWDC 2014 Session 225
accessing the Managed Object Context, and that included things like accessing properties on NSManagedObjects created by that managed object context, the developer had to lock the context. If they wanted to message PersistentStoreCoordinator, they needed to manually lock PersistentStoreCoordinator before they sent whatever message they wanted. And, you know, because
Auditing Web Content with Web Inspector WWDC 2019 Session 514
accessibility. Let’s dig into the results of running the accessibility audit on WebKit.org. The overall score shows that WebKit does fairly well. But there’s room for improvement. In the failure cases shown in the results, the DOM node where the failure was detected is shown as an interactive
SwiftUI Essentials WWDC 2019 Session 216
accessibility label modifier. Now in addition to VoiceOver, this information also admits use for other features, like the new Voice Control on iOS and macOS so that we can say, “Tap Include Salt,” and our UI behaves as we expect. And making sure your app is accessible means it will
What’s New in Cocoa Touch WWDC 2015 Session 107
accessibility you now have the ability to use more speech voices like Alex as well as high-quality voices in AV speech synthesis. I encourage you to come out to iOS Accessibility to find out more about how to make your app accessible. You also saw that we’re introducing
Designing for tvOS WWDC 2016 Session 802
accessibility. And Apple TV is packed full of accessibility features that provide the best user experience for everyone. Apps implementing custom fonts should match the accessibility behavior of system fonts and respect settings like bold type. Accessibility options also can change contrast, reduce motion, and more. So, if you have
Introducing iPad Apps for Mac WWDC 2019 Session 205
access to the Now Playing Info Center and Remote Command Center. But there’s no library access or playback support. And if you were using the AVFoundation framework to capture still images or video on iOS devices, you can use the UIImagePickerController in UIKit to capture them from the built
Developing CarPlay Systems, Part 2 WWDC 2016 Session 723
access to both the microphone and the speakers. So media playback is interrupted and the channels are switched. And audio switched over to the channel, which provides access to both the microphone and the speakers. In addition to switching to audio channel, the screen switches to CarPlay to show the
Developing Applications that work with iPhone OS Accessories WWDC 2010 Session 201
accessibility. We just had some discussion of accessibility in this session right before this one. Accessories can now leverage VoiceOver technology to communicate with the phone and completely control the iPhone OS device. They can send commands such as moving to a particular X,Y coordinates or moving to the
Advanced Performance Analysis with Instruments WWDC 2010 Session 309
access the deferred mode? You access it from the file menu in Instruments, and you go to Record Options and select Deferred Display. After you do that, if you hit Start Recording, Instruments will immediately disable the UI and gray it out like you see here, and you start recording
Integrating Swift with Objective-C WWDC 2014 Session 406
access the layer. And then we’ll set it’s borderWidth to be five. And then, of course, we have to initialize that to be a borderColor as well. Now in this case, because we’re accessing the layer that’s a core graphics API we get the CGColor from
Introducing HealthKit WWDC 2014 Session 203
access. In HealthKit, we let you see whether you’ve been granted sharing or write access to a particular type, but you can’t see if you’ve been granted read access. This is because for some kinds of information knowing that the user blocked your app can be just
Introducing HEIF and HEVC WWDC 2017 Session 503
access: how and where to access HEIF and HEVC movie content. And finally transfer: so what strategies do you need to consider when you want to move HEIF or HEVC content off a capture or supported device? So first I’d like to start with access. So we’ve discussed
Advances in Objective-C WWDC 2013 Session 404
access to the API, get access to the implementation without having the go through and parse the headers. Now in support of Modules, we introduced one little bit of syntax. It’s the @import declaration. What @import does is it pulls in the API for a particular Module which corresponds
Gatekeeper and Developer ID WWDC 2012 Session 702
access control list that says who has access to that item And the default value is the application that made it. The keychain doesn’t care who you are. The keychain care what program that is. All that it cares is that the program that comes along tomorrow and says
View Based NSTableView Basic to Advanced WWDC 2011 Session 120
accessing those outlets. So it accesses the textField, sets stringValue, and accesses the image, sets image value, and then returns the result. So that’s the most basic implementation of a view-based table view. It’s really easy to do. Now how do you respond to an action? So
New Ways to Work with Workouts WWDC 2018 Session 707
access as well as revoke whenever they want. And as developers, all of you are the last link of that puzzle, and we want to make sure we are giving you the tools to make sure that your users’ privacy is respected. And we think about this in a few
What’s New in Photos APIs WWDC 2017 Session 505
access. Well, we thought we could do better. So, in iOS 11, we have revamped the privacy and security fundamentals of UIImagePickerController. We started off with three goals. Put the user in charge of their content. Create a great user experience in your apps. And third, give a higher level
Font Management and Text Scaling WWDC 2019 Session 227
access to some new system fonts for your apps. I will then continue by showing you what it takes to build an app that can make fonts available systemwide as well as how to make an app access those very same fonts. Then, we’ll talk about some new mechanisms
Connecting CareKit to the Cloud WWDC 2017 Session 239
access the care plan store. So by doing [inaudible] cloud bridge is setting up a local variable, the cloud bridge, to the cloud bridge that we received from callback, we have access to the cloud bridge from anywhere in our app. And that’s what we can do cloudbridge.careplanstore. It
Modern Rendering with Metal WWDC 2019 Session 601
access to our shader, our scene, then it is very easy to access anything else we need. And command R here contains the reference to the indirect command buffer that we want to encode into. We first did the model from the scene based on thread ID. Notice that all
Game Center Techniques, Part 1 WWDC 2010 Session 408
access and show a leaderboard in game, how you can access the data from a leaderboard if you want to use custom UI, and achievements. So I’ll also show you how you can report achievements from your game; how you can show achievements in your game using the standard
What’s New in Cocoa for macOS WWDC 2018 Session 209
accessing the instance variable directly, please go ahead and call the getter, or the property accessed, or whatever there might be. And, if you have some reason to access the instance variable, and you don’t see a way around it, you might want to let us know. Now, speaking
Game Technologies for Apple Watch WWDC 2016 Session 612
access a list of players who you can play with. So I’ll show you some sample code for this. This shows you how to access the recent players list. And a good place to and let’s suppose you have a class. There’s a player picker that will
Harnessing OpenCL in Your Application WWDC 2010 Session 416
accesses a piece of memory and another one right next to it accesses the piece of memory right next to it and so on down the line, the compiler might be smart enough to spot; hey, you just loaded a continuous range of data, and turn that into one big
What’s New in LLVM WWDC 2016 Session 405
accesses now, it will access this very soon again. Spatial locality simply means data your program accesses now, it will also access neighboring data. So when you access an array field, it will also access the field next to it. When it accesses a field in your data structure, it
Introducing ARKit: Augmented Reality for iOS WWDC 2017 Session 602
accessing the session I’m accessing the session and calling Run with a World Tracking session configuration. So this will run World Tracking. And automatically the view will handle updating my virtual camera for me. So let’s go ahead and give that a try. Maybe I’m going to
Introducing PDFKit on iOS WWDC 2017 Session 241
accessibility system, which is available on both Mac OS and iOS. That means just by adopting PDFView, you get all of these accessibility improvements for free on both platforms. All right. So, there’s another cool feature new to 2017, which is PDFPages Method Thumbnail of size for a display
Seamless Linking to Your App WWDC 2015 Session 509
access some of the same content or functionality as in your app? Great. This talk is for you. So we are going to talk about how we can tear down the walls between your app and your website and create a tight association between them. As an example of what
Core NFC Enhancements WWDC 2019 Session 715
access. So next, you’ll need to decide what your application requires, NDEF or native access, and use the appropriate reader session. You’ll need to implement the new protocol delegate callbacks to receive the new tag objects. Once you have the tag object, you use the reader session to
What’s New with CloudKit WWDC 2016 Session 226
access to it. So, what is CloudKit? CloudKit is a technology that gives you the ability to have your application data and your user data available wherever you need it. CloudKit is a framework which gives you access to a database stored on iCloud. We use CloudKit extensively inside of
Core Location Best Practices WWDC 2016 Session 716
access the user’s location. You’ve probably experienced this as a user, if you’ve ever seen a prompt like this one. Here, Core Location is asking the user if they’d like to authorize the camera app to access their location. We offer two different versions of authorization
iMessage Apps and Stickers, Part 2 WWDC 2016 Session 224
access to the keyboard. You also don’t have access to horizontal scrolling, swipe gesture recognizes. This is because in the compact mode the user can swipe left and right to switch between iMessage apps quickly. However, you do have access to the input field, so whenever insert message is
Keynote WWDC 2019 Session 101
access sensor data and complete sessions like physical therapy with Kya or brushing your teeth with Colgate or meditating with Calm. And watchOS 6 now enables the streaming audio API so you can go with just your Watch and you can stream great content like Podcasts, music, live sports games
Continuous Integration with Xcode 5 WWDC 2013 Session 412
access that repository to get that source code? And secondly, the project or the workspace inside that SCM location that we’re going to access where that project lives? Secondly, a bot defines when we’re going to build it. So we have some great scheduling options in the Xcode
What’s New in Foundation Networking WWDC 2013 Session 705
access to a stream API in CFStream which allows you to access files streams or sockets streams. CFNetServices which allows you to publish and subscribe to or browse for Bonjour services. And CFHTTPReadStream which gives you a way of issuing an HTTP request and receiving the body of the response
Designing Apps with Interface Builder WWDC 2010 Session 305
accessibility so it uses the built-in accessibility that’s already there for voiceover support on the phone and the iPad and last year with Interface Builder we added support for setting the traits in accessibility directly in Interface Builder and I’ll be showing that in the Demo as
What’s New in Foundation for iOS 4 WWDC 2010 Session 102
access to certain functionality. So it’s very important that you understand blocks and understand how to use them properly in order to access all the available functionality in the system. Well, for those of you who may not have seen all of the public materials that we’ve had
Making Apps More Accessible With Custom Actions WWDC 2019 Session 250
Accessibility Team, and I’m super excited to be talking to you about Accessibility Custom Actions and how they can improve the experience for people using assistive technologies with your apps. Let’s get started. Custom actions are really great for two things. The first is reducing clutter in your
What’s New in OpenGL for OS X WWDC 2013 Session 507
access that from our shader similar to how the CSTRUCK would work. Pretty straight forward. And for setting that up in the API we would have just created a buffer object of type uniform buffer, set up the size of that and then we have to get the location. Instead
Advances in Research and Care Frameworks WWDC 2018 Session 205
access rights and providing write privileges to members of our community. In fact, we’ve chosen five all-star contributors and given them direct access to the ResearchKit repository that also allows them to merge MPRs. A huge thank you and congratulations to Erin, Fernando, Nino, Ricardo, and Shannon. Next
Swift Playgrounds 3 WWDC 2019 Session 405
accessible on every page as long as that code is marked as public. Files within the same module have access to each other without needing to mark code as public. However, if code is marked as private, it won’t be visible to other files in other modules or pages
CSS Effects, Part 1: UI Elements and Navigation WWDC 2010 Session 503
accessible, searchable, and easily editable. Now let’s talk about animations. I said it earlier in the presentation: nowadays you really need animations to draw in your users. And so far, you’ve done so much work making a great site that goes fast, that has accessible text, so you
Improving Existing Apps with Modern Best Practices WWDC 2016 Session 213
accessibility features in there? That’s not fair. So, resolve some of the technical debt that comes to accessibility. Add support for that. We think that the accessibility support is as much a part of your user interface as the artwork is. It’s built into Xcode, so you can
TextKit Best Practices WWDC 2018 Session 221
access to all the tech services that are supported by the OS like accessibility, spell checking and more. And you can take advantage of all of these great features without having to write a single line of code and that’s pretty awesome. And so with all of this functionality
Bringing OpenGL Apps to Metal WWDC 2019 Session 611
access an object’s data. And on systems with dedicated video memory, Metal may have to create a second mirrored memory backing for efficient access by both processes. So because of this, explicit codes are necessary to ensure that your data is synchronized for CPU and GPU access, for example
Leveraging Touch Input on iOS WWDC 2016 Session 220
access to the force for each touch. I won’t talk much about this, but you can have all the great experience for Peek and Pop in the session at A Peek at 3D Touch later today. We introduced faster touch scanning beginning with iPad Air 2 and iPad Pro
All About Notarization WWDC 2019 Session 703
access. So we all know that your customers use their Macs to store tons of information about their lives and the Macs have access to sensors that are security sensitive. In order to or once you’ve adopted the hardened runtime, your app needs to declare its intent to access
Optimizing Your App for Multitasking on iPad in iOS 9 WWDC 2015 Session 212
access to the CPU, and everyone’s background queues get equal access to the CPU. No single foreground app is prioritized above any other. If you prioritize your work appropriately, the system can guarantee that we get the best possible performance while there are multiple apps on screen. So how
Extending Your Apps for Enterprise and Education Use WWDC 2013 Session 301
access to the intranet. So that’s what it is conceptually. This limits VPN access to only the apps that the enterprise has installed, specific Apps. It enhances both security and privacy. So, security because you are not exposing your intranet to apps that the user may have installed from
Advances in Networking, Part 1 WWDC 2019 Session 712
access. pubSession here is the shared global session we use in PubSocket app and we use the pubSession to create a data task from the request. When task finishes, we check to see if the status code is 200. OK. We convert the data into the image and put the
OS X Automation Update WWDC 2013 Session 417
accessibility integration. Now, some of you might be familiar with Speakable Items. How many people in here have used Speakable Items? Quite a few. And it’s an architecture built into OS X in the accessibility frameworks and allows you to speak commands to your computer and have them perform
Crafting Modern Cocoa Apps WWDC 2016 Session 239
Accessibility, extremely important. Cocoa puts really powerful accessibility technologies within an arm’s reach of your application. And it’s extremely important that you make sure that you learn to use voice over, learn to use all of these accessible technologies and make sure that your app is doing the
Building Responsive and Efficient Apps with GCD WWDC 2015 Session 718
accessing this data structure. Maybe you have a Quality of Service utility thread also calling dispatch sync on this queue to get the exclusive access to the data structure. Again, the same thing will happen if he comes in later he will block waiting to get the exclusive access. Then
What’s New in LLVM WWDC 2018 Session 409
access, so no other thread could have changed the value while we’re computing our temporary results. But now suppose another thread does access either the same variable or another variable in the same cache line. So both are going to try to have exclusive access over this variable and
Core Text and Fonts WWDC 2012 Session 226
access that font using any of its names. For instance, if I could use CTFontCreateWithName using the PostScript name on that particular font that I had registered and access it that way. Alternatively, I could create a CT font directly from that graphics font using CTFontCreateWithGraphics. Then on Lion or
What’s New in watchOS 3 WWDC 2016 Session 208
access APIs. So crown events give you raw access to rotation events from the digital crown. In watchOS 2, your apps could use the crown for scrolling within your interface or for picking items from a list with the picker control. But of course, we saw many innovative uses of
Advanced Performance Optimization on iPhone OS, Part 2 WWDC 2010 Session 147
access a single value out of a plist, we have to take that entire object graph into the plist, bring in some memory before you can access that one element. Similarly, when you’re writing out the plist, if you modify a single element in the plist, we have to
The Accelerate framework for iPhone OS WWDC 2010 Session 202
access. This is those two ones that we saw on the vDSP_dotpr signature before. What strided data access is, is it lets you operate not on every element of array, but on every nth element of array. So if I wanted to operate on the 0th element, the 2nd
What’s New in the Accelerate Framework WWDC 2014 Session 703
access to partial objects. I say lightweight access, so there’s going to be no buffer allocation and no copy. Things that you can do with slices are for example, taking the odd elements of a vector. We shouldn’t have to allocate a temporary buffer and copy those odd
Designing Notifications WWDC 2018 Session 806
access all the other things you had missed. So, because so many notifications were being accumulated, this became a really useful place to go and to see all the other activity on your phone. Next, we introduced rich notifications. As the quantity of notifications was increasing, we wanted to increase
Optimizing Core Data Performance on iPhone OS WWDC 2010 Session 137
access one of the first 3 objects poof there will be objects. You don’t need to know or care how that happened. If you then try and access an object elsewhere in the array, poof there are objects. Again you don’t need to know or care. So it
Understanding Crash Reports on iPhone OS WWDC 2010 Session 317
ACCESS. And what EXC_BAD_ACCESS means is that you’re trying to access memory that you don’t own. So you already know from looking at that, that this is some type of memory issue. It also shows that the crashed thread is thread number 7. So now, we
Designing Great Apple Watch Experiences WWDC 2016 Session 804
access information and provide a really fast way to get to apps. Notifications tell people about significant events that they might otherwise overlook. And because they’re also interactive, they’re a great way to push interactions to the people who use your app. And lastly, apps offer a deeper
Adopting Metal, Part 1 WWDC 2016 Session 602
access to the performance and power of the GPU in literally hundreds of millions of our most popular products. And Metal is also a foundational technology on these platforms. It powers Core Graphics, Core Animation, as well as our Games and Graphics Libraries such as SpriteKit, SceneKit, and Model I/O
Advances in OpenGL ES WWDC 2013 Session 505
access. It’s really just a very large store of random access memory. Read-only random access memory, that is. Data normally passed in via a glUniform can be passed in via a texture. There are a number of advantages here. It’s a really, a much larger store. We
SceneKit in Swift Playgrounds WWDC 2017 Session 605
accessible. The one that was really important for us is actually describing the important locations using VoiceOver, and the reason I want to show you this in more detail is because it’s surprisingly easy to do. So just like in your UIKit apps we’re overriding an accessibility element
Wallet and Apple Pay: Creating Great Customer Experiences WWDC 2018 Session 720
access, swiping down for notification. Contactless passes do require an NFC certificate to get started. Now, you should contact us for access if you have a great use case. One other important thing to remember is that contactless readers you select must support Apple’s value-added services protocol. However
Platforms State of the Union WWDC 2013 Session 101
accessible at any time in a really simple manner. When you want to access the project for the first time, the new checkout workflow makes that really easy. Select the repository, select the branch, and Xcode will check out your project and open it for you. Now, once you have
Making Great SiriKit Experiences WWDC 2017 Session 228
access via Touch ID or a device passcode prompt, I’m going to go ahead and change the state of the car as I did earlier without prompting, but this time I’m actually waiting for the user to give me access. And then I’m going to call the
Managing Apple Devices WWDC 2013 Session 300
access to their own private data or they’re using it as their company’s device with access to the corporate secure data. We don’t think this is the right approach. We think that place is the burden on the employee to make that decision and that’s not
Automating the Creation of iPad Content WWDC 2010 Session 302
access to the power of the OS. So up in the Services menu, in the Application menu you have the ability to access Services. In the Finder, in the Action menu you can access Services contextually based upon what you have selected. The same with the contextual menu in the
Going Social with ReplayKit and Game Center WWDC 2015 Session 605
access to the movie files. These are only accessible to the user via ReplayKit’s preview UI and share sheet. All right, so let’s take a look at how ReplayKit works by taking a look at its architecture. So your application links to the ReplayKit framework and it uses
Best Practices for Building Apps Used in Business and Education WWDC 2016 Session 304
Accessibility. I was actually talking with a former co-worker just before lunch, make sure you have accessibility in your application. This helps people that couldn’t otherwise use your application. And they get quite emotional when they can see that they can finally use an app because you’re
Getting the Most Out of Simulator WWDC 2019 Session 418
access to these textures. For most of you, you will initialize these texture types and use them directly in your GPU commands, and so this won’t affect your application. They should already be private textures. But if you do need CPU access for one of these textures, let’s
What’s New in LLDB WWDC 2015 Session 402
access as much of your information as possible while you are debugging. Access to the Objective-C runtime gives you more insight into fields that before were unavailable to you. The SDK modules offer an unprecedented level of access to the operating environment that your application is running in, more
Optimizing Drawing and Scrolling on OS X WWDC 2013 Session 215
access, you tell us which access you want this view to be floating on and we’ll go ahead and put in a special place in the view hierarchy and scrolling will be handled automatically in sync. So if you’re scrolling ob the access is not floating on, it
WatchKit In-Depth, Part 1 WWDC 2015 Session 207
access. Because for security reasons, normally you can’t access from one process into another’s storage area. And you enable this index code. You use something called ‘app groups’ for both the extension and the application you give a unique identifier and that’s your application group. And so
Typography and Fonts WWDC 2016 Session 803
access it the system font API’s are the same between iOS, watchOS, tvOS, and the macOS. So, NSFont and UIFont basically have the same API’s. And they have a lot of benefits. They give you access to the weight of San Francisco, of the nine weights, but also
Deploying AirPrint in Enterprise WWDC 2016 Session 725
access to software update, no multicast packet traffic allowed, and certain ports blocks, which all have impact on printers. Enterprise customers also may have accounting requirements since every page printed costs money. And of course security requirements are essential and are increasingly important in enterprise printing. The top requests we
What’s New in Cocoa WWDC 2013 Session 205
access these light content controls? Well, they’re available through a new API called NSAppearance. This is a class that lets you access alternate appearances and it’s got a bunch of methods, the one I’m going to show here is appearance name, you just give it an appearance
What’s New in Swift Playgrounds WWDC 2017 Session 408
access the camera if they’re running on iOS 11. You can use the AVFoundation APIs to get access to the camera. It’s important to note, though, that this won’t work on earlier versions of iOS, so if your Playground depends on the camera, we recommend that you
Mastering Drag and Drop WWDC 2017 Session 213
access to everything related to a drop. You can get access to the drag location where the user is dragging inside your view. It gives you access to the items in the view, what type of data is there, and actually their data in the end. It gives you access
What’s New in Cocoa Touch WWDC 2013 Session 203
Access system. So, Guided Access was a feature introduced on iOS VI. Now, your app can actually tell the Guided Access system what’s available to it. Accessibility in iOS in Pacific Heights, Tuesday at 9:00. If you’re doing anything to make your app more accessible, please go
Swift Generics (Expanded) WWDC 2018 Session 406
access, like the singlyLinkedList that we talked about earlier. Now, you notice that we’ve essentially split the inheritance hierarchy here. We’ve got the access side for random access, bidirectional, and so on. And then, we’ve got this mutation side. That’s perfectly fine, because clients themselves can
Using Core Location in iOS 4 WWDC 2010 Session 115
access points, you need to know where those access points are and so what we focused on in the past year is really improving our sources of data for Wi-Fi positioning. Our goal was to improve coverage in the areas where people use iOS devices most. So, just to
Maximizing Apple Development Resources WWDC 2013 Session 415
access stuff nice and quickly. And the cool thing is, you can access all the stuff right from Xcode and the Help menu. Go there and you get the documentation API Reference guide. And the nice thing is in Xcode 5, we’ve actually revamp this to make it really
Building and Distributing Your App with Xcode 4 WWDC 2010 Session 314
access to a small number of things that you do regularly, very powerful construct. Second thing is workspaces: workspaces let you organize work in multiple projects and associate projects together on an ad hoc basis or on a team basis without having to change the project itself so you can
What’s New in Energy Debugging WWDC 2018 Session 228
access to, let’s say, the radio or has access to, let’s say, the camera, and it’s using that subsystem, this energy being consumed is going to be called active energy. So, then, it stands to reason that the battery life problem is actually a two-part optimization
Quick Interaction Techniques for watchOS WWDC 2016 Session 211
access to new kinds of input. You can now do gestures with gesture recognizers in your apps. We are giving you access to the rotation events in the Digital Crown. And we’re also having three other areas. One is for improved table navigation, the support for the new user
Advanced StoreKit WWDC 2017 Session 305
access to that functionality you paid for if it’s now a subscription model. So use type 19 as a bit of a gate to be able to supply that. So once you’ve done this step, that’s the process of checking the transaction and confirming subscription state on
Best Practices and What’s New with In-App Purchases WWDC 2018 Session 704
access. After that they can renew at 1.99 for another 3 months of access. When that’s over they’ll renew at the normal subscription terms of 9.99 for 3 months. Here’s what the data from StoreKit would look like in this case. You can see the subscriptionPeriod has
What’s New in Scene Kit WWDC 2013 Session 500
access to the attributes like geometry, camera and light. And from the geometry, you also have access to the materials. But you can do more than simply modifying positions, you can also animate everything in your scene. And for animations, Scene Kit includes an animation engine and regarding the API
Your App and Next Generation Networks WWDC 2015 Session 719
access network with NAT64/DNS64 on my Wi-Fi interface. So when I start it, I see that the Wi-Fi icon has grayed out and it has an arrow pointing up. That means now the Wi-Fi interface is in access point mode. What that really means is now it
App Publishing with iTunes Connect WWDC 2010 Session 310
access iTunes Connect at itunesconnect.apple.com. The first time you log in, you will land here, this is the home page. Now if you are interested in having a commercial relationship with us, your first stop should be the contracts module, second one down on the left. Note that banking contact
What’s New in iTunes Connect WWDC 2015 Session 302
access to both the Mac and iOS SDKs. You go to the dev portal, sign in, you agree to the single agreement. Come into iTunes Connect, and you set up your tax and banking information just for that one contract, letting you set up paid apps and paid in-app
What’s New in Cocoa WWDC 2014 Session 204
Accessibility APIs. The new APIs are simpler. They are expressed – the accessibility values, the accessibility values for various UI elements and UI properties are expressed directly as properties. There’s no need to subclass. Good, somebody’s used the old APIs. And there are better compile time warnings as well
iPad and iPhone User Interface Design WWDC 2010 Session 103
accessed. And then you’ve got less-frequently accessed well, you’ve got the changing dates in the middle of the Calendar mentioned that earlier and then towards the bottom placement, less important, less frequently accessed by the user, less on their radar if you will. You’ve got the
Visual Design and Accessibility WWDC 2019 Session 244
Accessibility Team. I’m excited to share with you three ways in which you can make your apps more visually accessible. We will be covering Dynamic Type as well as some great improvements to Reduce Motion and an API that we brought over from Mac to iOS that we call
Getting Started with Swift WWDC 2016 Session 404
access the count property of that collection to see how many there are. If we pass that to the print function, we find out that we do, indeed, have five characters. But if you still don’t believe me, well, let’s iterate over each of those characters in turn
Optimizing App Startup Time WWDC 2016 Session 406
access those different addresses, as if you had read it in memory, each time you access an address that hasn’t been accessed before it will cause a page fault, the kernel will read just that one page. And that gives you lazy reading of your file. Now we can
Getting Published in Apple News WWDC 2016 Session 502
access to your account to an intern that won’t be here in a few months. So make sure you give access to someone who will be with you for a while. So a common problem that we have. You also want to use a real e-mail address that
Cocoa Development Tips WWDC 2017 Session 236
accessibility, get AX accessibility? And Apple has many ways to make your products accessible to all users. I’m just going to go over a few small things. VoiceOver is not small, but I’ll talk about it briefly. It comes built-in on all Apple products and it’s
What’s New in Cocoa Touch WWDC 2018 Session 202
accessible via Siri. Now, Siri Shortcuts can be suggested proactively right on the coversheet making it easy to access actions that you would want to access at the exact time and place that you want to access them. Even better, they can also be suggested right on the Siri watch
What’s New in Core Bluetooth WWDC 2019 Session 901
access to both BR/EDR and low energy without doing anything. Now, what this means for you is without much changes in the API, you can now work with both the classic devices and the low energy devices. So let’s go and look into the details of Core Bluetooth for
Advances in Foundation WWDC 2019 Session 723
Accessing files from USB or SMB drive may be tangibly slower than when you access files on the internal drive. So if you’re not doing this already, please defer file system access to non-main thread to make sure your app remains responsive. You may need to test file
Network Extensions for the Modern Mac WWDC 2019 Session 714
access to local network resources such as printers, you can enable ExcludeLocalNetworks to allow that access to still happen. Okay. So we’ve also made some enhancements to Per-App VPN. We’ve added three new lists of domains that you can use to route traffic to your Per-App
Ray Tracing with Metal WWDC 2019 Session 613
access to any texture that an object references, and we don’t know in advance what object a ray is going to hit, we may potential he need access to every every texture that’s in the scene. And this can get out of hand quickly. For instance, the commonly
Networking for the Modern Internet WWDC 2016 Session 714
access key using NSURLSession. If you set allows cellular access to false, then we won’t use cellular data connection. Nice and simple. [ Applause ] If that connection fails, you can ask the user, do you want to stream this video over mobile data, or you can just wait, subscribe for
What’s New in HealthKit WWDC 2015 Session 203
access to use the user’s HealthKit data. When your app requests authorization, a prompt will appear on both the Watch and the user’s phone to authorize your app for access. So if your phone application is authorized to store and retrieve distance samples, let’s say, then your
What’s New in Swift WWDC 2019 Session 402
accessing properties are common. Some of you Some of these patterns have first class language support, such as lazy, but you are also probably writing your own custom wrappers. Maybe you have some storage that access a thread local [inaudible]. Maybe you have computed properties to store your user defaults
Siri Shortcuts on the Siri Watch Face WWDC 2018 Session 217
accessible to your users. And, they can access these shortcuts by saying key phrases into Siri, or tapping on various system UI. And, in the case of watchOS, that’s a platter on the Siri watch face. There’s a lot of in-depth discussion about how to make great
Advances in Speech Recognition WWDC 2019 Session 256
access speakingRate and averagePauseDuration as shown. To access voice analytics, you would have to access the SF transcription segment object, and then you can access it as shown here. To summarize, we have made three key advances. You can now build apps on macOS using speech recognition APIs. Speech recognition
Introduction to LLDB and the Swift REPL WWDC 2014 Session 409
access it just at the LLDB command prompt any time that you’re debugging your program. That’s not all though. You can also access the Swift REPL when you don’t have a program running. You can access it directly off of the shell prompt, for a clean slate
What’s New in Metal, Part 1 WWDC 2016 Session 604
access the memory. And for complex scenes, this cost can add up as well. Resource sub-allocation addresses both of these performance issues. Remember that the expensive part of resource creation is in the memory operations. With resource heaps you can perform the memory operations ahead of time outside of
Advanced Debugging with LLDB WWDC 2013 Session 413
access to the LLDB object model, they’re like peers to your program. Breakpoint action is written in Python in a full program inspection and by full program inspection, I mean that they have access to the data, they have access to the code and they have also access to
What’s New in Core Audio for iOS WWDC 2013 Session 602
access to them. And the way the node application gets that access is by fetching the host callback property. It will receive that structure full of function pointers. They won’t actually point to functions in the host process, of course. We can’t make a cross process call there
Creating Modern Cocoa Apps WWDC 2014 Session 227
Accessibility. Accessibility not only expands the audience available to buy your app, but it also makes it easier for you to use as a developer, that’s because accessible apps are able to be automated and automated apps are more easily tested. So you should definitely look into supporting accessibility
Advanced Debugging with Xcode and LLDB WWDC 2018 Session 412
access these from your touch bar. And as you can see, I can bring those up with Xcode being in the background, so you can access them even when you’re, for example, developing your app in full screen mode. And one of these options allows me to capture the
Getting the Most out of Playgrounds in Xcode WWDC 2018 Session 402
accessibility to benefit voiceover users. And here we access the same imaging code using the standard UIImage or NSImage APIs. Similarly, to images you can also imbed videos in your markup. This is done by using a syntax similar for that images with additional support for specifying a poster image
Your App, Your Website, and Safari WWDC 2014 Session 506
access to credentials that Safari has stored for your website to make your users’ login experiences easier than ever. Then we’re going to learn about AutoFill and how that works on the web and ways to make that better as well. Then we’re going to look at ways
Future Proofing your Application WWDC 2010 Session 130
access and file access to a background thread. So this leads to another common mistake which can cause compatibility problems. All right you see here, well I don’t want to do this in the main thread so let me do it on a background thread. Okay well I can
What’s New in SpriteKit WWDC 2014 Session 606
access to the texture of the sprite, the sprite size in pixels, the global time (in case you need to do any of the animation in terms of color or shapes) and you also have access, if you have a custom shader that’s running on a shape, to the
Planning a Great Apple Watch Experience WWDC 2017 Session 808
access to the latest news in a super accessible form. Okay, now that we talked about the UI of apps, I want to talk about the other side of the experience. The person using your app. And I’m going to get aspirational about the kind of experience that can
SceneKit: What’s New WWDC 2017 Session 604
access vectors in different spaces. But most of all, all the node transform properties, access position, rotation, scale, and matrix, and transform, are now directly available as SIMD properties for, to ease math operations. So thanks to SIMD types, operations on quaternions vectors, and matrices are much simpler to write
Image Editing with Depth WWDC 2017 Session 508
access the image file in order to read the depth data. So let’s see how to do that. If you’re using PhotoKit, there’s a couple of ways to can access the image file. You may be using PH Content Editing input, for instance. Here’s how you
Introducing AppleScript Libraries WWDC 2013 Session 416
access to your favorite sets of handlers. It’s different from scripting additions because you can write them yourself in AppleScript and they’re controlled by the script that loads them. They can use AppleScript objective C to access all the wonderment of Cocoa and they can also publish their
What’s New in Camera Capture WWDC 2013 Session 610
accessed in their photos library. And we did that by popping up a dialog the first time your application tries to access that is read to read from, or write to the assets library, so that the user would have an opportunity to opt in or out. And we warned
Health and Fitness with Core Motion WWDC 2016 Session 713
access to raw accelerometer samples, or long durations of time. And you can also get this access with very low power. After your apps have requested the framework to start recording these samples, they can get suspended. And the OS will offer those samples, even across device sleeps. And when
OpenGL Essential Design Practices WWDC 2010 Session 414
access the GPU. Now it’s important to note that these techniques apply equally to iOS 4 and Mac OS X. So the codes you write on one platform and the knowledge that you’ve gained here, you can leverage on the other platform. They’ve got pretty different architectures
Preventing Unauthorized Purchases with Receipts WWDC 2014 Session 305
access to the app’s content and features even if the receipt’s invalid if you choose. You could maybe have a you could maybe have a grace period where you will allow some use of the app. You could limit access to certain areas of the app; perhaps there
Creating Custom iOS User Interfaces WWDC 2014 Session 221
Accessibility is a critical part of iOS. We care very deeply about making sure our operating system is accessible to as many people as possible and there’s some very powerful APIs around accessibility that are important for you to use if you decide to build custom UI in your
Advances in Networking, Part 2 WWDC 2017 Session 709
accessible behind a VPN and the admin recently changed VPN access. How do you as an app developer deal with a network load that fails? In the past, we’ve advised you to use the SCNetworkReachability API to monitor when you might have connectivity again to the server. Other approaches
View Controller Advancements in iOS 8 WWDC 2014 Session 214
accessible in this API, so you can ask the split view controller for it and put it in whatever bar you want. Although I’m not going to say it explicitly, if you were to look in the header files of UISplitViewController, you would find that most of the API
Introducing HomeKit WWDC 2014 Session 213
accessible to in the past. So let’s get started. So today I will tell you a little bit about the features of HomeKit, and we’ll go through the core concepts, how to use the APIs, how to get started, and then a few advanced topics that are either
Introducing the New System Fonts WWDC 2015 Session 804
access them through Core text you can access font through Core text, and you don’t have to go hunt for them on the file system. Also, if you access system font by name, the fontWithName API is really meant for user fonts. So if you have your own fonts
Distributing Enterprise Apps WWDC 2014 Session 705
access to the developer tools and the rights as a developer by virtue of joining your team, okay. Once you do that the next thing you should do as a team member is to go to Xcode and type your registered Apple ID in, so you click register, you register
Integrating Passbook into your Ecosystem WWDC 2013 Session 303
access to mail. So, if you can detach yourself from the requirement of a companion app, you actually have access to much larger user base, right? There’s more of a chance that they will see, they’ll see my Gift Card then if it goes to your mail then
Advanced NSOperations WWDC 2015 Session 226
access to a certain CloudKit container, or only execute this operation if we have access to your calendar or to your photo library or to your contacts or whatever else you’d like. So that’s conditions. And the final piece is operation observers. An operation observer is again a
What’s New in Core Audio WWDC 2014 Session 501
access methods for properties on the audio rendering thread. So we’ve taken some great care to do that in our implementations and as we go I’ll give you a couple of examples of places where you need to do this to be aware of real-time issues when
What’s New in Cocoa Touch WWDC 2014 Session 202
access them from your view controller. You can also get them from the current screen, and then using that information, you have your size class. You can make the determination of what is the right thing to do for you. So as a simple example, we can think of what
Swift Interoperability In Depth WWDC 2014 Session 407
access to Objective-C APIs through the Objective-C Module System we introduced last year. So you can pull your Objective-C APIs whether they be from Cocoa or your own into Swift and use them. And then Swift maps those Objective-C APIs into the Swift syntax. This covers
Network Apps for iPhone OS, Part 1 WWDC 2010 Session 207
accessing Transport Layer Security within iPhone OS, there is no Transport Layer Security that’s accessible at the dial-up level. The secure transport mechanism, which is available on Mac OS X, public API Mac OS X is not a public API on iPhone OS, so you just can’t
What’s New in Foundation WWDC 2017 Session 212
access to an encoder and a decoder. These provide you access to containers, and that’s what actually holds the values that are in the archive. In the case of a keyed container, we use the coding keys that are defined by your type. And finally, the encoders and containers
What’s New in Apple Device Management WWDC 2016 Session 303
access this roster information from Apple School Manager and give your NDM solution access to all the student and teacher Managed Apple IDs, as well as the classes. In terms of the transition from schools moving from the Apple deployment programs to Apple School Manager, the good news for them
Beyond Dictation — Enhanced Voice-Control for macOS apps WWDC 2016 Session 717
accessibility support. Generally, they do have good support, but that could also be an issue. You might not be able to give a command for the thing that you want it to do. But here’s the good news user commands. This is where we leave the world of accessibility
Adopting Metal, Part 2 WWDC 2016 Session 603
access to constant buffers. We’ve already got a semaphore and they’re great for controlling access to limited resources. In this case our limit is three but it can be whatever you’d like. So here we create our semaphore with our count. And instead of creating one constant
Safari Extensibility: Content Blocking and Shared Links WWDC 2015 Session 511
access to what they need to. This particular extension right now does not have access to the network. So we are trying to make an NSURL request, we definitely need access to the network. So if I click on the project here, and then go to capabilities, right here I
Managing Apple Devices WWDC 2014 Session 702
access to our neighbors to the North. Any Canadians here? I’m so sorry about the Canadians, but, in fact, the Rangers knocked my Flyers out in the first round; so get them next year. We’ve also made a number of other changes already since launch that I wanted
Cross Platform Nearby Networking WWDC 2014 Session 709
access point, or if they’re not connected to an access point at all. So, many of you have wondered which devices support Peer-to-Peer networking. So I’d like to talk about that a bit. Well, on iOS it’s pretty simple. If your iOS device has the
Understanding Source Control in Xcode WWDC 2013 Session 414
accessed through the top level Source Control menu where we have access to the every working copy that a project or workspace is currently using and what branch we’re currently on in each one. So this is a great easy way to quickly see what code you’re working
Xcode Core Concepts WWDC 2013 Session 401
access any of the other files reachable from your workspace. And on the right here is the issue mini navigator. If you have any issues at the issue pane that are associated with files, you can use the arrow keys to go back and forth between them or pop that
What’s New in Xcode 5 WWDC 2013 Session 400
access to a Table of Contents, your Bookmarks, Xcode even makes it super easy to share links right from the ID. Now, Xcode 5 intentionally feels a lot like Xcode 4, but there’s one aspect of the field that we thought could be much improved, and that’s in
Designing Code for Performance WWDC 2013 Session 224
access to the source code or not be aware of what work it’s doing, and in such cases, you can often estimate. You can consider what the code would have to do, what kind of work it’s trying to accomplish, and another complimentary alternative is to profile with
Using Fonts with Text Kit WWDC 2013 Session 223
accessibility settings. So dynamic type is organized by what we consider to be usage. Each one of these is a text style as we like to call it. As you’ve seen in the previous session, there are, I believe, eight of these different usage categories for use with text
Localizing with Xcode 9 WWDC 2017 Session 401
access and use your great applications, but they can’t do that if you don’t give them the ability to use your apps in their native language. And your app can easily access this global audience by following some simple steps and best practices. And, in today’s session
Mastering the Living Room With tvOS WWDC 2019 Session 211
access this extra information, the path to pressing play and watching the whole film becomes simplified. And what’s more, meta-data can help someone change their mind from being in a browse mode to perhaps purchase, or from browsing to subscribe. Now pagination dots, they communicate that you’re
Core Data Performance Optimization and Debugging WWDC 2013 Session 211
accessing through context. So today we’re going to be talking a lot about Instruments and not only how we use Instruments to find problems, but how we interpret the information that we see and figure out what it means and what we need to do about it. We’re
What’s New in Foundation for Swift WWDC 2016 Session 207
access to the Date value type. So, let’s go ahead and use it, and consuming it is very similar, however now this var takes on a whole new kind of behavior. We specifically, we now allow inline mutation. And so, we’ve done zero, these two examples here are
Large Content Viewer- Ensuring Readability for Everyone WWDC 2019 Session 261
Accessibility team here at Apple. I’ll be talking about the Large Content Viewer. A feature that helps people who prefer larger text sizes. In this talk, you’ll learn how to ensure that all parts of your app are readable for everyone. We’ll first cover what the Large
WatchKit In-Depth, Part 2 WWDC 2015 Session 208
accessed by both the app and the extension. So what you need to do is create an app group, which provides a shared container for you to store these data and they can be accessed by both. So that’s all you need to know, and if you want to
Delivering Intuitive Media Playback with AVKit WWDC 2019 Session 503
access automatically to your content when playback begins. But you can request access earlier using a new API request playback restrictions authorization. And of course, any kind of failure here, if the user doesn’t know the passcode or doesn’t want to enter the passcode, or if it’s
Introducing ARKit 3 WWDC 2019 Session 604
access the pixel buffers with the segmentation and the estimated depth data on every ARFrame. So now, let me show you how people occlusion works in a live demo. [ Applause ] So here in Xcode, I have a small sample project using the new RealityKit API. And let me quickly walk
Advanced Debugging and the Address Sanitizer WWDC 2015 Session 413
accessible or not. Bytes on invalid memory are called red zones or as we say, memory there is poisoned. When you compile your program with Address Sanitizer, it instruments every memory access and prefixes it with a check. If the memory is poisoned, the Address Sanitizer will track the program
Advanced Cocoa Text Tips and Tricks WWDC 2010 Session 114
access. The power can be accessed simply by drag dropping the text UIObjects in Interface Builder and its design to scale. The same layout engine is used by various projects from a single line text field to subsequent application with advanced text handling features like these. And advanced typography features
Efficient Interactions with Frameworks WWDC 2017 Session 244
access it, even if you don’t plan on mutating it. But before you go bananas changing all of your string accesses to MutableString, let’s consider that graph, again. Now, due to the nature of the text storage API, you’re probably going to be up here on the
Introducing SiriKit WWDC 2016 Session 217
accessibility needs of our users and responds to a lot of different accessibility settings. So in the end of the day, there’s basically a combinatorial explosion of ways that people use Siri, both in terms of how they phrase something to Siri and in terms of how Siri will
System Extensions and DriverKit WWDC 2019 Session 702
access to hardware. Then, it allows them to share data and system services following the rules of the Security Policy. When a Kernel Extension loads, it becomes part of the kernel. It has access to everything on the machine. This is where a Kext’s power comes from. But it
Swift and Objective-C Interoperability WWDC 2015 Session 401
accessing it from Objective-C. The top method is still named ‘perform operation.’ In Xcode 7, we’ve added another option for solving this problem, which is the non-ObjC attribute. As you might have expected, this will take something that’s normally exposed to Objective-C and prevent it
What’s New in Apple File Systems WWDC 2019 Session 710
access to the external files on the external media. But before we start, let’s rehab what happened to APFS recently. APFS has been the default filesystem it on iOS and tvOS since 10.3 and on macOS since High Sierra. One of the features which APFS introduced is a built
Core Bluetooth WWDC 2013 Session 703
access the notifications that I’m not very good for your hockey and all that and you guys probably know what I’m talking about. But these are three other command solutions that are being used nowadays. So, first one is the Message Access Pro or the Message Access Profile
Designing iPad Apps for Mac WWDC 2019 Session 809
access to folders or for displaying saved searches. If you use a sidebar, there are two things to keep in mind. First, sidebars are providing access to locations within your app or collections of documents. They’re not really meant for showing the documents or other kinds of content directly
What’s New with Multitasking WWDC 2013 Session 204
access to connect to your service, but what we’re going to do here is set these keychain items to be partially protected and specifically, we’re going to use the mode where the data is available after the very first unlock. So what we encourage you to do is
Audio Development for iPhone OS, Part 2 WWDC 2010 Session 413
access to hardware, use properties to configure them and parameters to control them. And make sure you understand the lifecycle of an audio unit which includes access, instantiation, configuration, initialization and then rendering. Render callbacks let you send your own audio into an audio unit and audio processing graphs let
Audio Development for iPhone OS, Part 1 WWDC 2010 Session 412
access to a hardware codec or not. With MixWithOthers with ambient that means you would use that for applications that don’t require access to a hardware codec, don’t need to use it. Excuse me. With solo ambient, that’s the category you would choose if your, you know
Fundamentals of Digital Audio for Mac OS X and iPhone OS WWDC 2010 Session 411
accessed exactly the same way as you would access the RemoteIO unit. So, basically, setting up, creating the instance, setting parameters, and so on. But this year, in iOS 4, we added a new algorithm which provides significantly better quality, of course, at the cost of a heavier CPU load
What’s New in App Store Connect WWDC 2018 Session 301
access all customer feedback within App Store Connect by accessing the ratings and reviews section where you’ll be able to see your current rating across any one of the territories you’ve selected or, obviously, all territories. You can also take a look at your reviews, read them in
Accessing Shared Contact Information WWDC 2010 Session 119
access the contacts. You can actually have multiple Address Book instances. The Address Book object you can create multiple ones of those and they all access the same database, the same set of contacts on the device. So that’s the Address Book. The second one in there is a
Inclusive App Design WWDC 2016 Session 801
accessibility settings, low vision people can get even larger sizes for body copy. And here is Ulysses. They do a great job scaling their UIs dynamically. So, how do I specify a design to be dynamic? First you start by specifying different text styles for semantically distinct blocks of text
Getting and Using a MapKit JS Key WWDC 2018 Session 508
access should expire and restrict access to a specific domain. It’s the web and others will still be able to view course and poke around in the web inspector, but if somebody ends up with your credentials for any reason, there will be limits on how they can use
Apple Watch Design Tips and Tricks WWDC 2015 Session 805
access and convenient access to from your iOS app? Make sure that you focus on the essentials. Don’t overload your app with too much information or functionality. This is really a recipe for poor usability on Apple Watch. So for example, the Calendar app on the iPhone does all
What’s New in Metal, Part 2 WWDC 2015 Session 607
access to the current render pass descriptor. Now, let me just note that this isn’t a problem specific to the MetalKit view. You need to be aware of this issue if you roll your own view in access core animation directly. So this is information that’s quite useful
CloudKit JS and Web Services WWDC 2015 Session 710
access my CloudKit data through web services. I have here chosen that any domain can access my data but for added security I could have restricted to viewer domains so now we have enabled web services. Let’s get some users to log in. So authentication is handled transparently. What
What’s New in Health WWDC 2017 Session 221
access to that information as well. Also, new this year, in watchOS 4, your apps can now enable Water lock. So, this is a really great feature that allows your app to ignore any input from water on the screen. Which is really great to get a consistent user experience
AVSpeechSynthesizer: Making iOS Talk WWDC 2018 Session 236
accessibility settings. So when you go to the settings app, go into accessibility and speech, you will find pronunciations and find a screen like this. You can enter in the phrase that you want to find the correct pronunciation for, tap the microphone button, and then speak it. After you
Motion Tracking with the Core Motion Framework WWDC 2014 Session 612
accesses motion activity, we’ll do the proper popups. The only time you’ll want to do something more than that is to check to make sure that your app does have authorization to access activity because when you don’t, you want to show a dialogue box saying, informing
Adopting Multitasking on iPhone OS, Part 2 WWDC 2010 Session 109
access to all of the tools that you need in order to play background audio. So, if you, for example, are an application that synthesizes audio; those applications have some really hard real-time deadlines that have to be made, so we make sure that we allow you to play
Building a Server-driven User Experience WWDC 2010 Session 117
accessed by a web service, whether that’s a web service provided by a vendor or you loading in this content into your own database and vending it out to your own web services. This would be internal or external as I said at the very beginning. And having this
Understanding Foundation WWDC 2010 Session 124
access to the index, so if you need it, you’ll have to keep track of it yourself. When you fast enumerate over a dictionary, the objects you’re getting back are the keys. That means that if you need the objects, you should call objectForKey and get the value
Performance Optimization on iPhone OS WWDC 2010 Session 131
accessed from two different threads and so I need to serialize those accesses in some way and I can do that using a lock or again I could use Grand Central Dispatch. So that’s actually what I’m going to do in this case. So I’m just going
Network Apps for iPhone OS, Part 2 WWDC 2010 Session 208
access it. And then you introduce this notion of accessing the data outside of the lock, which causes random corruption. Or if you have more than one lock in your program, you end up in deadlocks. And in general, that sort of thing is just a mess and it’s
Simplifying iPhone App Development with Grand Central Dispatch WWDC 2010 Session 211
access to critical sections of code or to serialize access, serialize access to some shared state between threads or just in general to ensure data integrity when you have some complex piece of state that needs to always have a consistent in a consistent state and that can be modified
Introducing Xcode 4 WWDC 2010 Session 307
access all the repositories that Xcode 4 knows about because of the projects you’ve been working with. You can also access information about the projects there as well as documentation. The Version Editor again, we support some version and get. And the Version Editor was a great way to
What’s New in LLVM WWDC 2017 Session 411
accessing either directory or filename will cause a use after free. The root cause is that split was passed a temporary. The temporary is destroyed after the call to split, and its references are invalidated. Accessing the temporary invokes undefined behavior. AddressSanitizer can catch this bug. Watch Understanding Undefined Behavior
Continuous Integration and Code Coverage in Xcode WWDC 2015 Session 410
access to a lot of information about what happened in your integration. And one of the ways we provide access to that information is through environment variables. This is just a sample of some of the variables that are defined when your scripts run. Any scripting language worth using is
Core Data Best Practices WWDC 2012 Session 214
access and load at least some of the data so you can show it to the user; that’s what they’re expecting. If the user instigates a network access, it’s the same thing. Know when the user is accessing the network and how’ they’re accessing the network
Effective HTTP Live Streaming WWDC 2012 Session 502
access logs and error logs. Once again, don’t forget to get the user’s permission to grab this data. We got a lot of fields in the access log, so you want to look at what streams am I actually getting. How long are they playing for? Where are
What’s New in iOS User Interface Design WWDC 2013 Session 208
access. Now you’ve got to do a little bit more than that so color got added at a later stage just to distinguish controls from content. Some background colors, a couple of crisp lines but at all times the message stayed present, it stayed front and center, it was
What’s New in Passbook WWDC 2013 Session 302
access to the apps if they have some way of interacting with a pass in the user’s pass library. So it looks like this. You have this banner at the top of the back of your pass, kind of like the one in Safari. It shows your app icon
From Zero to App Store in Xcode 5 WWDC 2013 Session 403
access in the machine on which I generated the key in the first place, I can go to that machine, use the export functionality that Joshua showed you earlier in the accounts pane, and import it here using the button on the left. Alternatively, if I no longer have access
Fixing Memory Issues WWDC 2013 Session 410
access of the weak object’s delegate by an arrow reference. If you get back nil then you’ve referenced no and crashed. So better would be to use the dot syntax in this case to access a delegate, because sending a message to nil is just fine. Or, you
What’s New in Swift WWDC 2018 Session 401
access that local variable again printing it. So what the problem here? Well, it turns out this code is actually ambiguous because when I access that local variable inside the closure, it’s already being modified by this withAppended method, which is a mutating method. So the ambiguity is that
Working with OpenCL WWDC 2013 Session 508
access buffers is usually not cached, and so sometimes it can be higher latency to access tasks as buffer objects. Image objects are kind of like GL textures. They’re either read only or write only, so you have to decide when you’re writing a kernel if you’re
Integrating JavaScript into Native Apps WWDC 2013 Session 615
access the data that’s inside of it so we have various things like converting to a Boolean, to numbers, to dates, strings, et cetera. And when you call one of these on a JSValue, JavaScriptCore will do its best effort to convert it to the type that you asked
Affiliate Tools for App Developers WWDC 2014 Session 301
access to 147 countries. This is really huge. Now that means one sign up, one payment set up, all your tax information, all that sort of financial transaction stuff that you need to get started with the program, you do that once and you’re working across the globe. Even
iOS Memory Deep Dive WWDC 2018 Session 416
access, the compressor will then decompress them so the memory can be read. Let’s look at an example. Say I have a dictionary that I’m using for caching. Now, it uses up three pages of memory right now, but if I haven’t accessed this in a while
Swift Playgrounds WWDC 2014 Session 408
access. So anytime you want to try something it’s right there at your fingertips. So with all that said, let’s dive in and take a look in an actual Playground. To do that, I’m going to invite my colleague Connor up on stage. Thank you, Rick. Hello
Testing in Xcode 6 WWDC 2014 Session 414
access all the code in your application which means when we run the test, we run it in the context of your application. Alternatively, you can run them in a hosting process that’s provided by Xcode. Resources for tests, as I mentioned before, are not in the main bundle
Creating 3D Interactive Content with WebGL WWDC 2014 Session 509
access to WebGL and set it up in your web page. And then, we’re going to show how to do basic drawing with WebGL. And this is going to be sort of like crash course into how to draw something with WebGL and you get an idea of how
Working with Metal: Advanced WWDC 2014 Session 605
access my texture, I’m going to use my 2-dimensional global ID, but if I access a buffer, I need to create a 1-dimensional ID. So we’re trying to help you not have to write all that code because there may be bugs; we fixed that for
What’s New in Cocoa Touch WWDC 2016 Session 205
accessibility inspector and one thing you can do with that is, it’s really great, you can connect to an app and automatically, immediately know the accessibility properties of a given UI element. There is another really nice feature. You can also run an audit on the application running in
Developing tvOS Apps Using TVMLKit: Part 1 WWDC 2016 Session 212
access system info, play [inaudible] slideshow photos, and many more. In addition to that, the framework also provides very simple API to handle media playback. Now one important thing I would want to point out is that there is a single JavaScript context per application controller, and you manage all
Introducing Swift Playgrounds WWDC 2016 Session 408
access to a simple key/value store that is kept with the document. This lets you track preferences or even more advanced forms of progress as the learner moves through the book page to page. And Playground Books are resettable. Every change made is kept in a separate place away from
What’s New in Xcode App Signing WWDC 2016 Session 401
access to things like running on devices. There’s a list of identifiers in a profile. And at install time, the device runs down those list of identifiers to check if yours is included. And if it is, you can install the app. Profiles also allow access to entitlements. There
Introduction to Notifications WWDC 2016 Session 707
access to notification that are pending delivery for your locally scheduled notifications, as well as access to delivered notification that the user might never see while local or remove notifications. Now you can also remove notifications that have already been sent to the user, as well as update and promote
Implementing UI Designs in Interface Builder WWDC 2015 Session 407
access to horizontal. And you can see with stack views I can get the exact layout I’m looking for with very minimal constraints. Our recommendation when adopting auto layout is to use stack views and to try to use stack views first and then only when you need to
Introducing Safari View Controller WWDC 2015 Session 504
access to their credentials, their user names and passwords, but we’re not giving access to the host app to this data. In fact, Safari View Controller runs in a separate process from your application. Which categorically frees you from the responsibility of thinking about this important sensitive user data
What’s New in Safari View Controller WWDC 2017 Session 225
access to the Share Sheet that they get elsewhere on the system. They get access to some standard system activities that they might want to perform, as well as any third-party extensions that they have access to in Safari. And they get content blocker extensions that they’d have
Introducing Business Chat WWDC 2017 Session 240
accessible. You will, however, be able to white list some of your employees who will be able to test your end-to-end experience to make sure that you’re ready. So let’s talk about how we’re making it easy for your customers to find you and to
File Provider Enhancements WWDC 2017 Session 243
access to all the places where their users have their documents. Replaces the multiple SDKs that they have had to adapt to until now. The reasons for file providers to adopt is the privacy model, which is really awesome here. So document-based applications open documents one at a time
Localizing Content for Swift Playgrounds WWDC 2017 Session 410
accessibility. All of your accessibility labels should use NSLocalizedString, so that when someone is using the accessibility features in another language, they can get the proper voiceover in their language and have a great experience with your content. Now once you use NSLocalizedString you would extract this into the strings
Auto Layout Techniques in Interface Builder WWDC 2017 Session 412
accessibility, you get the larger accessibility sizes’ option, which gives a large range of values for the type to vary on. So check that out. Now it’s time to add some more views to our app. And I’d like to bring up Jason to introduce you to this
Modernizing Grand Central Dispatch Usage WWDC 2017 Session 706
access to the CPU. You have to wait each time you context switch for the rest of the queue to drain out and so you may be delayed by somebody else ahead of you in line. So, let’s look at what might cause excessive context switching. So, there’s
Introducing GameplayKit WWDC 2015 Session 608
access to dynamic behavior. Let’s think back to the tower defense example. Perhaps I want to implement a magic spell that roots archers to the ground so they can no longer move. One way to represent this might be to simply temporarily remove it’s MoveComponent. This implicitly tells
Enabling Your App for CarPlay WWDC 2017 Session 719
accessible from the CarPlay screen. If an app has posted now playing metadata and playback controls for audio content this information will also be accessible from the Now Playing app on the CarPlay Home screen. Audio will be played through a car speaker system and some SiriKit intents will be
Communication Between Designers and Engineers WWDC 2017 Session 809
accessed. This would ensure that everyone knows where to go to check out the necessary assets. Unfortunately designers don’t have similarly universal options as engineers currently do with their IDE’s and Version Control. There’s an increasing number of solutions that have come in the last few years
Taking Advantage of Multiple GPUs WWDC 2010 Session 422
access to the AMD card so that I can pull resources on it back to host memory, on your behalf, okay? So now I’ll go ahead and I draw with it and I Flush, that causes that data to get pulled up to the NVIDIA card now, and everything
Introducing Dark Mode WWDC 2018 Session 210
accessibility. In the Accessibility display preferences, there’s the Increase contrast checkbox. If we turn on Increase contrast mode, you’ll see that colors and artwork throughout the system change to make the UI easier to see for people to see with low vision. Well, now in asset catalogs, we
MusicKit on the Web WWDC 2018 Session 506
access to the entire Apple Music catalog with a REST API. This year, as Betim mentioned, we’re launching new additions to that REST API that’ll let you access the iCloud Music Library for the logged-in user. We’re also launching the MusicKit JS library. Makes it really
Mastering Xcode for iPhone OS Development, Part 1 WWDC 2010 Session 301
access, where is it? I was accessing my mutable data here and I was setting zeros in every 10, 24th position, don’t ask me why, and it seems to have crashed, so I’m going to roll back up and, holy cow, I activated the, I allocated way too
Controlling Game Input for Apple TV WWDC 2016 Session 607
access the touch surface and the buttons on the Siri Remote. The second profile that the Siri Remote supports is called GCMotion and this is what you use to access the gyroscope and accelerometer on the Siri Remote. Now note that this is different than what you might be used
What’s New in Cocoa WWDC 2017 Session 207
access to content. You can take advantage of the presence of Touch Bar to hide controls on-screen to reduce clutter. For instance, here is Keynote. In fact, the app we’re using for these presentations. Here is Keynote in presentation mode. You can see that in presentation mode, there
Making Apps Adaptive, Part 2 WWDC 2016 Session 233
access should be horizontal. Otherwise it should be vertical. That’s all I have to do. So you’ll note that here I’m not doing a lot of work. And I’m also taking advantage of the fact that StackView is smart. If I’m setting the access to
Using Apple News Format to Create Rich and Responsive Stories WWDC 2016 Session 508
access to Apple News. Having that one version to fall back on will make a much better experience. So we talked about metadata. Let’s dive into the content. So, content lives in a top-level array in your article, called components. And, each of your pieces of content is
Concurrent Programming With GCD in Swift 3 WWDC 2016 Session 720
accesses to the thread safe that access properties from your subsystem from other places. So for instance, here you can call queue sync, and you can return a value out of queue sync, and we will capture that value on the queue, and then return it to you as that
Unified Logging and Activity Tracing WWDC 2016 Session 721
access that data, there’s a new Console, a new log command line tool and one of the things you have to keep in mind is because the data is now stored in a binary format you must use the new tools to access it. So you can no longer
Making Apps with Core Data WWDC 2019 Session 230
access to managed data, and they have a few options that can make them even more useful to certain use cases, such as driving our views. The first of these is support for query generations. Query generations provide a stable view of the stores data, allowing safe and consistent access
Using Core Data With CloudKit WWDC 2019 Session 202
access to values that we store on disc. CloudKit similarly exposes a CKRecord, which is a key value like store for accessing data that you’ve stored in the cloud. These objects are described by what we like to call a model. And in Core Data we call that an
Introducing Desktop-class Browsing on iPad WWDC 2019 Session 203
access meaningful content just in case WebKit misses something. This is important for accessibility too. Wenson will dig into this later with the demo. You should also avoid forcing the user to tap twice for the most common interactions. Remember, if WebKit detects that a meaningful change happened on hover
Understanding Images in Vision Framework WWDC 2019 Session 222
access the bounding boxes and use them. Here we have a VNSaliencyImageObservation, and all you have to do is access the salientObjects property on that observation, and you should get a list of bounding boxes, and you can access them like so. Okay. So, now that you know how to
Taking iPad Apps for Mac to the Next Level WWDC 2019 Session 235
accessible directly from the Help Menu, and you can customize your Assets And Strings to make how your app looks or what your app says unique to Mac. Now, last but not the least, I’d like to give a mention to the app icon. If you do nothing, your
Introducing the Indoor Maps Program WWDC 2019 Session 245
access to the entire catalog of venues or selected individual locations. This granular control enables an organization to easily outsource IMDF mapmaking and survey to partners on a venue-by-venue basis or across the organization. System integrators wishing to make IMDF to survey for indoor positioning or build indoor
In-App Purchases and Using Server-to-Server Notifications WWDC 2019 Session 302
access to the higher tier immediately, we will also send you a CANCEL notification type for the lower tier subscription, which we have canceled. However, should a customer resubscribe after churn, you will receive only an INTERACTIVE RENEWAL notification type. In this notification, there are four more fields you should
Subscription Offers Best Practices WWDC 2019 Session 305
Access section of App Store Connect. Select Keys and make sure to select Subscriptions on the left. Click that plus button. Just enter a human readable name for your key and click generate. When you do that, you’ll see the new key in the list of active keys up
Testing in Xcode WWDC 2019 Session 413
access the result bundle’s contents programmatically, you can use a new command line tool in Xcode 11 called xcresulttool. Xcresulttool gives you complete access to the structure data contained in the result bundle. It emits this data as JSON and the format of the JSON is publicly documented and
Building Apps with RealityKit WWDC 2019 Session 605
accessing the physical body component. We’ll do the same for our card. Last we extend it with methods reveal and hide. So we create our card entity class derive from entity. Next include the RealityKit components. We’re adding the HasModel and HasCollision protocols. These protocols give us access
Metal for Pro Apps WWDC 2019 Session 608
access to the same GPU memory so it’s perfect for this scenario. Core Video and Metal provides you an easy way to leverage the benefits of IOSurface using an object called CVMetalTextureCache. Let’s see how to set it up. So here we create our CVMetalTextureCache, and we want
Supporting New Game Controllers WWDC 2019 Session 616
access their inputs, some UI best practices for probably supporting MFi, Xbox Wireless, and DualShock 4 Controllers, and our recommendations for how to update your games on macOS, if they previously supported Game Controllers through lower level frameworks such as IOKit. First, let’s talk about changes coming to the
Advances in App Background Execution WWDC 2019 Session 707
access during a processing task are accessible when the device is locked because that’s the time when we’ll typically launch your task. We do guarantee that we won’t start your task until the user first unlocks their device, so make sure any files you need to access
Cryptography and Your Apps WWDC 2019 Session 709
accessing through your application as well as guarantee the trustworthiness of that information, make sure it does not be tampered with. And the first thing you should not do here again, you’re just trying to use your custom own protocol. There is a great solution. It’s a standard
What’s New in Safari Extensions WWDC 2019 Session 720
access in the website access section of its info.plist. That’s all it takes. Now, let’s move on to the improvements made to window, tab, and page management. The first enhancement is another frequent request, an API to tell you when a page is about to perform a navigation
Source Control Workflows in Xcode WWDC 2018 Session 418
access it, use the Version Editor mode from the toolbar, seen here. Clicking and holding the selector will let you jump to a specific mode of the version editor. The comparison mode provides a side-by-side view of source code changes, allowing you to compare the file between two
Integrating Apps and Content with AR Quick Look WWDC 2018 Session 603
accessible to everyone, and we do mean everyone. Accessibility is one of our core values, and so we made AR Quick Look work with VoiceOver and switch control. So, let me show you the VoiceOver flow right now. So, I’ll triple click the home button to activate VoiceOver. VoiceOver
Touch Bar Fundamentals WWDC 2017 Session 211
accessing functionality. And there’s a good reason for a lot of that, and that’s that not every user has a Touch Bar, so if you only put something in the Touch Bar, you’re going to be losing out on functionality for a lot of users. And finally
What’s New in iTunes Connect WWDC 2016 Session 305
access to your sales and trends, ratings and reviews for all your apps, the ability to reject a binary or at least your app for the store, and push notifications, so you can be immediately notified of any changes to your apps. It is available for free in the App
How iOS Security Really Works WWDC 2016 Session 705
access your photos and your messages, gin access to your camera and your microphone, then there is corporate espionage, which is gaining access to your business emails and documents and your intellectual property, and then finally, there is direct financial benefit, stealing money directly from your online banking session or
Convenience for You is Independence for Me WWDC 2017 Session 110
accessibility. See, I say like this. Apple brought me to a phone, and they did a radical job of that. But everybody out here in the room, you bring me, you bring us to the world. Because you all smart people in this room. You got brains and you’re
Managing 3D Assets with Model I/O WWDC 2015 Session 602
access to those things in your own pipelines. Model I/O is integrated into Xcode 7, and the GameKit APIs, it’s on iOS 9, and OS 10.11. So in a nut shell, the big green box there is where Model I/O fits in your framework or in your application. We
Introducing RealityKit and Reality Composer WWDC 2019 Session 603
accessing objects that you’ve created within your scene. Now this code generation step is performed automatically behind the scenes by Xcode and establishes a strongly typed access to the content within your scene. And this has the wonderful advantage that if there’s any mismatches between the naming of
Introducing SF Symbols WWDC 2019 Session 206
accessible by open Type Features. The default scale is medium, and small and large can be selected through the Typography panel, or application-specific UI. And as a reminder, these fonts are for design only, not for deployment. So how do you use these symbols? How do you access them
OpenGL ES Overview for iPhone OS WWDC 2010 Session 415
access is exclusively for the foreground application to ensure responsiveness. So while you can use some of these other scenarios, you can create a finish task to do CPU processing in the background, you do not have access to the GP one in the background. There’s one really important
Working with Metal: Overview WWDC 2014 Session 603
access at the thinnest possible API layer, that’s where Metal comes in. So how do we do this? Well, first thing we wanted to understand is how most modern games try to manage their CPU and GPU workloads. So most games will target a frame rate. Oftentimes, it could
Introducing Network.framework: A modern alternative to Sockets WWDC 2018 Session 715
access to TCP and TLS connections. Now you might be looking at this, and you may not have cheated by looking at the description in the WWDC app. You might think that URLSession is built on the same primitives that you would use yourself. But it turns out that’s
AVKit on tvOS WWDC 2016 Session 506
access to settings related to audio and subtitles. Finally, AVKit supports Siri voice commands automatically. And as I go back to the beginning, or “What did she say?” to skip back 30 seconds and replay with captions turned on temporarily. AVKit uses the modern media stack, the same as on
Using the Camera with AV Foundation WWDC 2010 Session 409
access to a shared data structure by executing blocks on a queue and accessing the data structure only from those blocks. And because queues are lightweight, this is actually easier and cheaper in many cases than using locking. You can imagine queues being an on demand locking mechanism that only
What’s New in CloudKit WWDC 2015 Session 704
access the same data as my iOS and OS X CloudKit app. To talk about both of those, I would like to hand it over to Eric. Eric is the manager for the iCloud Server team. [Applause]. ERIC KRUGLER: Thank you. Well, thank you, Olivier. It’s terrific to be
What’s New in iAd Workbench WWDC 2014 Session 510
accessible through iadworkbench.apple.com. All you need is an Apple ID to log in. When you log in, the first page you go to is the Dashboard. Dashboard is a summary of all the campaigns, and also it gives basic metrics. To get into the campaign creation flow, let’s click
Advanced Notifications WWDC 2016 Session 708
access them inside your content extension. So when you receive the notification [inaudible] notification method, you can extract the attachments from your content. As I mentioned earlier, the attachment is managed by the system, and it’s moved to a separate location. This means that it’s outside of your
Updating Your App for iOS 11 WWDC 2017 Session 204
accessibility features such as the HUD and how you can pick that up, there’s the What’s New in Accessibility session happening this Wednesday. I recommend you go there to learn all about what’s new in accessibility in iOS 11. And so let’s talk next about navigation
What’s New in Foundation Networking WWDC 2014 Session 707
access to the task that was asking the question. So there’s a new category NSURLSessionTaskAdditions. If you look in the headers or on the NSURLLibrary, you’re going to see this category show up, and it provides asynchronous gets and, presumably, asynchronous sets, although that’s an implementation detail
Making the Most of Search APIs WWDC 2016 Session 223
access to files or databases, and pay careful attention to your memory use. Do notice that each call to CoreSpotlight has a cost, so pass batches of items instead of single items when possible. And just making batches as small as ten items will still reduce the IPC overhead by
CloudKit Tips and Tricks WWDC 2015 Session 715
access to the public database. Let’s say for demonstration purposes here that the clown central app will require an iCloud account. We talk about a couple of features that use the private database which, by definition, require an authenticated account. And by default, write access to the database requires
What’s New in Swift WWDC 2015 Session 106
access control. The problem is that Swift requires you to mark symbols Public to be visible to your unit test bundle so you can test them, leading to tons of stuff being public that really shouldn’t be. Swift 2 and Xcode 7 has solved this problem. Now your code
What’s New in Security WWDC 2016 Session 706
access SSLv3. Research has simply moved too far for both of these technologies and no longer think that they provide effective security for our users. So, these are disabled. Other algorithms are starting to show their age; specifically SHA-1 is showing more and more vulnerability to attacks, as is
Game Design and Development for iPhone OS, Part 2 WWDC 2010 Session 402
access align boundary box to boundary box, Graphics Gems 2. You kind of learn where those tricks are. Those fast algorithms, you want to get those books, have them on your shelves. Same thing applies to the Games Programming Gems which kind of has much larger systems in it. If
OpenGL for Mac OS X WWDC 2010 Session 420
access to hardware functionality. These are things your GPU could already do but you didn’t have good access to. Most of this is 10.6.3 and above only. So if you want to target these cool new things you’ve got to use 10.6.3 and above. But first some advice
Camera Capture: Manual Controls WWDC 2014 Session 508
access to the H.264 video encoder during real-time capture and manual camera controls. Good news, you’re getting both of them in iOS 8. [ Applause ] So, H.264 video encoder. We’re introducing support for access to the hardware H.264 video encoder via the video toolbox APIs, which have already
Advanced Touch Bar WWDC 2017 Session 222
accessible via the candidateListTouchBarItem property. Now once again, remember the Candidate List you see with a TextField is actually in the bar associated with the window’s field editor. Candidate data generally comes from these three sources. In the QuickType case, the data for the Candidates is supplied by NSSpellChecker
Introduction to Xcode WWDC 2016 Session 413
access the text property. I can also autocomplete that. And let’s set it equal to the string Hello. So now we have some code. We have our references. Let’s see if this actually worked by rerunning it in the simulator. So our app is launching. Here’s our
VR with Metal 2 WWDC 2017 Session 603
access our viewport dependent data like this model view projection matrix in this example. And then, finally, you do want to associate your viewport index with the instance underscore id so that the right viewport is selected when rasterizing your image. And that’s how you use the new Viewport
What’s New in Metal, Part 2 WWDC 2016 Session 605
access qualifier write, and then you can write to your texture. Read-write texture, a texture to which you can both that you can both read and write in your shader. Only a limited number of formats is reported for those textures. To use the read-write texture you will
What’s New in Core Data WWDC 2016 Session 242
access to all of that model’s generated classes. If we zoom in for a look at the other generated files for entities configured to generate classes, Xcode creates two headers that you probably already recognize from generating classes yourself. One declares the class interface and the other declares the
What’s New in CareKit and ResearchKit WWDC 2017 Session 232
accessed, here. And I can tap on this little arrow button, here, in order to collapse it. And the files which I am interested in are the PLIST files. So, there are two files that are available, here, Patient dot plist and Template dot plist. Template, as the name suggests
What’s New in StoreKit WWDC 2017 Session 303
access to the application. Allow them to keep using your app, and don’t let them get stuck on any kind of modal loading spinners or things like that. The transaction will eventually come through as a purchased one, once it does get approved. And you can just handle it
AVCapturePhotoOutput – Beyond the Basics WWDC 2016 Session 511
access to all sensitive data. In order to use any of these services, you must provide a reason string. If you don’t, your app will not be granted access to the desired service. The three specific keys you should be concerned about for Capture are NSCameraUsageDescription, NSMicrophone3UsageDescription, and NSPhotoLibraryUsageDescription
Simplifying Networking Using Bonjour WWDC 2010 Session 205
access your machine across the other side of the country, it’s wide area Bonjour and the standard Bonjour APIs that are doing that for you and if you have an application that registers with Bonjour and browses with Bonjour, then your application will work planet-wide using Back to
Harnessing Metadata in Audiovisual Media WWDC 2014 Session 505
accessibility [ Silence ] in general last year in our “Preparing and Presenting Media [ Silence ] for Accessibility” talk so check that one out for more details. [ Silence ] For the purposes of this talk, [ Silence ] just know that to get this SDH label here, [ Silence ] it involves setting track-specific metadata. [ Silence ] So
Advances in iOS Photography WWDC 2016 Session 501
accessing the camera. AV Foundation is broad and deep. If you’re new to camera capture on iOS, I invite you to review our past WWC camera presentation videos listed here. They give you a good base for today’s presentation and plus, you get to watch me age gracefully
Creating Complications with ClockKit WWDC 2015 Session 209
access to in watchOS 2. I’m going to take a look at what that means in code. So let’s zoom in on our soccer club digital ModularLarge template. This has four pieces. There is a header image that you can provide. Header text. And then there is two
CloudKit Best Practices WWDC 2016 Session 231
access the same data in their applications across all of their devices. Next, Nihar is going to come up and talk about some details when using the CKOperation API. And the configurability and flexibility you can get when you use it. Then he’s going to talk about some things
Using iTunes and App Store Affiliate Tools and Technologies WWDC 2010 Session 133
access that way. And, finally, once we have this library of music or library of other content that you want to link to the iTunes Store, you might want to construct a custom playlist for your users, so that they can buy a mix of their favorite genre of music
Introducing the New App Store WWDC 2017 Session 301
accessible and discoverable throughout the App Store. You will see them on the Today tab. We actually designed a card specifically for in-app purchases. They will be highlighted on the Apps and Games tab. And they will be searchable. They will also be featured by you on your product
Using and Extending the Xcode Source Editor WWDC 2016 Session 414
access to Xcode extensions to the text and metadata that they need at runtime to perform their operations. They don’t get access to the project structure, they don’t get access to the user’s files on disc. And why are we doing it this way? Well, stability. We
Love at First Launch WWDC 2017 Session 816
access to millions of apps in the App Store. You’ve already passed the first hurdle when someone installs your app. Great. So prevent them from backing out and deleting your app in the same way you’d probably be off to the next apartment on your list. And then
Implementing OS X Push Notifications for Websites WWDC 2013 Session 614
access. Anywhere on iOS, I can just swipe down on my phone and I will see that push notifications that were most recently posted per app grouped together in Notifications Center. And this is great, not just because I know exactly where to go to get my notifications, but because
Introducing Blocks and Grand Central Dispatch on iPhone WWDC 2010 Session 206
access to a shared data structure by executing blocks on a queue and accessing the data structure only from those blocks. And because queues are lightweight, this is actually easier and cheaper in many cases than using locking. You can imagine queues being an on demand locking mechanism that only
Debugging with Xcode 9 WWDC 2017 Session 404
Accessibility Inspector, Console and Configurator. For tvOS developers, Safari Web Inspector supports wirelessly connected Apple TVs. So this is great news for TVMLKit developers. And QuickTime screen recording also supports wirelessly connected Apple TVs. Now, while we’re calling this wireless development, strictly speaking, you’re not limited to only
GitHub and the New Source Control Workflows in Xcode 9 WWDC 2017 Session 405
access to my repository. I don’t want to flip back to Xcodes to do that. I don’t want to have to search for it. So now we work closely with GitHub so you can clone your Xcode projects right from github.com. You find the repo you’re looking
Developing tvOS Apps Using TVMLKit: Part 2 WWDC 2016 Session 229
accessible to your scripts using some simple class conventions in JavaScriptCore. Let’s go into detail into each one of these methods starting with the simplest. When your TVML application loads, the first thing that’s going to happen is, TVMLKit is going to fetch a JavaScript file that contains
What’s New in Core Bluetooth WWDC 2017 Session 712
access to their data as they’re wearing it or throughout the night, and you want to make sure that your connection to your Accessories is reliable. So on iOS we allow you to be a background application. You can continue connecting out to your accessory or you can continue
Designing for Game Controllers WWDC 2014 Session 611
accessible while they’re playing with the game pad, and so is motion control of the device. And by “standard,” we’re referring to the controls layout on the gamepad, specifically that there’s a D-pad, that there are four face buttons (A, B, X and Y, always in
Building Advanced iBooks HTML 5 Widgets and iAd Rich Media Ads WWDC 2013 Session 611
access it multiple times whenever you want to go and get access to it. So this is Instruments launched. And what we want to do is take a look at the memory profile associated with this particular demonstration. And so, what I’m going to use is this Activity Monitor
Harnessing iOS to Create Magic in Your Apps WWDC 2013 Session 310
access the normal functions of your app. For us, there’s the top right corner, there’s the small white arrow thing, you can see it? If you tap that, the UI will minimize and then you can access the other functions of the store of the app. And just
What’s New in SpriteKit WWDC 2016 Session 610
access to the latest version of the framework available without needing to be rebuilt and redeployed, so you’re always up-to-date. And it’s naturally integrated with Swift, so you can use it, all these great features, from our newest language. But the framework is only half of
What’s New in Game Center WWDC 2016 Session 611
access that same data, say if you had your free version, your pay version, or, you know, other different kinds of versions of your game, they will still, if you set that up correctly, they will still all be able to access that same data. And you can also set
Automatic Strong Passwords and Security Code AutoFill WWDC 2018 Session 204
access to the credentials stored in Keychain, so users’ privacy is preserved, as well. The iCloud Password Keychain Manager can help users log into and create accounts in your app. We’ve added some new features on iOS 12 to help make account creation and login even easier. I’m
Introducing Apple File System WWDC 2016 Session 701
access or mutate them. And the data structures are also relatively rigid. And by this we mean things like the file record, or catalog record in HFS+, which is more or less equivalent to an inode in other filed systems, is fixed in order to add new fields, to expand
Hidden Gems in Cocoa and Cocoa Touch WWDC 2013 Session 228
accessed the source code and we didn’t know that. And this is one of those. So, NSExpression can actually parse mathematical expressions. So here, I’ve got 3 plus 5 times 4e10. And if you’ve ever messed around with this spotlight menu in the upper right hand corner
What’s New in ClassKit WWDC 2019 Session 247
accessible to specific users like the teachers who have been granted privileges to access that data. But let’s move on to an example. I’m going to use an imaginary application as an example today. This will be a simple app that introduces the user to writing code. It
Monetize and Promote Your App with iAd WWDC 2015 Session 503
access to a subset of those filters, and in-app purchases allow users to gain access to even more incredible filters. This is my app development timeline, which may look similar to your own. Starting with the design phase, then I’ll be developing the app, launching it in the
Optimizing I/O for Performance and Battery Life WWDC 2016 Session 719
accesses memory, and ultimately fetches data to or from the disk. If the network is involved, the network-based radios are interacted with as well. The combined power cost of all of these competents makes I/O a heavy operation in terms of battery usage. Since I/O has such an adverse
Introducing MapKit JS WWDC 2018 Session 212
accessible via keyboard access and with voiceover. It has the beautiful cartography that we all know and love in Apple Maps. And it has support for native gestures like Pinch to Zoom, Two-Finger Rotation, and also Shift, and Two Finger Scroll to zoom in. It also uses something that
Networking with NSURLSession WWDC 2015 Session 711
access to a shared data container, which both your app and its extensions can access. And this year we have introduced new API to let you create a cookie storage associated with that group container. And I would like to show you how to do that. So what you want
The Accelerate Framework WWDC 2013 Session 713
access to a lot of functionality. There’s more than 2,000 APIs available on the Accelerate Framework. Throughout the rest of the talk we’ll break this down into four easy-to-remember categories and show you what exactly is available. Think accurate. We spent a lot of time
What’s New in State Restoration WWDC 2013 Session 222
access that state restoration archive, so in this case we take a simpler path. We let the application get its work done, fetch its assets, do whatever it needs to do in the background, but we don’t try to restore state, we won’t be able to access the
Introducing On Demand Resources WWDC 2015 Session 214
access. And in a random access app, especially when the assets are larger, the content in total, what you want to do is tag more assets and read things in progressively so that as soon as the user makes a decision, they can start to see some progress of that
Improving Your App with Instruments WWDC 2014 Session 418
accessible to multiple apps in the system, even system apps can have behavior provided by your extension, you may want to select a process other than your main app executable when you’re profiling your sharing extension. Now for this demo I’m actually going to select a today extension
What’s New in App Store Connect WWDC 2019 Session 301
accessible to the global audience. We are always working hard to introduce new language support and just this past year we introduced nine new languages bringing the total number of languages supported by the App Store to 37 languages. [ Applause ] Actually let me pause here and give you a pop
Extending Your Apps with SiriKit WWDC 2016 Session 225
accessing the same data model. In the case of our chat app that meant it was the database as well as the data accessor methods written for it that could be moved to an embedded framework, so it could be reused by application and extension. After moving that, we took
Building Watch Apps WWDC 2015 Session 108
access to the mic on the Watch itself and provide a great experience. And you have access to the Keychain now, so you can provide a really secure experience for your user. So in recap, we were able to discuss the architecture of an app, we added a Watch app
Optimizing App Assets WWDC 2018 Session 227
access of collection is graphics classes. Now these actually correspond to two things. One, they correspond to Metal feature family sets, which if you’re a Metal programmer you may be familiar with, this is the GPU family concept. But they actually correspond also exactly with a particular processor revision
Designing Across Platforms WWDC 2017 Session 804
accessible with background processes even when you’re not using the iPhone. Because your phone is personal and private, it’s protected with Touch ID. And, to make those short engagements really easy and fun, you have a very detailed touch screen. The Watch is quite similar. It’s also
Adopting Advanced Features of the New UI of OS X Yosemite WWDC 2014 Session 220
accessible to the user again, but the scroll view presents kind of a challenge for us. We want it to start off unobscured by the title bar and we don’t want the scroller to be obscured by the title bar either. However, if we just leave the scroll view
Achieving All-day Battery Life WWDC 2015 Session 707
access the network right now, don’t access the network until there’s something really important. In terms of design, anything that you can do to offload to the system and let the system decide when, give it some variance of in the next 10 minutes, the next hour, the
SwiftUI On All Devices WWDC 2019 Session 240
access the small and mini sized controls that we have available on the MacOS system. And that might be great if you want to make an entire inspector use small controls. Next multi windowing. You know multiple windows have been just a staple of the MacUI for decades, and people
What’s New in Xcode 11 WWDC 2019 Session 401
accessibility settings. So, I can change the interface style from light to dark to see how my view got updated. I can set different accessibility settings, for example, the bold text. From this overrides, it allows me to test out my app at runtime with these different settings, without actually
Introducing Search APIs WWDC 2015 Session 709
access and search one of the things we found is that users want to search for things they have seen in the past. NSUserActivity makes searching this information and indexing it very easy. It sort of works like how a web browser maintains your browsing history and the user activity
What’s New in User Notifications WWDC 2018 Session 710
access the currently presented notification actions to the user as well as replace these actions by setting a brand new array of notification actions for your content extension. So going back to our sample, what if after the user took the like action we wanted to replace it say with
Building Visually Rich User Experiences WWDC 2017 Session 235
accessibility features and dynamic type right out of the box. So, I said that these let you customize things to some degree, but as soon as you want to kind of go beyond just setting a tint color or an image override on something, you might have to start dropping
Introducing Podcast Analytics WWDC 2018 Session 501
access to notification settings for all of your shows. That means if you only want to get notifications for your favorite show, 99% invisible, it’s as simple as toggling the switches on this single settings page. So, last year, at WWDC, we announced that Apple would be launching Podcast
Implementing AutoFill Credential Provider Extensions WWDC 2018 Session 721
access their safe credentials, iOS 12 allows password manager apps to participate in AutoFill for the same experience as iCloud Keychain. In iOS 12, there is a new UI for password AutoFill settings, which allows users to select an app to provide credentials to AutoFill, in addition to or instead
What’s New in Managing Apple Devices WWDC 2018 Session 302
access to this program as well. The next slide is an evergreen topic. Every year we add new Setup Assistant panes in one or more of our OS’s, and this year is no exception. And, we continue to want to enable organizations to configure the experience they provide to
Introducing Text Kit WWDC 2013 Session 210
access to features like interactive text coloring. As the user types into your app, you can change attributes. Let’s pretend I’m building an interactive client for a popular internet messaging service. Just pretend, this is hypothetical. I type in my friend’s handle, and it just sort of
Building Faster in Xcode WWDC 2018 Session 408
access to all of the same build settings that were available to you throughout the context of your run script phase. The important thing to note here, though, is that these files cannot be modified or generated throughout your build process. They are read when your build process starts. And
Creating Independent Watch Apps WWDC 2019 Session 208
access for calendar, contacts, motion, and even other types such as location directly on Apple Watch. And now with watchOS 6, we now support giving health authorization directly on Apple Watch. [applause] Thank you. So the user can elect to give access to all of the data requested or even
Introduction to Swift WWDC 2014 Session 402
access the first item in the Array just using subscripting. Here we’re extracting eggs. If we want to add an item to the Array, we literally just add it to the Array, we add it to the end. Here we’re adding a third item, flour. We can also
iMessage Apps and Stickers, Part 1 WWDC 2016 Session 204
access to Apple Pay; and your iMessage app will also be able to use the camera. And we believe these technologies and features will allow you to create great apps for your users. Now let’s talk about supportive platforms. iMessage apps will only run on iOS 10. However, the
Building Apps with ResearchKit WWDC 2015 Session 213
accessing that step’s property. Now if you need conditional logic, there is now another version of ordered task, a subclass of it, called ORKNavigable ordered task, which allows you to specify predicates on the results and corresponding destination steps. This is a recent addition to the framework from an
ResearchKit and CareKit Reimagined WWDC 2019 Session 217
access to her contacts so that she can get directions to the office or make a call to her doctor if she has an emergency. Now, when we make a CareKit app, there’s two major steps that we have to walk through. The first is that we need to
Optimize Your Code Using LLVM WWDC 2013 Session 408
accesses on modern architectures are expensive compared to most other operations. The compiler tries very, very hard to hide that cost by moving memory accesses around, removing redundant operations, killing dead code, but to do that effectively, the compiler needs to be able to analyze which pointers may possibly be
Creating Extensions for iOS and OS X, Part 1 WWDC 2014 Session 205
access to information you want. And of course, we support this on Yosemite and you can see it looks gorgeous blended right over that new background. It’s just beautiful, stunningly beautiful. The team did a great job. Next, I want to show you the Custom Action Extensions. You can
Engineering for Testability WWDC 2017 Session 414
access to all of our app source code. UI tests on the other hand, are great when you need to test large chunks of code, working together. Of course, we need to keep in mind that unit tests do have access to all of our app’s source, whereas UI
Introducing Accelerate for Swift WWDC 2019 Session 718
access an array’s uninitialized buffer to return the result of a computation. Although not quite as fast as passing existing storage, it’s still faster than the scalar approach and, in some cases, will simplify your code. Another common task that vDSP can vectorize is type conversion. This example
AUv3 Extensions User Presets WWDC 2019 Session 509
accessed by using this new user presets property which returns an array of AU audio unit presets. These are presets that are created by the user and can be modified later on. The audio unit exposes them to all audio unit host applications. We have a new property called support
Calendar Integration with Event Kit WWDC 2010 Session 136
access to the calendar data on the device. It’s split into two parts, mostly as a function of the way we built our OS. But we have a non-UI side and a UI side. So, in EventKit, we have all of the APIs that allow you to get
What’s New in Xcode 6 WWDC 2014 Session 401
access to the model data that it’s going to present. For our application, most of our model data is stored in a user session class. So let me add a property to hold that now. So I’ll call it userSession and declare its type. Naturally, we have live
Advanced Scrollviews and Touch Handling Techniques WWDC 2014 Session 235
access to the gesture recognizers themselves. But in 2012 with iOS 6, there was another fairly large internal update to UIScrollView that added support for resting touches. And so what I mean by this is that in previous years, prior to iOS 6, if you put a finger down on
Expanding the Sensory Experience with Core Haptics WWDC 2019 Session 223
access hundreds of millions of taptic engine equipped iPhones starting from iPhone 8 onward. And we’ve taken care that your haptic patterns will have the same feel across all of these products, so much so that you’re going to be able to prototype and release just using one
Integrating SwiftUI WWDC 2019 Session 231
access directly top our data model. So now, whenever we make changes perhaps in a text field, those changes are updated directly in our data model. So as you can see, the BindableObecject protocol is very simple. Again, just one property that you have to implement. And it’s incredibly
What’s New in UIKit Dynamics and Visual Effects WWDC 2015 Session 229
accesser on the dynamic item protocol. And now you can specify an ellipse type, which will derive from the bounds width and bounds height on the protocol. And finally, you can specify a UI BezierPath to use for the collision bounds of your dynamic item. Now, to accomplish this, we
Best Practices and What’s New in User Notifications WWDC 2017 Session 708
access all these different features for notifications? For this we introduced two new frameworks last year, namely User Notifications and User Notifications UI. We went in depth covering all those different APIs at last year’s WWDC and we highly encourage you to go check out these two sessions from
Mysteries of Auto Layout, Part 2 WWDC 2015 Session 219
accessibility identifiers on your views, those identifiers will show up in the log paired with those views, so you can find the view you are looking for. That’s how I got Saturn from the constraints we saw earlier. It has an accessibility identifier called Saturn. You can also set
System Trace in Depth WWDC 2016 Session 411
access rather than allocation. So you can ask for a large allocation from the kernel, let’s say 500 meg, but you don’t actually back that with physical memory until you start touching or accessing the pages of that allocation in your process. So it’s something to think
What’s New in Instruments WWDC 2010 Session 304
access the views and see the data in Instruments. So now you can collapse away just about anything you don’t want to see. Collapse away the track view, collapse away the Instruments list and configuration panel on the left. Collapse away the extended detail view. And if that’s
Marvel: Making a Difference in the Real World WWDC 2016 Session 108
access to an email account called [email protected], and people can write in letters. Usually they write in and say, why can’t Peter Parker marry Jane, be happily married ever after? Why can’t Rogue and Gambit just be together? Why are you so cruel to them? Because drama, that
Introducing ClassKit WWDC 2018 Session 215
access to that report from within the assigned handout. So, this entire flow involves you having a teacher managed ID, a student managed ID, and maybe a couple of devices or even one device from which you’ll be logging in and out, so you can test. But with all
What’s New in UICollectionView in iOS 10 WWDC 2016 Session 219
access your data models, set them on the cell, and return them back to the system. Now, right before that cell’s about to go on screen, we’ll call willDisplayCell. This will give your app a chance to do any other last-minute work it needs to do before
Creating Great Localized Experiences with Xcode 11 WWDC 2019 Session 403
Accessibility Identifiers. These identifiers are unique, stable, and we’ll guarantee that your test can run in any language. You can easily set them up, setting the property of the same name in code or if you’re using interface Builder to create your UI element, you can define them
Audio Unit Extensions WWDC 2015 Session 508
access an Audio Unit’s View Controller, then you also need to use a new asynchronous method to do that. There is a new property, Request View Controller. It is also asynchronous. You can read about the details of that in Audio Unit properties.h. So about these asynchronous methods. You
Enhancing VoIP Apps with CallKit WWDC 2016 Session 230
access the app’s list of calls and references them by UUID which we’ll show later. Next, we have we create a CXProvider instance and we pass it something called a provider configuration which we see here. The provider configuration is something we’ll go into more detail later
Developing a Great Profiling Experience WWDC 2019 Session 414
access to all the explicitly specified fields including that format string and then the arguments you provide. But in Instruments you’ll also get access to all of the implicitly specified fields. Things like the timestamp or the calling thread which comes in really useful. If you’re using a
Best Practices for Mastering Auto Layout WWDC 2012 Session 228
access on iOS and you pass horizontal or vertical and if you call this in the debugger, keep in mind that horizontal is 0 and vertical is 1 so you don’t have to type out those long constants. And it’s also possible that the layout is ambiguous and
Improving Battery Life and Performance WWDC 2019 Session 417
access to a powerful set of logs that you can see from your public release such as crashes and CPU energy reports. And these help you understand problems that are maybe specific to certain regions or specific to certain customers that may not have the same conditions as you. And
Getting the Most Out of Safari Integrated Developer Tools WWDC 2010 Session 507
access to DOM elements that were probably generated through JavaScript, which you won’t be able to find in your editor. So something neat about this DOM hierarchy is as you hover over the elements, they actually highlight on the page. So some that move might not work perfectly, but
API Design for Cocoa and Cocoa Touch WWDC 2010 Session 138
access into an array. Here’s another example where you’re calling a method which expects a caller but you’re calling it with a string, you know sort of maybe looks like a caller. And an invalid parameter value, we often consider nil not to be a valid string
Designing Intuitive User Experiences WWDC 2014 Session 211
accessed by tapping that button. And these conventions that exist, at least for iOS and Mac, are not at all arbitrary. Swiping to delete isn’t just intuitive because of the thousands and thousands of apps that support that same interaction. It’s consistent, or sorry, that’s a part
Building Activity Classification Models in Create ML WWDC 2019 Session 426
access sensor data is to use Core Motion. For more information, please refer to our previous sessions as well as Apple Developers Documentation. But from a high-level point of view your app could simply access a list of the sensors. So Core Motion Framework. You can also manipulate the
Best Practices for Building SpriteKit Games WWDC 2014 Session 608
access to the high-performance engine running underneath SpriteKit. In this case it’s running inverse kinematics. And this little scene was set up in Xcode. And very quickly just clicking and setting up a couple of parameters. Here’s another one that’s actually new and cool. You can
Building Great Workout Apps WWDC 2016 Session 235
access to your app while they’re using it to workout. Finally, we’re really excited to announce that workout apps in watchOS 3 can now be set up to run in the background. Let’s talk more about background running. [ Applause ] Background running will elevate the experience of your
Safari, Internet and Web State of the Union WWDC 2010 Session 500
access. This is the 1Password overview screen. Everything you see here is built using open web standards. On the left, you see logins. They help you to quickly login to different websites. In the center identities they help with signing up for new online accounts and on the right credit
Profiling in Depth WWDC 2015 Session 412
access a property on an object. Its purpose is to look up the method implementation for the selector and invoke that method. That’s a long way of saying that’s how we do dynamic dispatch in Objective-C. Objc msgSend is extremely fast and does not push a stack
Introducing the Modern WebKit API WWDC 2014 Session 206
access to a ton of cool features. And we’re using the multi-process architecture that we’re also using on Safari on both OS X and Lion, and now on iOS with iOS 8. In fact, one of the goals we had with this modern API was to take
Core Animation in Practice, Part 2 WWDC 2010 Session 425
access, which is normal to the rotation. So, when we get that, that’s going to do what we saw on the previous slide, and then finally we’ll just set the duration at the animation of the layer, and off we go. So, one final animation point, which is
Speech Recognition API WWDC 2016 Session 509
accessing speech recognition. Authorization can be changed later in the device’s privacy settings. Let’s see what it looks like to recognize a prerecorded audio file. We’ll assume we already have a file url. Recognition requires a speech recognizer which only recognizes a single language. The default initializer
Design Tips for Great Games WWDC 2017 Session 811
accessible, such as adding Closed Captions or supporting Dynamic Type. You can also, just like in Mushroom 11, support Left and Right-Hand Mode, or you can support Color Blind Mode, like in KAMI 2. And one of the coolest Accessibility updates that I have seen is from Blackbox, which
Sensing Device Motion in iOS 4 WWDC 2010 Session 423
access them in your code. Then, we’re really deep dive into some of the features and give you a good understanding of what they are. Finally, we’ll write some code. But before we get to any of that, let’s talk about an idea. This is an idea
Advances in AR Quick Look WWDC 2019 Session 612
access to the physical image. So, if no anchor is detected, AR Quick Look will directly place it on the first plane that it finds. And later, when it detects the specified anchor, it will magically move over and attach to the real-world image. And finally, if the anchor
What’s New in Cocoa Touch WWDC 2010 Session 101
access to the video cameras through AV Foundations so you’ll be able to capture right off the camera. You can put your own layers over the views that are drawing, right. So rather than putting up an MP media player controller and trying to get stuff in front of
Authoring Rich Playgrounds WWDC 2015 Session 405
access to the name of our place, so we can just go ahead and throw that into the initializer there. So now, when we Quick Look our place again, we should see, cool, we’ve got Moscone Center there and everything is starting to look a bit more like a
Introducing Scene Kit WWDC 2012 Session 504
access all the objects and all the property of your scene so you can of course move, scale and rotate the objects in your scene. You can also add some animations, change the colors or change the textures, adjust the lighting etc. To do this, you need to know what
Core ML 3 Framework WWDC 2019 Session 704
accessed directly through that interface. We encapsulate away a lot of those heavy details and it’s all contained within that one model file. So just like in making a prediction, we supply a set of inputs and you get a corresponding set of outputs. Making an update is easy
Nearby Networking with Multipeer Connectivity WWDC 2013 Session 708
access point or if they’re connected to different access points. So we think this will bring nearby networking on iOS to a whole new level. We’re very excited about this. So what are the features of the framework? So as I just mentioned, we support multiple wireless technologies
Focus Interaction on tvOS WWDC 2016 Session 215
accessibility. The good news here is that the Focus engine again does some work for you. For example, if the user wants a high-contrast user interface, the Focus engine will helpfully put an extra ring around the currently focused item to really make it pop out on the screen
Keeping Your Watch App Up to Date WWDC 2016 Session 218
accessible dock. They can then swipe through the dock to get a quick look at their data in one place. This is now also part of your app. People are using your application’s data in many different ways and expect all of those ways to be in sync and
Getting the Most out of App Analytics WWDC 2015 Session 303
accessible to more customers. This is the type of data that we deliver with App Analytics. With all of these, our ultimate goal is to help you build a better app. You are here to learn tips and tricks from experts so you can build a better app. That’s
Improving the Full Screen Window Experience WWDC 2015 Session 221
access what’s attached to the window. You can add them. You can insert them at a particular index. And you can remove them at a particular index. But it’s really easy to just add and remove. And so here’s what you’ll typically do. You’ll call
What’s New in Kext Development WWDC 2013 Session 707
access to the system hierarchy, the whole hierarchy down from /System and everything in there. So, be proactive and stay out of there because changes are coming that will require that you not be there. So all the other common locations that I talked about, applications in your application bundle
Streaming Audio on watchOS 6 WWDC 2019 Session 716
access your audio content, they no longer need to sync audio content to their watches, and they now have access to live audio programing like sports events. WatchOS 6 supports two main ways to stream audio to Apple Watch. HLS and custom audio protocols. Let’s dive into a bit
Prototyping: Fake It Till You Make It WWDC 2014 Session 223
accessible on one screen. Problem solved. But wait a second. Is this really a good idea? If you think about it, the map is only half of its original size; so is the list. We have to pan the map more. We have to scroll the list more in order
Delivering Audio and Video Using Web Standards, Part 2 WWDC 2010 Session 502
accessible through CSS. Style it however you want. For the next step, we’re going to push past what the built-in controller can do and add functionality that it never could in the first place. So subtitles, why should you care about subtitles? For one reason, perhaps you have
Metal Performance Optimization Techniques WWDC 2015 Session 610
access. And you do this with the shared storage mode option when you create your resource. And this creates resources in memory shared by both the CPU and the GPU. Now, this is actually the default storage mode on iOS, iOS devices being unified memory architecture, so the same memory
Debugging with Xcode WWDC 2013 Session 407
access to Quick Looks which are also available in the variable view. We talked about some drawing diagnostics that you have access to. And we talked about XPC Services and the debug capabilities in Xcode. I know many of you; perhaps all of you have new features or new applications
What’s New in NSCollectionView WWDC 2015 Session 225
access properties of that instance. All we really are going to need to do is wire our item up to the represented object, i.e. its ImageFile, and then all of these controls will just populate, including the image view over here. Because we’re using a separate nib file for
What’s New in watchOS WWDC 2018 Session 206
accessing encrypted data, which is separate from off. Again, these shortcuts are going to execute on iPhone over Internet. The richest experience for users will always be with a Watch app that can handle the shortcut locally, either by launching the app or by executing the intent in the background
Strategies for Securing Web Content WWDC 2018 Session 207
access to all of your user’s cookies through this API. You should not be offering them that much power. Instead, you should protect your cookies, especially your authentication cookies that are effectively a way to log in as a user by marking them Http Only. This means that this
Continuous Integration with Xcode 6 WWDC 2014 Session 415
access for everyone back on. So that’s pretty good for me. I think that’s a good set of access controls for my server. From OS X Server you can also set up hosted repositories. If you’d like Xcode Server to host your repositories for you, you can
Getting Ready for Business Chat WWDC 2018 Session 232
access to a Business Chat account. Since then we’ve had a ton of interest with thousands of businesses and developers submitting applications for Business Chat. Thank you very much for the overwhelming fantastic response and thank you for your patience. After a few months of working closely with some
What’s New in Testing WWDC 2018 Session 403
access to a completely separate data container. In practice, the fact that class is executed on different clones will likely be invisible to your tests, but it’s something to be aware of. So, where can you run tests in parallel? You can run unit tests in parallel on macOS
What’s New in Cocoa WWDC 2015 Session 202
access the elements of the array as instances of the specified class or instances of a subclass as well. So this is now this works. Note that kindof is a compile time facility like most of the things I have talked about here. There is no runtime code changes, there
Multitasking Essentials for Media-Based Apps on iPad in iOS 9 WWDC 2015 Session 211
access to the camera inside your application and use the entire iPad as a view finder. Now, if using the camera is not the primary feature of your application, you will likely want to adopt the multitasking enhancements on iPad. Our notes app is a great example of this. People
Discovering AV Foundation WWDC 2010 Session 405
access to in order to read information out of its container. The second one is a stream-based asset. We have a lesser degree of control over what we can read out of that asset. It’s essentially being beamed to us by a server. There’s a little bit
OpenGL ES Tuning and Optimization WWDC 2010 Session 419
access or modify some kind of resource that the GPU also happened to be using. And so this can happen in a number of ways. It can happen because you’re reading back the contents of a frame buffer that you rendered to or you’re modifying the contents of
CarPlay Audio and Navigation Apps WWDC 2018 Session 213
access your app’s information and, ultimately, CarPlay will timeout. So, if your data needs to be accessed while the phone is unlocked, you’ll need to audit your app’s data intergradation policies. The other issue is that you may be driving in areas, or CarPlay users are driving
Getting to Know Swift Package Manager WWDC 2018 Session 411
access to existing packages. New API can be adopted independently of changing to a new Swift language version for your packages’ source code. To specify which version of the API is being used, we’re using the Swift Tools Version command at the top of the package.swift manifest file. This
Behind the Scenes of the Xcode Build Process WWDC 2018 Session 415
access APIs from the iOS, or you want to access implementations from your own code, you usually have to include something what is called a header file. A header file is a promise. You promise somewhere else this implementation exists. And they usually match. Of course if you update only
Power and Performance: Optimizing Your Website for Great Battery Life and Responsive Scrolling WWDC 2013 Session 607
access the web inspector through Safari’s develop menu. And then the tab that’s most interesting in terms of power usage is the timelines tab. So you can switch to that tab and then you would start recording a timeline by pressing the button. And then interact with your
Introducing iAd Workbench, The Best Way to Market Your App WWDC 2013 Session 604
access to creative agencies and may not want to spend even for all of that. You get the benefit of Apple designed beautiful templates here. The templates have been designed to ensure that your app is highlighted in the banners. So we have five templates, each with five colors. So
Live Screen Broadcast with ReplayKit WWDC 2018 Session 601
accessible to the servers that you’re using. So when you’re streaming your game play to Mobcrush or YouTube, share your screen in WebEx video call. Use TeamViewer to work as customer support, or maybe stream your drawing app on a Facebook. All of that is powered with ReplayKit
What’s New in the LLVM Compiler WWDC 2010 Session 312
access of our releases today is we have two releases, we have the Xcode 3 Production Release and the Xcode 4 Developer Preview. So, today, I’m going to start by talking about Xcode 3 and the new features we have in the Production Release. And then later in the
What’s New in watchOS WWDC 2017 Session 205
access to the now playing UI right from inside of a workout as well as surfacing important information throughout your day in a new Siri watch face. And of course, we’re introducing a ton of new features for developer so you can continue to create great watchOS apps. Now
Introducing Drag and Drop WWDC 2017 Session 203
access to their data to just their app, to other apps developed by the same team, and then, of course, to all apps on the system. And when we GM, we will also be supporting manage configuration for our enterprise customers. So finally, the most important thing was that it
What’s New in Web Development in WebKit and Safari WWDC 2015 Session 501
accessible for people coming to JavaScript from languages like Swift or C++ or other class-based syntax languages. So here I have a simple example of a polygon class written in the standard prototype syntax. But in ES6, a new syntax has been introduced, an object, a class-based syntax
Build Better Apps with CloudKit Dashboard WWDC 2017 Session 226
access. But, every time there’s a modification, when there’s network availability, we want to send that back to the server. The server holds the truth. And, if we use in CloudKit what’s called subscriptions, we can have the server send push notifications to my other devices or
Introducing Core ML WWDC 2017 Session 703
access to the underlying model. So for more advanced use cases, you can use it as well to programmatically interact with it. We take a look inside the MLModel class, we can see that there’s a model description which gives you access to anything you saw in the metadata
What’s New in Safari and WebKit for Web Developers WWDC 2013 Session 600
accessibility and better integration with other devices. And finally, I’ll tell you about a bunch of smaller enhancements that I think you’ll find very handy. Before we dig in, I want to take a moment to talk about the dash WebKit prefix. This is a technique that we
Turn-Based Gaming with Game Center WWDC 2013 Session 506
accessible from the match. The next class, the participant, you know, this is the seat. This is how many people are playing the game and who they are if you know. Alright so, if we know who they are it’s a player ID but you got to keep in
Delivering an Exceptional Audio Experience WWDC 2016 Session 507
access the file system or sockets. We can’t log. We can’t even call a dispatch “async” because it allocates continuations. And we have to be careful not to interact with the Objective-C and Swift runtimes because they are not entirely real-time safe. There are cases when
Metal Game Performance Optimization WWDC 2018 Session 612
access to an unprecedented amount of power. But [inaudible] in a very small form factor. So more apps use more resources on the device, the system may begin enacting measures in order to stay cool and responsive. Also the user may have enabled a low power mode condition, which will
Wallet – The home for Apple Pay and more WWDC 2015 Session 701
access via PassKit, our framework. The second value we use is a passTypeIdentifier. And now this defines the class or the category of passes that this particular pass is. You register for this in the developer portal as well. We also use this value to group passes together. And lastly
Swift API Design Guidelines WWDC 2016 Session 403
accesses. Compiler validates that these are actually Objective-C properties, gets the right names. And then produces the string that we pass down into the frameworks. And so between #selector and #keyPath, you can essentially not worry about the Objective-C names. You just write everything in terms of the
What’s New in Swift WWDC 2016 Session 402
accessibility engine was rewritten in Swift. Why did we do this? We just didn’t rewrite code just for the sake of rewriting code. The code had kind of grown organically over time as features had been added and it was time to refactor it. But also some new functionality
What’s New in Signing for Xcode and Xcode Server WWDC 2017 Session 403
access to any special distribution signing certificates. The archive contains both the machine code and bitcode of your app, as well as your debugging symbols, all bundled up together. And once you’ve built one of these you can use XCode’s Organizer window to generate an IPA and upload
Going Beyond 2D with SpriteKit WWDC 2017 Session 609
access to your devices rendering hardware. Instead of keeping all three separate we think it’s time that SpriteKit breaks out of its 2D mold. SpriteKit has a great deal to offer to make using it in combination with SceneKit and Metal attractive. Since they both use Metal under the
What’s New in Testing WWDC 2017 Session 409
accessibility data, the same semantic information used by VoiceOver technologies as a kind of searchable structure for the application. To evaluate a query the test process requests what we call a snapshot of the current data. This request is sent from the test process to the application so these are
Increase Usage of Your App With Proactive Suggestions WWDC 2016 Session 240
access to Siri so that we can say, “Call this place,” for instance. And finally, we’re indicating that this content supports both navigation and phone call. This way, the results will be presented in the spotlight UI. In Spotlight Search results UI, with the right quick action icons to
Integrating with Game Controllers WWDC 2013 Session 501
Access to the MFi program grants technical information such as the specification that we have put together concerning MFi game controllers. Hardware components such as the lightning connector that some of you may choose to use in your game controller. Test tools, technical support and last but not least certification
Advanced Gesture Recognition WWDC 2010 Session 121
access to everything. So what what do you have to do. Subclass UIGestureRecognizer. All right, what do I implement. Well, there’s just one single most important thing to well actually sorry we have to get to that in one second. Before we do that, keep in mind that UIGestureRecognizer
What’s New in iTunes Connect WWDC 2013 Session 306
access that same data. That is App Transfer. It’s available today, and we’re very excited to see how you use it. [applause] Dave: With that, I’m going to turn the time over to Nick Oogloff [phonetic] to talk about our automation enhancements. Nik: I’m Nik Uglov
Implementing Engaging UI on iOS WWDC 2013 Session 226
access. And because we want these to be evaluated at exactly the same time, we create a motion effect group. We add both of those motion effects and then we add that to the button. So each button has its own grouping of motion effects. And that’s how each
Creating Secure Applications WWDC 2010 Session 204
access to a file. If you can’t execute through the parent directory of a particular file, you can’t see the file much less read it. However, world-read permissions are not appropriate for everything. So if you have a file where world-read permissions aren’t appropriate or
Introducing Watch Connectivity WWDC 2015 Session 713
access to the outstanding user info transfers in the queue. Next, let’s talk about file transfer. An example we will use for file transfer is this image-editing app. The user can edit images on the iOS side, and then they can select their favorites, and those favorites are
Your Apps and Evolving Network Security Standards WWDC 2017 Session 701
access to users’ systems. We removed trust in all MD-5 signed certificates across our platforms in previous years. SHA-1 just recently had an attack. The Shouted attack was performed earlier this year, and so this is the freshest information. Knowing that the SHA-1 one attack was imminent
Debugging in Xcode 6 WWDC 2014 Session 413
accesses the run data to generate this Bezier path that they gets overlaid onto the map. So let’s look at that a little further. Well I’m going to click on the map and I’m going to hit this whoa, scrolls really fast. I’m going to hit
Writing Great Alerts WWDC 2017 Session 813
access to user data, such as contacts, location, or financial information. We provided a format for your use, and put a lot of thought in its content. It explains concisely and clearly what data is requested, and how it will be used. Alerts are also used to notify people of
Localizing with Xcode 6 WWDC 2014 Session 412
access resources within those bundles. And when you use NSBundle’s APIs, they automatically get the most appropriate resource for your current language. And what’s more, building bundles is directly supported by Xcode. So when you have localized resources in your application, you don’t need to write scripts
Advanced Swift WWDC 2014 Session 404
accessing part of the object in a way that a subscript operator does. And that’s going to make it a major obstacle to somebody trying to actually understand your code. And finally it’s okay to add new idioms that everybody who reads your code is going to have
Enhancements to SceneKit WWDC 2015 Session 606
access to the low-level APIs, which are OpenGL and Metal. SceneKit was introduced on OS X on Mountain Lion and last year on iOS in iOS 8. Last year, we added a few new features to SceneKit to make it ready for casual games, like particle systems, physics, force
Introducing Multiple Windows on iPad WWDC 2019 Session 212
access the stateRestorationActivity directly on the session so that should you do a background fetch and need to update a particular one, you can go and find which one you’d change data for. So, I’m going to give you a quick demo to show you what it’s
Launch-on-Demand WWDC 2010 Session 210
accessible is not what we want here. Because then that means we have to keep things running all the time or the client has to have knowledge of the server’s life cycle. So we can sum all this up by just saying we have to learn to let go
Integrating with Siri Event Suggestions WWDC 2019 Session 243
access it from my view controller. I’ll create the INFlightReservation object here. Now, this method creates an INFlightReservation object. This object contains all the reservation details about the flight. Let’s take a look at some of the properties. First up is the itemReference. This is a unique identifier
Talking In Pictures: Reconstructing the Building Blocks of Language WWDC 2016 Session 106
access to words. So instead of having to speak them out, instead of having to remember how they sounded, they could use pictures to communicate. So, for example, if a kid wanted to say that they were hungry and they wanted something to eat, they could go into the app
Advanced CloudKit WWDC 2014 Session 231
accessing it at the same time. And if every one of those clients is trying to save if, save the same record and you’re locking on that, most of those clients are going to be hitting locking errors, they’re going to hit conflicts, and they’re going to
Exploring New Data Representations in HealthKit WWDC 2019 Session 218
access to properties on the quantity series samples themselves, like device information, source, revision, or metadata, you can set include sample to true on the query before executing it. And notice that, in this case, while enumerating these quantity series you can get the corresponding quantity series sample in the
Core OS Networking WWDC 2010 Session 200
access to information on the fly, it’s really, really a cool thing for them to be able to expect. And what it means though for you as developers is a real significant change in your mindset in terms of how you develop networking applications. The mobility is not the
Extend Your App’s Presence with Deep Linking WWDC 2017 Session 250
access to the content and functions in your app. The way it works is your app is launched, you receive a link, and the app displays the content. The same can be done to complete a function in your app automatically. Here’s an example of launching a video from
Metal for Ray Tracing Acceleration WWDC 2018 Session 606
access it. So, this is an elegant way to fix our synchronization problem. But, clearly, having a GPU, potentially, a very powerful GPU just sitting there waiting is not good. So, we need to make this wait as short as possible and, ideally, we want the GPU working instead of
What’s New in Core ML, Part 2 WWDC 2018 Session 709
access to a bunch of different training libraries that can all be converted to Core ML using the new ONNX converter. So that was a quick wrap-up of Core ML Tools ecosystem. Now to talk about quantization, I would like to invite my friend Sohaib on stage. [ Applause ] Good
Developing Your App with Xcode 4 WWDC 2010 Session 308
accessible here with this handy little clock icon, in the center. You can see the revision on the left and you can select any revision you’d like to, going back through time on the right. The thicker bars that stand for revision, the thinner bars divide the dates. You
What’s New in Audio WWDC 2017 Session 501
access to the microphone [inaudible] directly, you could use the AVAudio Input Node, and also optionally, write it to a file. And here are the formats that are supported on watchOS, both for playback and recording. A last note on the recording policies. The recording can start only when the
Advances in HTTP Live Streaming WWDC 2017 Session 504
access all the keys that you preloaded with the ContentKeySession object. So now we have 2 API’s, AVContentKeySession and AVAssetResourceLoader, and you might be wondering which API to use for loading different types of resources, and here’s what we recommend. Use AVContentKeySession for loading content decryption keys, and
Capturing Depth in iPhone Photography WWDC 2017 Session 507
access to the depthDataMap itself which, again, is a CV pixel buffer; you can iterate through it by row and column using standard CV pixel buffer APIs. And the final two properties I want to highlight here have to do with inherent problems in capturing depth data, and we’re
Introducing AirPlay 2 WWDC 2017 Session 509
access to today. And you simply set the AirPlay 2 toggle in the developer pane, flip that on. And then you can use an updated Apple TV as your AirPlay 2 receiver and send to it. In an upcoming beta, we’re going to enable multi-room audio. And lastly
What’s New in Internationalization WWDC 2015 Session 227
access this at the Foundation level. You simply call a ‘string by applying transform.’ Then you provide a string or here a constant, representing how you wish to transform the string. Here, we wish to translate the emoji character or, sorry, transliterate the emoji character “thumbs up” into an XML
Apple Podcasts WWDC 2017 Session 512
access any links and notes while they listen to your episode. Another exciting update, we have podcast type. We also have episode type. So, in iOS 11, we’re coming out with three episode types, a full, trailer and bonus. So, full is the default episode type, and it represents
HLS Authoring Update WWDC 2017 Session 515
access you can check them that way and you can use relative paths, absolute paths or file URLs. However, I should note that you can’t mix file URLs and HTTP, that is if the master playlist is a file path then the media playlist it references can’t be
What’s New in tvOS WWDC 2016 Session 206
accessed from across iOS, Mac OS, and tvOS and can also be shared. And thanks to iCloud authentication, you don’t have to ask your customers for a separate login anymore. And this is still true even if your app happens to also run on other platforms that do not
Internationalization Best Practices WWDC 2016 Session 201
specifically is Inclusive App Design. It kind of will talk more about some of the things I mentioned at the end about how you can keep an inclusive design in mind for both internationalization and for users that need accessibility support. And that’s all. Thank you very much. [ Applause ]
What’s New in Notifications WWDC 2015 Session 720
access technical support and developer forums, and please direct general inquiries to Paul, our core list evangelist. There are related sessions you may be interested in, specifically ones about ClockKit, Watch connectivity, and things that Michel demoed and the networking with NSURL session has more details on HTTP/2. Thank you
From Art to Engine with Model I/O WWDC 2017 Session 610
accessibility of the surface from the outside and encoded that as a signal on the surface of the plane, so that your shader can render an object to be more physically grounded in your scene. Here’s another fun thing that you can do. We’ve got all kinds of
Advances in Networking, Part 1 WWDC 2017 Session 707
access point, which basically means the connection that you have created on Wi-Fi is getting slower and slower, and ultimately your application is actually getting slower as well because it cannot download the content from the internet. And it will only be able to continue again when you have
Core ML in depth WWDC 2017 Session 710
accessed here. We’ve designed the package this way so that it’s compatible and extensible. At the top level, the converters give Core ML compatibility with a variety of popular tools. Underneath that, the Core ML Bindings, Converter Library, and the Core ML Specification make this package extensible so
Power, Performance and Diagnostics: What’s new in GCD and XPC WWDC 2014 Session 716
access to the CPU prioritized, and the idea is that under contention, high priorities get to the CPU first. But even if you set low-priority there’s no restriction to your execution if they’re no contention, but then if something high-priority comes along like a UI action
What’s New in iOS Notifications WWDC 2014 Session 713
accesses any files on disk, you need to be sure that they belong in the correct data protection class. For more information on data protection, we’ll point you toward some more resources at the end of this session. So here’s an example of the accept invite action. It
Deeper into GameplayKit with DemoBots WWDC 2015 Session 609
accessing everything else on demand. We recognize this does add complication. When you talk about presenting the next Scene traditionally you know it is in local storage, you can prepare those resources, and when the user requests it, you can present. Now we’re adding an extra complication. Maybe you
Designing for Subscription Success WWDC 2017 Session 814
access to if they did subscribe. And finally, you can allow people to sample content. It’s a great way to engage through experience. And it works great for the majority of apps. This is “The New York Times.” And you’re able to read ten articles for free per
Improving Your Existing Apps with Swift WWDC 2015 Session 403
accessing their properties, exactly the same way that you work with classes. It’s exactly the same way that you work with enums, or enums. It’s all the same consistent style. We also get to use initializers that are the same across all the different data types. We get
Mastering Xcode for iPhone OS Development, Part 2 WWDC 2010 Session 303
Access, you don’t have to go to the portal, it does it all from within Xcode. Additionally, if you are an agent or an admin or a single person on an individual team, it will go ahead and approve that CSR for you immediately. So, the certificate is ready
Ingredients of Great Games WWDC 2014 Session 602
access to the GPU to interleave graphics and compute, and so on. And really take control yourself over how the frame is being rendered. So that is number seven: optimize graphics performance. Okay, number eight: now, we’re lifting out of the tech in just a couple of really kind
Advanced Media for the Web WWDC 2014 Session 504
accessed. And the browser picks the appropriate stream based on the characteristics of the current device. Now Safari on OS X and iOS use the AV Foundation Framework to play HLS streams so you get the same high quality streaming experience as the native apps. And AV Foundation will seamlessly
AVAudioEngine in Practice WWDC 2014 Session 502
access to each of the bands and set up the different filter parameters. Connecting the EQ is no different than what we’ve already seen. I can connect the player to the EQ with the file’s processing format and connect the EQ to the engine’s output node with
Improving Power Efficiency with App Nap WWDC 2013 Session 209
access to limited resources like CPU time, disk IO and most importantly for this talk, energy. So in designing this feature, we wanted to focus system resources on the most important user work. And the benefit of that is going to be increased battery life and improved responsiveness. Now the
Advances in AirPrint WWDC 2013 Session 711
access to the object but just don’t peek at it because everything inside of it is subject to change at any time. If you need control over paper size like pages, for example, at the document center gap where the user is designing their layout with the page in
Advanced Objective-C and Garbage Collection Techniques WWDC 2010 Session 144
access control splitting among multiple files, et cetera. Not writing code using synthesized properties. Let the compiler write accessors and instance variables for you. Not executing code, using weak-linked classes to write an application that runs on a newer OS uses the features of the newer OS, but also
Architecting for Performance on watchOS 3 WWDC 2016 Session 227
access to your very favorite applications right from the watch face. We encourage you to adopt this policy for your application as well. Implement a complication whether or not you have data to display. Additionally, new in watchOS 3 we’ve brought you the dock. Just by pressing the side
The New iTunes Connect WWDC 2014 Session 302
access to these builds right away, and beta app review will be required to unlock your 1,000 testers. But while your build is in review, you can continue to upload new builds, and your internal testers can continue to test, and you can continue to manage your testers in
What’s New in Table and Collection Views WWDC 2014 Session 226
access this later. What’s great about that? First, you can actually call these methods several times. You’re going to aggregate that information. What does that mean for your layout? Let’s take a very simple grid-like layout with section headers. And you want to implement a sticky
Using Accelerate and simd WWDC 2018 Session 701
accessible to CPU. That’s where vImage lives. After we apply the effects, whatever effects that may be, and we have to unlock the base address of this pixel buffer so that the camera can reuse this piece of memory. The second step, we have to prepare the vImage input
Introducing Create ML WWDC 2018 Session 703
access the column using a subscript notation. So all you do is house or the price and you get an entire column of price. You can add two columns, subtract two column, multiply two column, divide two columns. And the way you do it is in very natural looking syntax
What’s New in Core Audio WWDC 2015 Session 507
accessible from Swift as well. It supports low latency real-time audio. Using AVAudioEngine, you will be able to perform a variety of audio tasks, like play and record audio, connect various audio processing blocks together to form your processing chain. You could capture audio at any point in this
Working Effectively with Objective-C on iPhone OS WWDC 2010 Session 113
access to the private instance variables, again, a little dangerous here. We don’t allow that across frameworks, though. These categories are very useful. Let’s talk about Memory Management. So why? Well, if you don’t do it well, you’re going to crash. Memory Management is about keeping
Creating Custom Instruments WWDC 2018 Session 410
access to downloader narrative schema, create new row in it, set time column to the time of the first fact, and set your narrative description. You’ll output some information about the problem so that someone could debug it later. Now I can run Instrument against our app. Let’s
Storyboards and Controllers on OS X WWDC 2014 Session 212
access them by asking to instantiate the controller with identifier. We’ll find it in the storyboard with that name. We’ll instantiate, start doing the wiring up and hand it back to you, then you can take it from there. So that’s really all there is with storyboards
Creating Great AR Experiences WWDC 2018 Session 805
access. So, an example of that is Measure. Measure uses an indirect control, the plus button, the add button at the bottom of the screen to add points. And, that control is in a really reachable spot. So, even while you’re using one hand to focus the reticle on
Designing with Animation WWDC 2015 Session 803
access to them, there is Keynote. And that’s what we are going to be using today because it’s very quick to make animations, and it’s very, very quick to get things onto a device. So let’s look again at the requests from our CEO. Conveniently, they
Platforms Kickoff WWDC 2012 Session 101
access it wirelessly anywhere on any devices. That’s the goal of iCloud. iCloud was introduced last year. It’s integrated in OS X and iOS. It’s a free service. And it’s simple and easy for our users to use. As I said we are integrating iCloud in
Fix Bugs Faster using Activity Tracing WWDC 2014 Session 714
access you wanted to create, it will actually create a separate activity ID on that next thread on whatever work you’re trying to initiate. So, now you have two completely individual activities to scope this information into your diagnostic reports. So, how do you initiate an activity? So, I
Debugging Tips and Tricks WWDC 2016 Session 417
access is now done either as properties or through accessor functions or whatever so that and they’re generally that’s not the code you’re trying to debug. So you end up in a scenario like this you know I’m here I’m trying to get into this
Advanced Tips and Tricks for High Resolution on OS X WWDC 2012 Session 245
accessibility to the text engine and a single API such as drawing [inaudible 0:38:17] gives you convince way to render NS string efficiently and NS Cell renders many user interface control strings. These APIs can be categorized into two groups further. One is document contents. NS lay out
Measuring Performance Using Logging WWDC 2018 Session 405
access to the data that’s attached. In addition to metadata for those intervals, you may want to add individual points in time. That is, in addition to the begin signpost and the end signpost, you may have a signpost that’s not tethered to a particular time interval but
Efficient Design with XPC WWDC 2013 Session 702
access to your heap data or at least a part of it. And there might be a password in there. There could be any number of little gems for a security attacker to take advantage of. So, now that we’ve covered how you would safely share a piece of
Exploring Scroll Views on iOS 7 WWDC 2013 Session 217
access to this year. If you have more questions about this stuff, Jake Behrens is the UI Frameworks Evangelist or sorry, the App Frameworks Evangelist now. Documentation, of course, we’ve got the UIScrollView Programming Guide and the Apple Developer Forums are a great place to find out about this
Taking Control of Auto Layout in Xcode 5 WWDC 2013 Session 406
access to these features. And of course and along with the new Auto Layout workflows and of course support for iOS 7, Xcode 5 brings along a new readable and diff-able XML format for this. [ Applause ] If you’d like more information, you can contact the Dev Tools Evangelist
Advanced Editing with AV Foundation WWDC 2013 Session 612
access to the pixels with the CPU and the GPU to colorize, warp, texture map. Achieve a much wider variety of complex effects. And we’ll see more of the sea otters later [laughter]. So custom video compositor. But what is a video compositor? Well, it’s basically a chunk
Optimize Your Earning Power With iAd WWDC 2014 Session 222
access your view on that view controller. We’re then going to make a request up the ad server. It’s going to come and hopefully a banner is going to load. And at that time, we’re going to move the banner onscreen and we’re going to resize
Optimizing In-App Purchases WWDC 2014 Session 303
access and be sure that you only hand out those valuable assets to people who have paid. But what you definitely don’t want to do is try and use that online validation service directly from the device. Now there was a time a little while ago when that was
What’s New in iBooks Author WWDC 2013 Session 605
access the equation input user experience through the Insert panel, I’m going to insert equation and up will pop our Equation Editor. And I hope to God, I can remember this equation. So for circular pads, the equation is something like 2 [inaudible] 3. There you go. You can
Live Photo Editing and RAW Processing with Core Image WWDC 2016 Session 505
access the value for key kCIInput ImageNoiseReductionAmount. If we want to alter that, it’s equally easy. We just set a new value for that key. When we’re done making changes, we ask for the outputImage and we’re done. That’s all we need to do. Of course
Extend Your App’s Presence With Sharing WWDC 2017 Session 247
access sharing. A great place for an action button in a detail view like this is in the title bar. It helps communicate to the user that you can share all the information in this view. On tapping that button, you can call a UIActivityViewController. This will display the user
NSURLSession: New Features and Best Practices WWDC 2016 Session 711
access information about what’s really happening under the hood with your network transactions. This will help you in your debugging and development to be able to get, you know, fix your apps and make your apps work the best that they can be. And tune, really tune the Web
What’s New in iMessage Apps WWDC 2017 Session 234
accessibility right when they enter the conversation. So we think this is a great way for users to enter a conversation, tap the app they want and be able to use your application immediately. One really cool change their making this year revolves around how we handle app installations. So
Getting the Most Out of Web Inspector WWDC 2013 Session 603
accessible as it should be from the user interface of our previous version is the ability to add a new rule. So we’ve made that a lot easier. There’s a big button in the style sidebar, you can’t miss it, and what it and we’ve also
Teaching with Swift Playgrounds WWDC 2017 Session 416
accessibility labels, so that your users using VoiceOver have just as rich of an experience as those who are not using VoiceOver. Here’s a wall of text. Lots of stuff going on here. Luckily, there’s a callout. I know which part of this I need to pay attention
Express Yourself! WWDC 2017 Session 820
place stickers, Apple Pay sheet, access to the microphone, camera and photos. Think about what is best for your app, and improve on an existing experience, or create a new one. Because in the end, you want to create a wonderful experience for your family and friends. Thank you. [ Applause ]
Getting Started with CareKit WWDC 2016 Session 237
accessibility. We’ll localize it for all the languages we support in CareKit. And then we’ll do QA testing for all the supported platforms. We might ask for your help during this process as well. And then once the feature’s ready, we’ll go ahead and merge it
Introduction to Sprite Kit WWDC 2013 Session 502
access to a number of functionalities including doing hit test within rectangles to see what bodies are in there. You can do ray casts from any points if you want to use that to drive your AI or pathfinding system. You can also add joints between nodes. You can set
Neural Networks and Accelerate WWDC 2016 Session 715
access to vector instructions and vector types, and they are not directed to vector units in the CPU’s [inaudible] without writing [inaudible] or assembly code. We also have compression, which we introduced last year for lossless compression, and everything we provide is optimized for all the CPU’s we
Best Practices for Great iOS UI Design WWDC 2013 Session 225
access to tools, doesn’t distract from the content that they’re creating. Well, what works for that? Dark palette. Let’s look at some similar apps, what did they do? What are the characteristics of those apps? So there’s a progression of considerations that you have to go
What’s New in HomeKit WWDC 2017 Session 705
access the launch of HomeKit Accessories. We now have automated tools to test your accessory and continue to automate more and more test cases, and we urge all MFi licensees to always get the latest tools before you begin your testing. Also, we are glad to announce that we now
Iterative UI Design WWDC 2016 Session 805
accessibility zoom functionality in system preferences so I could zoom in really quickly and make sure that everything is pixel perfect. Okay. I’m going to do the same thing for lines. I know that this line is 1 point. Again, I’m going to zoom in to make sure
Apple Design Awards WWDC 2019 Session 104
accessibility with great care. Its colorblindness mode has even been tested on monochrome. Now, what if you want to do a challenge on a level where you catch every single nutrition, or race for your fastest completion time? No problem. You can also play on an iPad with a much
Size Classes and Core Components WWDC 2017 Session 812
Accessibility Settings for even larger type, much easier. It also makes localizing your app seamless. Your text will adjust the lettering, or line height based on the height of the characters. So using these features will only make it easier for more people to use your app. So, this is
Introducing SwiftUI: Building Your First App WWDC 2019 Session 204
accessibility, localization these are all just expected for an app. But with SwiftUI you get a lot more support for these behaviors automatically. And we can use previews to really quickly test all of these. So let’s go to our preview and add some more views. Again, I’ll
Bringing Your iOS Apps to OS X WWDC 2013 Session 216
access to on your WWDC app for Auto Layout. Introduction to SpriteKit, I made a plug for it earlier. That’s going to be great if you’re doing any kind of cross-platform 2D Game. Best practices for Cocoa Animation, that’s a great place to go to for
What’s New in AppKit for macOS WWDC 2019 Session 210
accessing a derived property of the color, for example the CGColor, with the non-tagged version, that could be cached as an eye bar in the color and it’s possible the CGColor would live as long as the NSColor. In the snippet we have on screen, you could see
SwiftUI on watchOS WWDC 2019 Session 219
access to vital information. So while your iOS app may be used for a couple of minutes while you’re waiting in line at the grocery store, on Apple Watch, the interactions are typically a bit shorter. People see information at a glance and respond with just a few taps
Simplifying Touch Event Handling with Gesture Recognizers WWDC 2010 Session 120
access it from the handler. You want to do that all the time. And the location we’re getting in the view is super view so we have a steady reference frame. And then we’re going to switch on State. It will go to through four states. In the
Text Recognition in Vision Framework WWDC 2019 Session 234
access to the language settings, setting, enabling the language model, sorry. And the custom words. Let me show you quickly with a crafted example how this looks like. If I take one image that I created and say that’s a book cover and happens to have very small text
Tapping into Innovative Solutions to Save the World’s Wildlife WWDC 2016 Session 105
access whatsoever. You know, most of these parts are wilderness area. [ Music ] The WWF Black Rhino Range Expansion Project aims to boost the growth rate of the black rhino populations of South Africa. [ Music ] It’s become a passion, it’s not just a job it’s a passion and
What’s New in MapKit and MapKit JS WWDC 2019 Session 236
access to those polygons and polylines. In our example, we knew that the GeoJSON would only have a single feature and a point geometry. So this code is making some assumptions. In most cases, you would want this part of your code to also take MKPolygons, MultiPolylines and so on
Painting the Future WWDC 2013 Session 109
access to the new Mac Pro. We originally designed MARI with multiple GPUs in mind. For me it makes so much sense that you’re going to want to be processing huge amounts of data on one device while you’re displaying it fluidly at 60 frames per second on
UIKit: Apps for Every Size and Shape WWDC 2018 Session 235
access this on your UI views using the safe area insets property. A UI edge inset that has those four values. Now if you’re doing layout with Auto Layout, you actually might want to just see the entire rec that’s safe. And you can get that by looking
Adding Delight to your iOS App WWDC 2018 Session 233
access. These should never be running on the main thread. But, maybe some other stuff that you might not expect, like image drawing and text sizing. UIGraphicsImageRenderer, and its distributed string, both have functions available that are safe to use on a background thread, that might just help you move
Advances in CarPlay Systems WWDC 2019 Session 252
access to some touchable controls and preventing the user from being able to see certain parts of the UI. With iOS 13, CarPlay now supports irregularly shaped displays. First, your system defines a view area. This represents the rectangle that CarPlay can draw a user interface image into. A view
Exploring Tinted Graphic Complications WWDC 2019 Session 253
accessibility label property, which is a succinct label that identifies the purpose of the image. So how do you provide an alternate image for tinted contexts? In watchOS 6 there’s a new property in CLKFullColorImageProvider called tintedImageProvider. It’s an optional property where you can provide a separate image
Adopting Swift Packages in Xcode WWDC 2019 Session 408
access Swift Packages directly from Xcode projects. [ Applause ] We’re excited too. So in this session, we’re going to start by talking about how to use a package, how to extend the functionality of an app by using a package. We’re then going to talk a bit about
Core Data Best Practices WWDC 2018 Session 224
access to our data, even when we’re using many at the same time through features like query generations, connection pooling, and history tracking. Setting this all up requires finding the model and loading it and deciding where to keep the store, but a lot of these error paths can
Image and Graphics Best Practices WWDC 2018 Session 219
Accessibility settings. And then you tap and hold on an item in the tab bar a little HUD shows up as a magnified view of the item that you’re currently holding your finger over. So, if you want your artwork to look good in places like this check the
Getting Started with Instruments WWDC 2019 Session 411
access to those devices, be sure to test on them. As Tibet mentioned earlier, Instruments supports all platforms. We demoed this on the Mac, but it works equally well on iOS, watchOS and tvOS. It also supports the Simulator. But there’s an important caveat to understand with the Simulator
Advanced Dark Mode WWDC 2018 Session 218
access through a class property on NSAppearance. If you’re familiar with concepts like the current NSGraphics context or the current NSProgress, you already know what I’m talking about. If not, just remember that this is the appearance used to resolve dynamic colors and images. AppKit will set up
Building for Voice with Siri Shortcuts WWDC 2018 Session 214
accessing them through voice. And that’s what we’ll focus on today. So, let’s get started. First, we’ll talk about how your users can add shortcuts to Siri and how simple it is to write use it right away. Then, we’ll talk about how you can
Editing Movies in AV Foundation WWDC 2015 Session 506
access that and create a movie from a block of data. We are not actually going to talk about this anymore in this talk, but if you look at our sample code package called AVMovieEditor, you will see very nicely how you can put stuff and take stuff off of
Drawing Classification and One-Shot Object Detection in Turi Create WWDC 2019 Session 420
access these in Turi Create, simply call the evaluate method available to use on the model object and pass in that test data set. A dictionary of these metrics will then be returned to now evaluate our model. But this actually doesn’t tell us the whole story. For instance
Modeling in Custom Instruments WWDC 2019 Session 421
access to functions like retract, which allows you to remove a fact from working memory. Or assert, which allows you to add a fact into the working memory. And also some specialized functions that allow you to write to the output tables of your modeler so you can write the
Designing for Adverse Network and Temperature Conditions WWDC 2019 Session 422
access to thermal imaging. So, just like with network conditions, we recognize the challenge in trying to verify your app’s behavior and that there’s high variance in existing approaches. We’ve noticed some methods that people are taking which we would not recommend like running a dummy CPU
Training Object Detection Models in Create ML WWDC 2019 Session 424
access documents we already created. Here, we want a new project. First, you’ll see the template picker, which give you a collection of machine learning model types to select from. In this case, we want an image object detector. I give it a name, so we can identify it
Enhancing User Experience with Scroll Views WWDC 2012 Session 223
accessing the scroll view’s pan gesture recognizer property. I’m just taking that gesture recognizer and I’m moving it over to the dummy view. I only care about the pan gesture recognizer in this case, because I’m not trying to allow zooming on my view. Then finally
HEVC Video with Alpha WWDC 2019 Session 506
access a sequence of decoded video frames directly using AVPlayerItemVideoOutput. This is a great choice when you want to incorporate those video frames into a custom rendering you’re doing using Metal, SpriteKit and other GPU-based rendering APIs. If you need to decode frames for another purpose, you can
Building Concurrent User Interfaces on iOS WWDC 2012 Session 211
accessed this directly probably. UIKit surfaces that context to you via UIGraphicsGetCurrentContext which you’ve probably used if you’ve ever done any CG drawing calls of your own in drawRect. Even if you haven’t the methods that you may be more familiar with like UImage drawAtPoint, the Bezier
Understanding CPU Usage with Web Inspector WWDC 2019 Session 513
access Web Inspector. Just load up Safari Preferences, and click on Advanced, and click to enable to Show Develop menu in menu bar option. Now, just load up a webpage, and open Web Inspector from the Develop menu, or use the keyboard shortcut Command-Option-I. I’m going to
Delivering Audio and Video Using Web Standards, Part 1 WWDC 2010 Session 501
access is totally free which is pretty cool. There are a lot of great sessions coming up this week related to HTML5 media and web technologies in general. A couple of specific ones that I wanted to point out to you: In this room following this session we have Delivering
Working with USD WWDC 2019 Session 602
accessed through an object path. In this case, the prim cube is nested under simple mesh, so its path becomes /simpleMesh/cube. This also works with properties, with the dot notation. Now that we have seen the basic file structure, let’s take a look at how it is used to
Core Animation in Practice, Part 1 WWDC 2010 Session 424
access to the media protocol. You can also chain your animations using various timings. But that’s also a possibility. OK. So what we’ve done is we’ve put together a sample code. What I’ve trying to do is put up sample code that will make that will
Metal for Machine Learning WWDC 2019 Session 614
accessed through MPSMatrix random classes. So, they operate on MPSMatrix and MPSVector objects, which means they work with metal buffers, and they support generating random integers with the underlying generator, or you can generate floating point values using a uniform distribution. So, here, we’re going to create a distribution
Game Center Player Identifiers WWDC 2019 Session 615
accessed by the alias property. A player may also choose an avatar image that will be used within Game Center UIs. In addition, each Game Center user has a unique static identifier that remains the same across all games that the player plays. You may use this identifier to store
Go Live with ReplayKit WWDC 2016 Session 601
accessible to the system and the broadcast service. Alright, so to illustrate how this works, we’ve been working with flair games to implement the broadcast feature, and the flagship game, Olympus Rising. So it’s a really awesome game. It’s available in the app store today. And it
App Thinning in Xcode WWDC 2015 Session 404
access to content. In this particular case, the asset packs that are built by Xcode based on your asset tags get moved off. They are stored separately from your IPA in the App Store. You can download them on-demand. You can designate some of them as being part of
Model-View-Controller for iPhone OS WWDC 2010 Session 116
access, that a table is going to be populated with a set of multiple choices, and that the user is going to choose one of them. That’s going to be the responsibility of the controller to then turn around and take that change and commit it back to the
Advances in SceneKit Rendering WWDC 2016 Session 609
access to all the other kind of lights. So omnidirectional, directional, and spot lights work with physically based rendering. And actually we have [inaudible] so that you can be a better configure. For instance, we added the light’s intensity. A light’s intensity is expressed in lumens which a
Supporting the Enterprise with OS X Automation WWDC 2015 Session 306
accessible by 40 or 50 people in a local network area by both computers and wireless devices as well, and how we can use automation and the technologies of OS X to make that possible. The second scenario we’re going to look at a basic thing that faces everyone
Building Modern Frameworks WWDC 2014 Session 416
access the same framework, but we’re not letting you use the framework out of some other application installed even if it’s one of your own. All right, so all of these things get imbedded directly in the application. So your apps are still completely stand-alone items. So
Creating Great App Previews WWDC 2014 Session 304
accessible to every developer. And now that we’re doing that, we’re strongly encouraging everyone to get on board. We really want you to get on board. We’re here for the session. We’re going to be in the lab. We’re here to help you get on
Designing Apps with Scroll Views WWDC 2010 Session 104
access up front to the sizes of the content that you’re going to display. So I’m going to show you where this change needs to take place. It’s in this configurePage-forIndex method that I keep calling, but I haven’t shown you yet. So, let’s
Combine in Practice WWDC 2019 Session 721
accessing the wrapped value. We than can use all the operators that we normally would on a Publisher or subscribe to it, in this case using sink. And then if we were to set that property again to another great password “password”, our Subscribers will get that value when it
Designing a Great In-App Purchase Experience WWDC 2014 Session 218
accessible from that wheel screen. So this is a perfect opportunity to preload those images so then they’ll be available. The images and data will be there when people seek it out. And 1 final tip is you should cache artwork appropriately so it’s not going to have
Designing Great ML Experiences WWDC 2019 Session 803
accessing secret Apple data, so I have to rely on a pass code. And people like me with similar looking family members or evil twins need to take the same precautions. As Apple, we also talked about this limitation. We dedicated time in a keynote because it’s important that
Building Great Shortcuts WWDC 2019 Session 805
access all of that information. Next, we’ll select the response. And the response is the object representing the result of the intent. We will add a note property, selecting the new type that we just made. And finally, we’ll select that property from the Output dropdown. So, if
Custom Transitions Using View Controllers WWDC 2013 Session 218
access an updated value in sync with our own animation. So I’d like to show you what you can do with that. A very simple custom layout, a stack layout that’s in a collection view controller implemented in navigation controller. So I have this nice layout to layout
Apple Design Awards WWDC 2018 Session 103
access the app via complication. On Apple Watch Series 3 you can use the app even without your iPhone. Now, let me finish by saying something to you in a more familiar language. [ Foreign Language ] Remember to install this app before going abroad. [ Applause ] [ Foreign Language ] Thank you and have
Creating Content With iAd JS, Part 1 WWDC 2010 Session 510
access to it, it’s the same popup, you know do you allow this ad to see your current location. Now the annotations are pretty easy, obviously they [got a lat, long, this is their position and the name of the description, now this is the title and subtitle of
Introduction to Siri Shortcuts WWDC 2018 Session 211
access to the same data as the app, so I’ll add it to the same app group. In the Project Settings, I select the intents target and in the capability step, I’ll add it to the same app group. Great. Now, we’re ready to implement the intent
Game Center Techniques, Part 2 WWDC 2010 Session 410
accessible from the GKMatch. You can use properties on the Voice Chats or methods to start and stop them so you can hear selected chats. You can have multiple chats going. The microphone is always routed to only a single chat. And you can increase or decrease the volume of
Editing Media with AV Foundation WWDC 2010 Session 407
accessing it continuously, periodically from another thread or maybe even another process. Well, now, if you go ahead and try to change it essentially behind AV Foundations back, well, you can imagine that bad things can happen. So our recommendation is that you pass a copy for these tasks, and
Creating Photo and Video Effects Using Depth WWDC 2018 Session 503
accessible through the camera calibration data. In fact, this operation is done in every frame of the TrueDepth stream. The reason for that is that the video stream and the depth stream are coming from two separate cameras. But because the TrueDepth camera gives us a depth map we can
Customized Loading in WKWebView WWDC 2017 Session 220
access photos that are local to the user’s device. And using this new API that will be possible. There’s also a lot of game developers out there we hear from who have an in game newsletter or an in game leaderboard that uses web technology. And they want
Using Interface Builder in Xcode 4 WWDC 2010 Session 315
access the objects that are in the rest of your object graph at runtime. And that’s the role of the File’s Owner. Okay, so now I want to do another demo. As I said, this session is demo-heavy. So for those of you that are familiar with
LLVM Technologies in Depth WWDC 2010 Session 313
access from Foo are well we know its methods and so in this case the only results you’re going to get is the method bar and you could explicitly call the destructor for Foo; very precise results, these are operator overloading and templates, this is something that you could
Integrating Ads with iAd WWDC 2010 Session 112
access the delegate at that point because we don’t know that it’s gone away. So just remember, always set the banner view delegate to nil before you release it. So now let’s talk about multiple interface orientations. This is really a question of ad content sizes. So
Integrating with Photos on macOS WWDC 2018 Session 505
access to all of the other assets that are used in that project. When they’re done with their editing session, they simply hit the Done button, and they’re returned to the project that they’re working on. You get a notification that the library changed. You can respond
AVContentKeySession Best Practices WWDC 2018 Session 507
access logs, investigate the root cause. And try to mitigate errors so your users can get the best experience they deserve on our platforms. If you haven’t already, you should also check out one of our recorded sessions from last year to learn more about error handling, in general
iPad Development Overview WWDC 2010 Session 111
access or for this idiom and then calls that and it returns that answer, and if it doesn’t respond to the selector, it goes ahead and just returns idiom phone. And that’s actually a really good technique also in terms of dealing with symbol availability. You’re going
Inside SwiftShot: Creating an AR Game WWDC 2018 Session 605
access to all the system frameworks. In this case, we’re able to edit the P list directly. It’s a really great technique and we hope that you’ll be able to take advantage of it. So, today I hope you’ve seen how AR provides really new opportunities
Developing CarPlay Systems, Part 1 WWDC 2016 Session 722
access Siri even if the CarPlay UI isn’t showing. Usually this requirement is satisfied with a push-to-talk button on the steering wheel. For the Siri button, we require that the head unit send iPhone all button up/down events so that interaction during the Siri conversation is possible
Metal for Accelerating Machine Learning WWDC 2018 Session 609
access in the accelerometer and gyroscope readings. And each 1D image has 2,000 pixels. And you can think of them as samples in time because the activity we’re trying to identify, occurs over time. And then we pass these images through a 1D convolution primitive which compresses these
What’s New in tvOS WWDC 2017 Session 209
access it without first having to make the bundle resource request for it. And of course, this increase does not come at the cost of counting towards the rest of your asset pack allowance, which remains the same at 20 gigabytes. So, now, the combined size of your app bundle
What’s New in Core Data WWDC 2017 Session 210
access the Spotlight search indexes from your application, which is cool. And it does all of this without scattering zero-length files all over the file system. And I’m really hoping that at least some of you are mentally cheering about this because I sure was. So how does
Going Server-side with Swift Open Source WWDC 2016 Session 415
access to Swift from other platforms. In fact, we’re seeing steady growth and interest in executions and sessions coming from other operating systems. We’re very pleased to see this, and we’d like to see Swift grow even more. We’re also seeing usage from around the globe
What’s New in Managing Apple Devices WWDC 2015 Session 301
access documents on their OS X server account. There are a number of other settings added to existing payloads, including a lot of changes in the IKEv2 VPN connection type, more about that later, and a large number of new restrictions. So let’s look at those. There are a
What’s New with Wallet and Apple Pay WWDC 2016 Session 704
access to their different payment cards, as well as shipping, billing and contact information. And they can see a detail of what they are paying for. When they’re ready to pay, they simply double click the side button and it’s done. It is that simple. Now let’s
Drag and Drop with Collection and Table View WWDC 2017 Session 223
accessing the dropped items so you can actually perform the data transfer. It gives you some really great convenience methods for updating your collection and table view. And finally it gives you some ways to specify some default system animations for your drop. So now that we’ve talked about
Focus Interaction in tvOS 11 WWDC 2017 Session 224
access both of these objects using two new user info keys that we’re providing. The UIFocusUpdateContext key and the UIFocusUpdate AnimiationCoordinator key. We’re also introducing another key notification type related to focus updates and that’s called UIFocusMovementDidFail and this notification is sent whenever the user tries, but
Metal for VR WWDC 2018 Session 611
accessed by the GPU on which it was created. Now, we see a code snippet showing us how our VR application would send IOSurface to VR compositor in the past. We will now go through this code snippet, and see what changes needs to be applied to switch from using
Data Delivery with Drag and Drop WWDC 2017 Session 227
access that same file, instead of getting their own copy. There’s some really great information available in the following two sessions. I highly recommend that you attend them, if you are interested in providing File Providers in the context of drag and drop. All right. Next, we’re going
What’s New in Core Spotlight for iOS and macOS WWDC 2017 Session 231
access to the file system or databases that you have to do in order to create items. And remember that each call to Core Spotlight carries overhead. So, has batches of items instead of single items whenever it’s possible. That said, consider that memory is limited, so keep your
Advanced Touch Input on iOS WWDC 2015 Session 233
access to more information with these coalesced touches. The coalesced touches not only have information about the intermediate touches but they also give you a copy of the main touch itself. And the great thing about this is that it allows you a choice. You can look at the main
Advances in AVFoundation Playback WWDC 2016 Session 503
access log to make a better guess about the bitrate that the next playback station is going to get. So let’s suppose that you come up with a hero stick based on startup quality and recent bitrate statistics. And you decide on a way to choose which variant you
Advanced Memory Analysis with Instruments WWDC 2010 Session 311
accessible allocated memory that is never used again. It’s conceptually abandoned by you, the programmer, abandoned by your app; it’s leftover and it’s wasted or perhaps just forgotten. And so this memory is not nearly as easy to detect and more importantly, it also occurs in garbage
Cocoa Touch Best Practices WWDC 2015 Session 231
access to. So that’s layout. The next best practice I want to impart upon you is to use properties in your classes as an alternative to tags on UIView. So what I mean here is if you are using View With Tag or Set Tag UIView API and shipping
Validating HTTP Live Streams WWDC 2016 Session 510
access this page. But remember that developer accounts are free. Now once you’ve done that, you end up on the downloads page. The download itself is a disk image which contains an installer package. Now the screenshot here is a little out of date. You should see a newer
A Guide to Turi Create WWDC 2018 Session 712
access specific rows. Or columns of our data. And of course we can do common operations like joining our two SFrames into one. And saving the resulting SFrame for later use or to share with a colleague. Next we create our model. So I mentioned we have this simple function