[ios/translation] Core Services Layer

Source: Internet
Author: User
Tags gcd new set

This article is my own hard translation, please reprint the friend annotated, translated in Z.mjun csdn blog http://blog.csdn.net/Zheng_Paul, thanks!

Translated on October 4, 2015

Core Services Layer

This core service layer contains the application's basic system services. The key to these services is between the core functionality and the core function library, and all applications must use these underlying types. This layer also contains individual technologies, such as local, iCloud, public media, and networking.

High-level features

The next section describes some of the high-level features under the core service layer

  • Point-to-point service (Peer-to-peer services)
    Multipoint connection libraries provide a point-to-point connection over Bluetooth. You can initialize a point-to-point connection and a nearby device for an interactive session. Although point-to-point connections are mostly used in games, you can use this feature on other types of applications.
  • icloud storage ( icloud Design guide )
    icloud storage lets apps write user documents and data to the local hub. Users can access these from their computer or from an iOS device. By allowing users ' documents to be stored in icloud, users will not need to use other devices to modify or view their documents in sync, and to explicitly transfer files. Secure storage of documents to the user's icloud account. Even if the user loses the device, the document is still in icloud storage. The
    app can use these two icloud storage attribute methods.

    • icloud document storage documents store
      to store documents and data in the user's icloud account
    • icloud key-value data storage key Datastore
      can share small data through an interface between apps
    • CloudKit Storage
      When you want to create public shared content, or manage your own transfer of data

    Many apps use icloud documents to share documents with icloud accounts. Users are concerned about when a document is shared with the device, or they can see and manage the documents from the share. In contrast, ICloud key-value data users are invisible, but this is a way to share this small data (10k) through the application interface. Applications should use this feature to store non-critical application data, such as preferences configuration, rather than important application data.

  • Object Block (Blocks programming Topics) (Guide)
    Block objects is based on the C language structure and can be used under the C language code and the Obj-c language code. A block object is essentially a non-named function and data obtained through this method, some in other applications by calling closure or lambda. Blocks has the use of unique, such as callbacks or in one place you need a way to simply combine running code and related data.
    In Ios,blocks is usually used in

    • Similar alternatives to delegate and delegate methods
    • Similar alternative callback functions
    • Perform a one-time operation completion Handler
    • Easy to perform tasks for all the item in and focus
    • Use with dispatch queues to perform asynchronous tasks
  • Data protection (APP Programming Guide for IOS)
    Data protection allows applications to use more advantageous, built-in encrypted user data in some devices. When your app specifies a special file that needs to be protected, the system uses encryption to store the file on the hard disk. When the device is locked, your app is not even hacked to access this file. However, when the user unlocks the device, the app can make the decrypted file that was created to access the file. You can use different levels of data protection.
    Implementing data protection you need to consider how you want to create and manage the files you want to protect. The application must be designed to protect the data when it is created, and when the user locks and unlocks the device, access the file condition.

  • Support file sharing
    Share file support allows the app to get user data on iTunes9.1 or later versions. An app needs to declare supporting file sharing and share content under/documents's dictionary. Users can move files that have been shared to itunes into or out of the dictionary. This feature does not allow apps to share files from other apps to the app on the same device. This feature requires pasteboard and a document management object.
    Allow sharing of files into your app

    • Add uifilesharingenabled key to your app info.plist inside, set this value to Yes
    • Put the files you want to share under the documents of the application
    • When the device is connected to the computer, itunes displays the file share to display on the selected device's performance.
    • Users can add files to the dictionary, or move files to the desktop.

    Apps that support file sharing should have the ability to manage them. When the file is added to documents, and responds accordingly. For example, some of your apps appear to be adding content through the interface, and you shouldn't be presenting the file list for this directory to the user, but rather telling them how to use the files.

  • GCD (Guide)
    GCD is a BSD-level technology that can be used to manage tasks in execution. GCD, combined with asynchronous compilation mode, is a very convenient and efficient mode for high-level languages of different threads. GCD also provides many convenient methods for low-level tasks, such as reading and writing file descriptions, implementing timers, monitoring signals, and handling events.

  • In-app Purchanse
    In-app Purchase offers to sell the content, services, and itunes content specified in the app to your app. These features can be implemented using the Storekit library, which provides the ability to use itunes accounts to handle transaction matters. The app controls the entire user experience and the content or service that visualizes the payment presentation. For content that can be downloaded, you can host your own content or let Apple services help you carry it.

  • Sqlite
    SQLite Library provides an efficient embedded database in the application, you can not need to use an external database service. For apps, you can create a local database and manage or log files. This library is designed for the average user and has efficient access and processing capabilities.
    Access the header files of the SQLite library in/usr/include/sqlite3.h, under the installation path of Xcode.

  • supports XML documentation for LIBXML2
    This library provides the Nsxmlparser class with the ability to process content from XML documents. In addition, the operation of XML data under the LIBXML2 library is also supported. This is an open source library that lets you quickly parse or write XML data or convert XML content into HTML.
    The header file of the LIBXML2 library is under/usr/include/libxml2/, under the installation path of Xcode.

Core Service Libraries Core Services Framework

The next step is to introduce the functions under this library and library.

  • 5.0 System Users accounts.framework (AC)
  • 2.0 Contacts addressbook.framework(AB)
  • 6.0 Advertising adsupport.framework (AS)
  • 2.0 Network Processing _cfnetwork.framework
    _ (Guide) (CF)
  • 8.0 Cloud Processing _cloudkit.framework
    _ (CK)
  • 3.0 Core Data _coredata.framework
    _ (NS)
  • 2.0 core Function _corefoundation.framework
    _ (NS)
  • 2.0 Core Position _corelocation.framework
    _ (Guide) (CL)
  • 4.0 Core Media _coremedia.framework
    _ (CM)
  • 4.2 Core gesture _coremotion.framework
    _ (CM)
  • 4.2 Core Phone _coretelephony.framework
    _ (CT)
  • 4.0 Calendar Event _eventkit.framework
    _ (EK)
  • 2.0 function _foundation.framework
    _ (NS)
  • 8.0 Health healthkit.framework (HK)
  • 7.0 Javescript javascriptcore.framework(JS)
  • 3.0 Mobile Core Services mobilecoreservices.framework(UT)
  • 7.0多-point connection multipeer Connectivity Framework(MC)
  • 5.0 News newsstandkit.framework(Guide) (NK)
  • 6.0 Passes passkit.framework (Guide) (PK)
  • 4.0 Quick Previews quicklook.framework(QL)
  • 7.0 Safari Services safariservices.framework(SS)
  • 6.0 Social social.framework(SL)
  • 3.0 Payment storekit.framework (Guide) (SK)
  • 2.0 System Configuration systemconfiguration.framework(SC)
  • 8.0 Network webkit.framework (WK)
  • 5.0 System Users accounts.framework
    Provides a single sign-on mode. This mode avoids multi-account logins, and the optimized login experience allows you to log in and modify user data through this library. At the same time, it simplifies management-time licensing issues for your application. Using this library can be combined with the social framework. (AC)

  • 2.0 Contacts addressbook.framework
    Directly into the user's address book. If your app needs to use Address book information, you can use this library to access and modify your address book information. For example, you need to find the information that recently joined the Address Book and display it. (AB)

  • 6.0 advertising adsupport.framework
    Provides access to identifiers for advertising purposes, and this framework also provides a flag that determines whether the user has selected ad tracking. Applications need to be readable and loyal to ad tracking before they are accessed using identifiers. (AS)

  • 2.0 Network Processing _cfnetwork.framework
    _ (Guide)
    A C language-based, object-oriented, efficient processing network library. This library provides many details on the heap of processing network components and makes it easier to use the underlying modules, such as BSD sockets. and simplifies the ftp,http service, or resolves DNS host. (CF)

    • Using BSD sockets
    • Create encrypted links when using SLL or TLS
    • Resolve DNS Hosts
    • For HTTP service, verify HTTP service, HTTPS service, etc. work
    • Working with the FTP service
    • Publish, process and browse bonjour services, etc.(Guide)
  • 8.0 Cloud Processing _cloudkit.framework
    Provides a channel to transfer data from your app to icloud. Unlike other icloud technologies, this transfer is more straightforward. This library gives you the ability to control your data when it changes. It can also be used to manage all types of data.
    The app can share the store data directly to all users, and the public library is set up to apply bindings, even if you don't have an icloud account. The application developer can manage the data directly here, and can understand the behavior of any user modifying the data. (CK)

  • 3.0 Core Data _coredata.framework
    is a management data model technology, Model-view-controller application. This library is intended to make the data model used by the application the highest standard. Instead of defining the data structure, use the graphical tools inside Xcode to construct a pattern representation of the pattern. When the application runs, the creation, management, and visualization of the data schema in the instance is done through this library. (NS)

    • object data is stored in a high-performance SQLite database
    • Results of a Nsfetchedresultscontroller class management TableView
    • ability to manage redo/restore in the basics Text modification capability
    • supports validation of property values
    • supports inheritance and ensures consistent relationships between classes
    • supports forming groups in memory, filtering data and organizing data capabilities
      If you're going to be ready to develop a new app or plan to upgrade an already existing app. You should consider using this library. For an example of using this library in an IOS app, see Core Data Tutorial for iOS
  • 2.0 core Features _corefoundation.framework
    Some columns are based on the C language interface, providing the most basic data processing, and features of the iOS service. (CF)

    • collection data types (arrays, groups, and others)
    • Bundles
    • string Management
    • time date and times management
    • raw data fast tube
    • Network Connections, network flow Management
    • Multi-threading, looping operations
    • ports port and Socket connections
      This library has a large relationship with the Foundation library and provides the same basic features as the Obj-c-based interface. When you need to mix class functions or types, you can take advantage of the "toll-free bridging" that exists in two different classes, this "toll-free bridging" refers to using this library and library type Exchange and any library in some methods. This is a number of data types that can be used, including collections and string data types. The class and type descriptions for each of the framework state whether a object is toll-free bridged and, if so, what object it is connected to.
  • 2.0 Core Position _corelocation.framework
    _ (Guide)
    This library provides location and header information for your app. For location information, this library uses Gps,cell, or WiFi remote control, to find the user's actual dimensions and accuracy. You can use this technique in your app to provide users with coordinate information. For example, you may have a business that wants to get users near a restaurant, store or factory, etc., or is his current correct location. (CL)

    • Access the compass information in a gyroscope-equipped iOS device
    • Get monitoring area information on a map or in a Bluetooth message
    • Use low-energy local Search
    • Used in conjunction with Mapkit to improve coordinate quality in a given situation, for example, navigation.
  • 4.0 Core Media _coremedia.framework
    Provides the underlying image type for the Avfoundation library. Many applications need to use this library, but he is only used by a handful of developers to create or present audio and video content precisely. (CM)

  • 4.2 Core gesture _coremotion.framework
    Provides a set of interface based on gesture data for a device. The library supports access to raw and processed accelerator data using a new set of block-based interfaces. With a gyroscope device, you can detect the original gyroscope data and the game based on gyroscope data, or other applications that use gestures, or as a way to improve the user experience. You can access this data and use the data in health-care activities with the hardware device that comes with motion statistics. (CM)

  • 4.2 Core Phone _coretelephony.framework
    Provides a phone-based information interface for devices that have a phone call function. The app uses this library to get phone services about the user. Suitable for some phone applications, such as VoIP (Internet telephony) applications, and can accept all notifications from the phone. (CT)

  • 4.0 Calendar Event _eventkit.framework
    Contains the most general audio and video that can be manipulated. Do not use this framework directly. Provides an interface to access the calendar on a user's device. (EK)

    • Get events that already exist, and get event reminders from the user's calendar
    • Add an event to the user's calendar
    • The user can create a reminder event and display the alarm on the app of the reminder event + Configure calendar events, including this is the contents of the alarm
      Important: Ask the user's calendar and prompt the data to be used with the consent of the user. The app must handle the user's forbidden access. The application is also encouraged to provide the info.plist on the keys description, request for access requests.
  • 2.0 function _foundation.framework
    In the Core Foundation library, this library provides a number of features based on the Obj-c base class. The description can be found in the Core Foundation library. (NS)

    • Collection data types (arrays, groups, and others)
    • Bundles
    • Strings String Management
    • Date and time management
    • Fast management of raw data
    • Network connectivity, network flow Management
    • Multi-threaded, cyclic operations
    • Ports port and Socket connections
    • Internet
    • Regular match expression
    • Caching mechanism
  • 8.0 Health healthkit.framework
    A brand new library that manages user and health-related information. In diffusion-based applications that can track healthy devices, and health information, it's hard for users to know how they do it. However, this library makes it possible to use the information about health care that is shared by the terrier, either from an iOS device or manually by a user. User health information is kept in a safe and centralized location. Users can see all of their health information in health applications.
    When your app supports this library, you can access user-related health information, get some user information, and not need to track your health care device. The sharing of information is determined by the user. When your app can get this data, you can register a notification to get information changes, and get information time that can be fine-regulated. For example, you can request a user's blood pressure in the app and set a notification that warns about the high and low blood pressure. (HK)

  • 7.0 Javescript javascriptcore.framework
    Many Javescript standard classes based on OBJ-C packaging are provided. Use this library to test Javescript code and parse JSON data. (JS)

  • 3.0 Mobile Core Services mobilecoreservices.framework
    Defines the underlying type for the UTIs standard definition (UT)

  • 7.0多-point connection multipeerconnectivity.framework
    Devices that provide search attachments and interact directly with devices that are not connected over the network. This library can easily create multipoint sessions, enabling reliable, sequential data transfer and real-time transmission. Under this library, you can interact and seamlessly exchange data with nearby devices.
    This library provides the interface for scanning and managing the network services. The app can integrate Mcbrowserviewcontroller into the interface to display a list of devices that let the user choose. Alternatively, you can use the Mcnearbyservicebrowser class to view and manage devices. (MC)

  • 5.0 News newsstandkit.framework(Guide)
    Provide a center for reading magazines and news. Publishers can create apps from this library to develop cloth magazines, news to Newsstand. Newsstand support background download, after you start the download, the system will control the download operation and notify the user after completion. (NK)

  • 6.0 Passes passkit.framework (Guide)
    The Passbook app provides users with a place to buy coupons, airline tickets, other tickets and business discount cards. Replace the previous offline purchase method. Users can now purchase them under iOS devices and use them as before. This library provides the Obj-c interface to integrate items into your application. You can use this app to combine network interfaces and file formats to create and manage your company offers.
    Create passes through your company's servers, and pay through the user's devices (via Email,safairi, and apps). The pass itself is a very special file format that has been encrypted before it is paid. The ID of this file relates to information about the service so that the user can know what these services are doing. It can also have a bar code, or other information that you can use to verify or return and use. (PK)

  • 4.0 Quick Previews quicklook.framework
    , in the application, provide a direct interface preview file content. This library is prepared for working files that download files and location sources from the network. After obtaining the files, you use the Viewcontroller provided by the library to directly display the contents of these files. (QL)

  • 7.0 Safari Services safariservices.framework
    Provide the program with add URLs to the user's Safari reading list inside. (SS)

  • 6.0 Social social.framework
    Provides a simple interface to access the user's social media account. This library replaces the Twitter library, and adds support for other social accounts, including Facebook, Sina Weibo, and others. The app uses this library to modify the status, and account avatar. This library works with the account library to provide users with a simple login mode and to determine the authentication through user accounts. (SL)

  • 3.0 Payment storekit.framework (Guide)
    Supports payment content and services for iOS apps such as In-app Purchase. For example, you can use this feature to allow users to unlock additional content in the app. Or if you're a game developer, you can use it to provide additional game levels. The same. This library manages transactions by processing payment requests and obtaining information about purchases through the user's account with the itunes store. (SK)

  • 2.0 System Configuration systemconfiguration.framework
    Provides a accessibility interface that you can use to determine the network settings for your device. You can use this library to determine whether a particular server can be accessed under WiFi settings or under a cellular network. (SC)

  • 8.0 Network webkit.framework
    ([Core Services layer][2])
    Let the app display HTML content. In addition to displaying HTML, you can provide basic modifications, with the ability to replace text, modify document content and properties, including CSS. WebKit also supports the creation and modification of content under DOM-level HTML documents. For example, you can use a single page of summary link lists, modify them and replace them with the priority displayed in a network interface. (WK)

[ios/translation] Core Services Layer

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.