wwdc2019_开发人员清单:WWDC 2019您不应该错过什么?

wwdc2019

So it’s almost near about one month already since WWDC 2019 happened this year. All the developers are still busy what are new things Apple has added or updated for development. There were some big announcements and small announcements, but we, the developers need to make sure that we won’t miss anything important. So I am just creating a quick checklist of the items what we should not miss. Let’s make it short, concise and simple.

因此,自今年WWDC 2019发生以来已经差不多一个月了。 所有开发人员仍在忙于Apple为开发添加或更新的新内容。 有一些大公告和一些小公告,但是我们,开发人员需要确保我们不会错过任何重要的事情。 因此,我只是创建一个我们不应该错过的项目的快速清单。 让我们简短,简洁,简单。

iOS: (iOS:)

  1. iOS 13 will let you limit application location access to just once. Until now, there were three options — “Always”, “While Using” or “Never”. One more option has been added to this list “Just Once”. For the first time, you can share your location to an app — just once — and then require it to ask you again next time it wants.

    iOS 13允许您将应用程序位置访问限制为一次。 到目前为止,共有三个选项-“始终”,“在使用时”或“从不”。 此列表“仅一次”中又添加了一个选项。 第一次,您可以一次将您的位置共享给一个应用程序,然后要求它在下次需要时再次询问您。
  2. Might be one of the popular announcements and people are going crazy about this. Yes, I am talking about “Apple Sign-in”. So it is a requirement from Apple that app developers must implement the company’s new single sign-in solution if the app already offers another third party sign in.

    可能成为流行的公告之一,人们对此感到疯狂。 是的,我说的是“ Apple登录”。 因此,Apple要求如果应用程序已经提供了另一个第三方登录,则应用程序开发人员必须实施该公司的新的单一登录解决方案。
  3. You can dismiss modal view controllers interactively which may break some of the existing applications. On iOS 13, by default, the user can just swipe the modal down to dismiss it. So when you are developing a new application make sure to take this into consideration. You can disable this behaviour by isModalRepresentation = false.

    您可以以交互方式关闭模态视图控制器,这可能会破坏某些现有应用程序。 在iOS 13上,默认情况下,用户只需向下滑动模式即可将其关闭。 因此,在开发新应用程序时,请务必考虑到这一点。 您可以通过isModalRepresentation = false禁用此行为。

  4. UISegmentedControl and UIStepper are different in iOS 13 with a whole new updated design.

    UISegmentedControlUIStepper在iOS 13中有所不同,具有全新的更新设计。

  5. A new update to Localization in iOS 13. From now, the user can set a different language to each of the application installed in your device. Developers have nothing to change or consider regarding the development, Settings application will take care on behalf of you.

    iOS 13中Localization的新更新。从现在开始,用户可以为设备中安装的每个应用程序设置不同的语言。 开发人员对开发没有任何更改或考虑, Settings应用程序将代表您保重。

  6. iOS 13 has almost 1500 different system icons and UIImage got a new initializer UIImage(systemName: ) with this you can now initialize any of the system icons.

    iOS 13有近1500种不同的系统图标, UIImage有了一个新的初始化程序UIImage(systemName: ) ,您现在可以初始化任何系统图标。

  7. Until now when you download something in Safari that directly goes into downloads folder, but this year Safari got an update and you can change the default download folder to any other folder you want, even you can choose USB drive also.

    到目前为止,当您在Safari中直接downloadsdownloads文件夹中的内容时,但是今年Safari得到了更新,您可以将默认下载文件夹更改为所需的任何其他文件夹,即使您也可以选择USB驱动器。

  8. Improvements to UIStoryboardSegue. Apple has introduced a new IBSegueAction modifier. Now you can pass additional context and parameters directly to the destination view controller that should be initialized.

    UIStoryboardSegue改进。 苹果推出了新的IBSegueAction修饰符。 现在,您可以将其他上下文和参数直接传递到应初始化的目标视图控制器。

  9. Your apps can provide reservation information to Siri with context and at specific times so the user can take relevant actions based on the circumstances. For example, they can confirm a hotel reservation, be reminded to check in for a flight and get help returning a rental car.

    您的应用程序可以在特定时间和上下文中向Siri提供预订信息,以便用户可以根据情况采取相关措施。 例如,他们可以确认酒店预订,提醒他们办理航班登机并获得返回租车的帮助。
  10. With Core NFC framework, your apps can now support tag writing, including writing to NDEF formatted tags. The framework also provides support for reading and writing tags using native protocols such as ISO 7816, MIFARE, ISO 15693, and FeliCa.

    借助Core NFC框架,您的应用程序现在可以支持标签编写,包括写入NDEF格式的标签。 该框架还支持使用本机协议(例如ISO 7816,MIFARE,ISO 15693和FeliCa)读写标签。
  11. Synch your Core Data store with CloudKit, giving users of your app seamless access to their data across all their devices. Core Data with CloudKit combines the benefits of local persistence with cloud backup and distribution.

    通过CloudKit同步您的核心数据存储,使您的应用程序用户可以跨所有设备无缝访问其数据。 CloudKit的核心数据将本地持久性的优势与云备份和分发结合在一起。
  12. Metal gives the GPU even greater control of the graphics and compute pipeline, adds features that make it easier to perform advanced GPU processing, and simplifies the work you need to do to support different kinds of GPUs. New tools, including Metal support in Simulator, help you get started faster and understand whether your iOS app is using Metal correctly.

    Metal为GPU提供了更大的图形和计算管道控制能力,添加了使高级GPU处理更容易的功能,并简化了支持各种GPU所需的工作。 包括Simulator中的Metal支持在内的新工具可帮助您更快地入门,并了解您的iOS应用是否正确使用了Metal。
  13. With the new VisionKit framework, your app can let users scan documents using the device’s camera, like those you capture in the Notes app. Combine this feature with Vision’s text recognition to extract text from scanned documents.

    借助新的VisionKit框架,您的应用程序可以让用户使用设备的相机来扫描文档,就像您在Notes应用程序中捕获的文档一样。 将此功能与Vision的文本识别结合使用可从扫描的文档中提取文本。
  14. Core ML 3 now supports on-device model personalization, allowing you to update a model by retraining or fine-tuning it with user-specific data privately from within your app. Core ML has also greatly expanded its support for dynamic neural networks with over 100 layer types.

    Core ML 3现在支持设备上模型的个性化,允许您通过在应用程序内部私下使用用户特定的数据重新训练或微调模型来更新模型。 Core ML还通过100多种层类型大大扩展了对动态神经网络的支持。
  15. The new PencilKit framework makes it easy to incorporate hand-drawn content into your app quickly and easily. PencilKit provides a drawing environment for your iOS app that takes input from Apple Pencil, or the user’s finger, and turns it into high-quality images you display in either iOS or macOS. The environment comes with tools for creating, erasing, and selecting lines.

    通过新的PencilKit框架,可以轻松,轻松地将手绘内容合并到您的应用程序中。 PencilKit为iOS应用程序提供了一个绘图环境,该环境可以从Apple Pencil或用户的手指中获取输入,并将其转换为您在iOS或macOS中显示的高质量图像。 该环境附带了用于创建,擦除和选择线条的工具。
  16. MetricKit is a new framework that gives you on-device power and performance metrics about your app captured by the system, which you can use to improve the performance of your app.

    MetricKit是一个新框架,可为您提供有关系统捕获的应用程序的设备上电源和性能指标,您可以使用这些指标来提高应用程序的性能。
  17. The new Core Haptics framework that lets you compose and play haptic patterns to customize your app’s haptic feedback.

    新的Core Haptics框架可让您撰写和播放触觉模式,以自定义应用程序的触觉反馈。
  18. Use the new Apple CryptoKit framework to perform common cryptographic operations securely and efficiently, such as Computing and comparing cryptographically secure digests, Using public-key cryptography to create and evaluate digital signatures, Generating symmetric keys, and using them in other operations like message authentication and encryption.

    使用新的Apple CryptoKit框架安全有效地执行常见的加密操作,例如计算和比较加密的安全摘要,使用公钥加密创建和评估数字签名,生成对称密钥,并将其用于其他操作(例如消息身份验证和加密。
  19. Combine is a new framework that provides a declarative Swift API for processing values over time. These values can represent user interface events, network responses, scheduled events, and many other kinds of asynchronous data. With Combine, you declare publishers that expose values that can change and subscribers that receive those values from the publishers. Combine makes your code easier to read and maintain, by centralizing your event-processing code and eliminating troublesome techniques like nested closures and convention-based callbacks.

    Combine是一个新框架,提供了声明性的Swift API,用于随时间处理值。 这些值可以表示用户界面事件,网络响应,计划的事件以及许多其他类型的异步数据。 使用合并,您可以声明发布者可以公开更改的值,以及订阅者可以从发布者那里接收这些值。 合并通过集中事件处理代码并消除麻烦的技术(如嵌套闭包和基于约定的回调),使您的代码更易于阅读和维护。
  20. Keep your app content up-to-date and perform long-running tasks while your app is in the background using the new BackgroundTasks framework.

    使用新的BackgroundTasks框架,可在后台运行应用程序时使应用程序内容保持最新状态并执行长时间运行的任务。
  21. RealityKit is a new Swift framework to simulate and render 3D content for use in your augmented reality apps including the ability to add animation, physics, and spatial audio to your AR experience. RealityKit leverages information provided by ARKit to seamlessly integrate virtual objects into the real world.

    RealityKit是一个新的Swift框架,用于模拟和渲染3D内容,以用于您的增强现实应用程序,其中包括向您的AR体验添加动画,物理和空间音频的功能。 RealityKit利用ARKit提供的信息将虚拟对象无缝集成到现实世界中。
  22. Symbol images give you a consistent set of icons to use in your app, and ensure that those icons adapt to different sizes and to app-specific content. Symbol images use the SVG format to implement vector-based shapes that scale without losing their sharpness. They also support many traits typically associated with the text, such as weight and baseline alignment.

    符号图像为您提供了一套一致的图标,供您在应用程序中使用,并确保这些图标适应不同的大小和应用程序特定的内容。 符号图像使用SVG格式来实现可缩放的基于矢量的形状,而不会损失其清晰度。 它们还支持通常与文本相关的许多特征,例如权重和基线对齐。
  23. With iOS 13, the user can create and manage multiple instances of your app’s user interface simultaneously and switch between them using the app switcher. On iPad, the user can also display multiple instances of your app side by side. Each instance of your UI displays different content or displays content in a different way. For example, the Calendar app can display the appointments for a specific day and for an entire month side by side.

    使用iOS 13,用户可以同时创建和管理应用程序用户界面的多个实例,并使用应用程序切换器在它们之间进行切换。 在iPad上,用户还可以并排显示您的应用程序的多个实例。 UI的每个实例显示不同的内容或以不同的方式显示内容。 例如,日历应用程序可以并排显示特定日期和整个月的约会。
  24. SwiftUI is a modern approach to building user interfaces for iOS, macOS, watchOS, and tvOS. You can build dynamic interfaces faster than ever before, using declarative, composition-based programming. The framework provides views, controls, and layout structures for declaring your app’s user interface. It also provides event handlers for delivering taps, gestures, and other types of input to your app, and tools to manage the flow of data from your app’s models down to the views and controls that users will see and interact with.

    SwiftUI是一种现代方法,可为iOS,macOS,watchOS和tvOS构建用户界面。 使用基于组合的声明式编程,您可以比以往更快地构建动态接口。 该框架提供了用于声明应用程序用户界面的视图,控件和布局结构。 它还提供事件处理程序,用于向您的应用程序传递敲击,手势和其他类型的输入,并提供工具来管理从应用程序模型到用户将看到并与之交互的视图和控件的数据流。
  25. When the Voice Control Accessibility feature is turned on, there’s a blue microphone icon at the top of the device to indicate that the iOS device is in Voice Control mode. The dimmed icon when the phone doesn’t have your attention.

    启用语音控制辅助功能后,设备顶部会出现一个蓝色的麦克风图标,指示iOS设备处于语音控制模式。 电话不引起您注意时,图标变暗。
  26. One of the new features in iOS 13 is an option in the Files app to connect to the server using SMB. This feature wasn’t working in the first beta but is functional in beta 2, so iOS 13 users can do things like connecting to a home NAS.

    iOS 13中的一项新功能是“文件”应用程序中的一个选项,可以使用SMB连接到服务器。 此功能在第一个Beta中不起作用,但在beta 2中可以使用,因此iOS 13用户可以执行连接到家庭NAS的操作。
  27. When sharing a webpage from the Safari Share Sheet, there are new options to share it as a PDF or a Web Archive. There’s also an “Automatic” option that picks the most suitable format for each app or action.

    从Safari共享表共享网页时,有一些新选项可以将其共享为PDF或Web存档。 还有一个“自动”选项,可以为每个应用或操作选择最合适的格式。
  28. No more spam callers. iOS 13 now supports strictly silencing unknown callers.

    不再有垃圾邮件发出者。 iOS 13现在支持严格沉默未知呼叫者。
  29. In iOS 13, we got a new method on UIImageAsset named registerImage:withTraitCollection that can be used to create dynamic images for light and dark programmatically.

    在iOS 13中,我们在UIImageAsset上获得了一个名为registerImage:withTraitCollection的新方法,该方法可用于以编程方式为明暗创建动态图像。

  30. Running on Low Mobile data? A new “Low Data” mode has been added to avoid running out of data when you’re on a roaming plan.

    在低移动数据上运行? 添加了新的“低数据”模式,以避免在漫游计划中的数据用完。
  31. When we do not have wifi then sometimes we face difficulty in downloading apps which are bigger in size. But after iOS 13, we can see a ray of light there. Now the limit has increased to 200 MB, still not enough? Then you can remove the restriction in Settings.

    当我们没有wifi时,有时我们会在下载更大尺寸的应用程序时遇到困难。 但是在iOS 13之后,我们可以在那里看到一束光。 现在限制已增加到200 MB,还不够吗? 然后,您可以在“设置”中删除限制。
  32. Share photo to others with original information in it. iOS 13 is giving you an option to add that original information when sharing.

    与原始信息共享给他人。 iOS 13让您可以选择在共享时添加原始信息。
  33. Be happy to mute your iPhone. Apple has introduced a new completely redesigned mute indicator to match Apple pencil charging indicator.

    乐意将您的iPhone静音。 苹果公司推出了全新的完全静音设计的静音指示器,以与Apple铅笔充电指示器相匹配。
  34. Now you can initialize UIViewController subclasses with additional context and arguments (required for dependency injection).

    现在,您可以使用其他上下文和参数(依赖项注入所需)来初始化UIViewController子类。
  35. If you are not a delegate fan then there are some good news for you. iOS 13 has updated some delegate based APIs to block based API.

    如果您不是代表粉丝,那么对于您来说有一些好消息。 iOS 13已将一些基于委托的API更新为基于块的API。
  36. You do not need to long press on any app and tap on the cross icon to delete. Now you can simply remove an app from AppStore update page by a left swipe.

    您无需长按任何应用程序并点击十字图标即可删除。 现在,您只需向左滑动即可从AppStore更新页面删除应用。
  37. Until now screenshot was taken only in image format. iOS 13 allows you to take a screenshot in pdf format also.

    到目前为止,仅以图像格式拍摄了屏幕截图。 iOS 13还允许您以pdf格式拍摄屏幕截图。
  38. iOS 13 has a new _visualRecursiveDescription private API that can construct a visual representation of a view hierarchy. Very useful command for debugging in LLDB.

    iOS 13具有新的_visualRecursiveDescription私有API,可以构造视图层次结构的可视表示。 在LLDB中调试非常有用的命令。

  39. A new UICollectionViewCompositionalLayout class has been added to UIKit to make it easier to create compositional layouts without requiring a custom UICollectionViewLayout.

    新的UICollectionViewCompositionalLayout类已添加到UIKit中,以使创建合成布局更容易,而无需自定义UICollectionViewLayout

  40. The UITableViewStyle enum gained a new public UITableViewStyleInsetGrouped case that can be used to create grouped style table views.

    UITableViewStyle枚举获得了一个新的公共UITableViewStyleInsetGrouped案例,可用于创建分组的样式表视图。

  41. iOS apps using the File Management APIs can now be granted read/write access to an entire folder, rather than just a file.

    现在可以授予使用文件管理API的iOS应用对整个文件夹(而不只是文件)的读/写访问权限。
  42. Tired of swiping in scroll view? In iOS 13, you can drag the scroll indicator to go through a long document.

    厌倦了在滚动视图中滑动? 在iOS 13中,您可以拖动滚动指示器以浏览较长的文档。
  43. Apps intended for kids cannot include third-party advertising or analytics software and may not transmit data to third parties.

    面向儿童的应用程序不能包含第三方广告或分析软件,也不能将数据传输给第三方。
  44. MDM provides access to sensitive data, MDM apps must request the mobile device management capability, and may only be offered by commercial enterprises, such as business organizations, educational institutions, or government agencies, and, in limited cases, companies utilizing MDM for parental controls. MDM apps may not sell, use, or disclose to third parties any data for any purpose, and must commit to this in their privacy policy. (referring to apps that abused MDM for Screen Time-like features).

    MDM提供对敏感数据的访问,MDM应用必须请求移动设备管理功能,并且只能由商业企业(例如商业组织,教育机构或政府机构)提供,并且在少数情况下,可以由利用MDM进行父母控制的公司提供。 MDM应用程序不得出于任何目的出售,使用或向第三方披露任何数据,并且必须在其隐私政策中对此进行承诺。 (指的是滥用MDM的“类似于屏幕时间”功能的应用)。

Yeah, it’s quite a long list fully filled with new features. Developers can use all of them to make their application better and smoother. Now let’s take a look at the new frameworks that are coming with iOS 13-

是的,这是一个很长的清单,里面充斥着新功能。 开发人员可以使用所有这些来使他们的应用程序更好,更流畅。 现在让我们来看一下iOS 13随附的新框架-

构架: (Frameworks:)

  1. BackgroundTasks: Use the BackgroundTasks framework to keep your app content up to date and run tasks requiring minutes to complete while your app is in the background. Longer tasks can optionally require a powered device and network connectivity. Register launch handlers for tasks when the app launches and schedule them as required. The system will launch your app in the background and execute the tasks.

    BackgroundTasks :使用BackgroundTasks框架可以使您的应用程序内容保持最新状态,并在后台运行应用程序时需要花费几分钟才能完成任务。 较长的任务可以选择需要加电设备和网络连接。 在应用程序启动时注册任务的启动处理程序,并根据需要安排任务。 系统将在后台启动您的应用并执行任务。

  2. Combine: The Combine framework provides a declarative Swift API for processing values over time. These values can represent user interface events, network responses, scheduled events, and many other kinds of asynchronous data. Combine declares publishers to expose values that can change over time, and subscribers to receive those values from the publishers.

    Combine: Combine框架提供了一个声明性的Swift API,用于随时间处理值。 这些值可以表示用户界面事件,网络响应,计划的事件以及许多其他类型的异步数据。 Combine声明发布者公开随时间变化的值, 订阅者从发布那里接收这些值。

  3. CoreAudioTypes: The CoreAudioTypes framework declares common data types and constants used by other Core Audio interfaces. This framework also includes a handful of convenience functions.

    CoreAudioTypes: CoreAudioTypes框架声明其他Core Audio接口使用的通用数据类型和常量。 该框架还包括一些便利功能。

  4. Core Haptics: Core Haptics lets you add customized haptic and audio feedback to your app. Use haptics to engage users physically, with tactile and audio feedback that gets attention and reinforces actions. Some system-provided interface elements — like pickers, switches, and sliders — automatically provide haptic feedback as users interact with them. With Core Haptics, you extend this functionality by composing and combining haptics beyond the default patterns.

    核心触觉:核心触觉可让您向应用程序添加自定义的触觉和音频反馈。 使用触觉,通过触觉和音频反馈吸引用户并增强动作,从而与用户进行身体互动。 系统提供的某些界面元素(例如选择器,开关和滑块)会在用户与其互动时自动提供触觉反馈。 使用“核心触觉”,您可以通过组合和组合触觉来扩展默认功能之外的功能。

  5. QuickLookThumbnailing: You may want to create a miniature representation, or thumbnail, of a file and its contents to display within your app, or to provide a thumbnail to the operating system. For example, macOS shows thumbnails as part of the Finder app and its Quick Look feature. The QuickLookThumbnailing framework provides an API to generate thumbnails for common file types using the QLThumbnailGenerator object.

    QuickLookThumbnailing :您可能想要创建文件及其内容的微型表示形式或缩略图 ,以显示在应用程序中,或为操作系统提供缩略图。 例如,macOS将缩略图显示为Finder应用程序及其“快速查找”功能的一部分。 QuickLookThumbnailing框架提供了一个API,可以使用QLThumbnailGenerator对象为常见文件类型生成缩略图。

  6. PencilKit: PencilKit makes it easy to incorporate hand-drawn content into your iOS or macOS apps quickly and easily. PencilKit provides a drawing environment for your iOS app that takes input from Apple Pencil, or the user’s finger, and turns it into high-quality images you display in either iOS or macOS. The environment comes with tools for creating, erasing, and selecting lines.

    PencilKit :PencilKit可让您轻松快捷地将手绘内容整合到您的iOS或macOS应用程序中。 PencilKit为iOS应用程序提供了一个绘图环境,该环境可以从Apple Pencil或用户的手指获取输入,并将其转换为您在iOS或macOS中显示的高质量图像。 该环境附带了用于创建,擦除和选择线条的工具。

  7. RealityKit: Use the RealityKit framework to implement high-performance 3D simulation and rendering. RealityKit leverages information provided by the ARKit framework to seamlessly integrate virtual objects into the real world.

    RealityKit :使用RealityKit框架来实现高性能3D模拟和渲染。 RealityKit利用ARKit框架提供的信息将虚拟对象无缝集成到现实世界中。

  8. VisionKit: VisionKit is a small framework that lets your app use the system’s document scanner. Present the document camera as a view controller, which covers the entire screen like the camera function in Notes.

    VisionKit :VisionKit是一个小型框架,可让您的应用使用系统的文档扫描仪。 将文档照相机显示为视图控制器,它像Notes中的照相机功能一样覆盖整个屏幕。

  9. SoundAnalysis: Use the SoundAnalysis framework to analyze audio and recognize it as a particular type, such as laughter or applause. The framework performs its analysis using a Core ML model trained by an MLSoundClassifier. Using the framework’s ability to analyze streamed or file-based audio lets you add intelligent audio recognition capabilities to your app.

    SoundAnalysis :使用SoundAnalysis框架分析音频并将其识别为特殊类型,例如笑声或掌声。 该框架使用由MLSoundClassifier训练的Core ML模型执行分析。 利用该框架分析流音频或基于文件的音频的功能,可以将智能音频识别功能添加到您的应用程序中。

  10. CryptoKit: Use Apple CryptoKit to perform common cryptographic operations: Compute and compare cryptographically secure digests. Use public-key cryptography to create and evaluate digital signatures, and to perform the key exchange. In addition to working with keys stored in memory, you can also use private keys stored in and managed by the Secure Enclave. Generate symmetric keys, and use them in operations like message authentication and encryption. Prefer CryptoKit over lower-level interfaces. CryptoKit frees your app from managing raw pointers, and automatically handles tasks that make your app more secure, like overwriting sensitive data during memory deallocation.

    CryptoKit :使用Apple CryptoKit执行常见的加密操作:计算并比较加密安全摘要。 使用公共密钥密码术创建和评估数字签名,并执行密钥交换。 除了使用存储在内存中的密钥外,您还可以使用存储在Secure Enclave中并由其管理的私钥。 生成对称密钥,并将其用于消息身份验证和加密之类的操作中。 在较低级别的接口上更喜欢CryptoKit。 CryptoKit使您的应用程序从管理原始指针中解放出来,并自动处理使您的应用程序更安全的任务,例如在内存释放期间覆盖敏感数据。

  11. Maps Web Snapshots: The Maps Web Snapshots service can be used to generate static map images from a URL. You can use Snapshots any time that an interactive map is not required, and in any place, you typically use an image URL — in web pages, and in places where JavaScript is not available, such as email clients.

    Maps Web Snapshots :Maps Web Snapshots服务可用于从URL生成静态地图图像。 您可以在不需要交互式地图的任何时间使用快照,并且可以在任何地方(通常在网页中以及在JavaScript不可用的地方,例如电子邮件客户端)使用图像URL。

  12. DriverKit: Use DriverKit to create device drivers that the user installs on their Mac. Drivers built with DriverKit run in userspace, rather than as kernel extensions, for improved system security and stability.

    DriverKit :使用DriverKit创建用户在其Mac上安装的设备驱动程序。 使用DriverKit构建的驱动程序在用户空间中运行,而不是作为内核扩展运行,以提高系统安全性和稳定性。

  13. MetricKit: With MetricKit, you can receive on-device app power and performance metrics captured by the system. A registered app receives reports containing data about the previous 24 hours at most once per day. Use the data in the reports to help improve the performance of your app.

    MetricKit :使用MetricKit,您可以接收系统捕获的设备上应用程序功能和性能指标。 已注册的应用每天最多只能接收一次包含前24小时数据的报告。 使用报告中的数据来帮助提高应用程序的性能。

  14. SystemExtensions: Creating system extensions allow your app to enhance the capabilities of the user’s Mac, without the associated risks of developing kernel extensions (KEXTs). System extensions run in userspace, where they can’t compromise the security or stability of macOS. The system grants these extensions a high level of privilege, so they can perform the kinds of tasks previously reserved to KEXTs.

    SystemExtensions :创建系统扩展允许您的应用增强用户Mac的功能,而不会产生开发内核扩展(KEXT)的相关风险。 系统扩展在用户空间中运行,它们不会损害macOS的安全性或稳定性。 系统向这些扩展授予较高的特权,因此它们可以执行以前保留给KEXT的任务。

  15. EndpointSecurity: Use the Endpoint Security library to create security-related software. Endpoint Security clients monitor system events for potentially malicious activity. Your client registers with Endpoint Security to authorize pending events, or receive notifications of events that have already occurred. These events include process executions, mounting file systems, forking processes, and raising signals.

    EndpointSecurity :使用Endpoint Security库创建与安全性相关的软件。 Endpoint Security客户端监视系统事件中是否存在潜在的恶意活动。 您的客户端向Endpoint Security注册以授权未决事件,或接收已发生事件的通知。 这些事件包括进程执行,挂载文件系统,派生进程和引发信号。

  16. USBSerialDriverKit: The USBSerialDriverKit framework provides an API for developing serial communication drivers for USB devices like modems and serial adapters. The framework builds on DriverKit by adding the ability to set attributes like baud rate and parity and work with a device’s universal asynchronous receiver/transmitter (UART).

    USBSerialDriverKit :USBSerialDriverKit框架提供了一个API,用于为USB设备(如调制解调器和串行适配器)开发串行通信驱动程序。 该框架在DriverKit的基础上增加了设置波特率和奇偶校验等属性的功能,并可以与设备的通用异步接收器/发送器(UART)一起使用。

  17. USBDriverKit: Use the USBDriverKit framework to develop drivers for custom or non-class compliant USB devices for use with macOS. USBDriverKit provides C++ classes you can use to attach and configure your device and create USB message and stream pipes to exchange data. USBDriverKit devices work with the core types defined in the DriverKit framework.

    USBDriverKit :使用USBDriverKit框架开发用于macOS的自定义或非类兼容USB设备的驱动程序。 USBDriverKit提供了C ++类,可用于连接和配置设备以及创建USB消息和流管道以交换数据。 USBDriverKit设备可使用DriverKit框架中定义的核心类型。

  18. HIDDriverKit: The HIDDriverKit framework provides C++ classes for developing drivers for human interface devices: keyboards, pointing devices, and digitizers like pens and touchpads. HIDDriverKit uses the core types defined in DriverKit, and adds features specific to human interface device development.

    HIDDriverKit :HIDDriverKit框架提供了C ++类,用于开发人机界面设备的驱动程序:键盘,定点设备以及诸如笔和触摸板之类的数字化仪。 HIDDriverKit使用DriverKit中定义的核心类型,并添加了特定于人机界面设备开发的功能。

That’s all for today. Happy coding!!

今天就这些。 编码愉快!!

???Thank you for reading???

谢谢你的阅读

翻译自: https://www.freecodecamp.org/news/developer-checklist-what-should-you-not-miss-from-wwdc-2019/

wwdc2019

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值