Name Date Size #Lines LOC

..26-Sep-2023-

build/H26-Sep-2023-662228

ios/H26-Sep-2023-460366

plugin/H26-Sep-2023-10368

src/H26-Sep-2023-524212

.eslintrc.jsH A D26-Sep-2023103 31

.npmignoreH A D26-Sep-2023183 128

CHANGELOG.mdH A D26-Sep-20234.5 KiB12465

README.mdH A D26-Sep-20233 KiB4125

app.plugin.jsH A D26-Sep-202356 11

babel.config.jsH A D26-Sep-2023104 31

expo-module.config.jsonH A D26-Sep-2023127 87

package.jsonH A D26-Sep-20231.1 KiB4241

tsconfig.jsonH A D26-Sep-2023217 109

README.md

1# expo-apple-authentication
2
3This library provides Apple authentication for iOS standalone apps in the managed and bare workflows. Beginning with iOS 13, any app that includes third-party authentication options **must** provide Apple authentication as an option in order to comply with App Store Review guidelines. Learn more about Apple authentication on the ["Sign In with Apple" website](https://developer.apple.com/sign-in-with-apple/).
4
5# API documentation
6
7- [Documentation for the main branch](https://github.com/expo/expo/blob/main/docs/pages/versions/unversioned/sdk/apple-authentication.mdx)
8- [Documentation for the latest stable release](https://docs.expo.dev/versions/latest/sdk/apple-authentication/)
9
10# Installation in managed Expo projects
11
12For [managed](https://docs.expo.dev/archive/managed-vs-bare/) Expo projects, please follow the installation instructions in the [API documentation for the latest stable release](https://docs.expo.dev/versions/latest/sdk/apple-authentication/).
13
14# Installation in bare React Native projects
15
16For bare React Native projects, you must ensure that you have [installed and configured the `expo` package](https://docs.expo.dev/bare/installing-expo-modules/) before continuing.
17
18### Add the package to your npm dependencies
19
20```
21npx expo install expo-apple-authentication
22```
23
24### Configure for iOS
25
26Run `npx pod-install` after installing the npm package.
27
28# Setup iOS project
29
301. Enable the "Sign In with Apple" capability in your app. For bare projects, enable the capability in Xcode under "Signing & Capabilities" -- you'll need to be on Xcode 11 or later.
312. Log into the Apple Developer Console, go to "Certificates, Identifiers, & Profiles" and then "Identifiers".
323. You need to choose a primary app for the Apple Sign In configuration. This is the app whose icon will show up in the Apple Sign In system UI. If you have a set of related apps you might choose the "main" app as the primary, but most likely you'll want to just use the app you're working on now as the primary.
334. In the list of identifiers, click on the one corresponding to your primary app. Enable the "Sign In with Apple" capability, click "Edit", and choose the "Enable as a primary App ID" option. Save the new configuration.
345. If you chose a different app to be the primary, you'll also need to open up the configuration page for your current app, enable the "Sign In with Apple" capability, click "Edit" and choose the "Group with an existing primary App ID" option. Save this configuration as well.
356. Next, go to the "Keys" page and register a new key. Add the "Sign In with Apple" capability, and make sure to choose the correct primary app on the configuration screen.
367. Finally, when you want to make a standalone build to test with, run `expo build:ios --clear-provisioning-profile --revoke-credentials` so that your provisioning profile is regenerated with the new entitlement.
37
38# Contributing
39
40Contributions are very welcome! Please refer to guidelines described in the [contributing guide](https://github.com/expo/expo#contributing).
41