@titanium/applesignin
v1.0.45
Published
⭐ Axway Amplify module that allows you to use the iOS 13+ Apple Sign In API with Appcelerator Titanium SDK
Downloads
61
Readme
👉 A group of Axway employees, ex-Axway employees, and some developers from Titanium community have created a legal org and now officially decide all matters related to future of these products.
API FAQ:
- API Best Practices
- What is API Security?
- OWASP Top 10 List for API Security
- What is API Security?
- Top API Trends for 2022
- What is a Frankenstein API?
- What is a Zombie API?
- API Developer Experience
- API Cybersecurity 101
- YouTube API Videos
- YouTube API Shorts Videos
@titanium/applesignin
This is an experiment by Brenton House using open-source projects. You are welcome to try it out but be aware of the risks_
- 📝 Description
- 🚀 Getting Started
- ✨Features
- Requirements
- Example
- APIs
- License
- Author
- 📚Learn More
- 📣 Feedback
- ©️ Legal
📝 Description
Native modules that allows you to use the iOS 13+ Apple Sign In API with Axway Titanium native mobile apps.
This is a repackaging of the compiled iOS module for ti.applesignin to allow for installation via npm.
🚀 Getting Started
Install @titanium/applesignin
in root of project
npm install @titanium/applesignin
Add entitlement to tiapp.xml
Be sure the
<entitlements>
element goes outside of the<plist>
element in yourtiapp.xml
file!
<ti:app xmlns:ti="http://ti.appcelerator.org">
<ios>
<plist>
</plist>
<entitlements>
<dict>
<key>com.apple.developer.applesignin</key>
<array>
<string>Default</string>
</array>
</dict>
</entitlements>
</ios>
</ti:app>
Add to Apple Developer Account
- Go to your App Identifiers - https://developer.apple.com/account/resources/identifiers/list
- Create new identifier (or edit an existing one)
- Add capability by checking the box for
Sign In with Apple
- Create a provisioning profile for that app id - https://developer.apple.com/account/resources/profiles/list
- Download and install that provisioning profile
- Make sure id of Titanium app matches App ID created:
<id>YOUR.APP.ID</id>
✨Features
- [x] Includes Titanium native iOS module:
ti.applesignin 1.1.1
Requirements
The following project- and OS-requirements are necessary:
- [x] Xcode 11+
- [x] iOS 13+
- [x] Titanium SDK 8.0.0+
Example
This module was designed to follow a similar scheme like Ti.Facebook and Ti.GoogleSignIn.
const AppleSignIn = require('@titanium/applesignin');
AppleSignIn.addEventListener('login', function (event) {
console.warn(`event: ${JSON.stringify(event, null, 2)}`);
if (!event.success) {
alert(event.error);
return;
}
});
const win = Ti.UI.createWindow({
backgroundColor: '#fff'
});
const btn = AppleSignIn.createLoginButton({ width: 280, height: 38 });
btn.addEventListener('click', function () {
AppleSignIn.authorize();
});
win.add(btn);
win.open();
APIs
Methods
createLoginButton()
Creates a new localized login button.
authorize({ scopes })
Starts an authorization flow with an optional array of scoped. Defaults to all scopes ( fullName
and email
).
getCredentialState(userId, callback)
Fetches the current credential state with a given user-id (received from the event.profile.userId
key of the login
event).
The result is returned to the state
parameter of the callback
and can be authorized, revoked, transferred or unknown.
Events
login
The login event with the user's profile
.
License
MIT
Author
Hans Knöchel
📚Learn More
⭐ ti.applesignin GitHub Repo - Repo for original ti.applesignin module
📣 Feedback
Have an idea or a comment? Join in the conversation here!
©️ Legal
Modules are licensed under Apache 2.0 from https://github.com/appcelerator-modules/titanium-applesignin
Alloy is developed by Appcelerator and the community and is Copyright © 2012-Present by Appcelerator, Inc. All Rights Reserved.
Alloy is made available under the Apache Public License, version 2. See their license file for more information.
Appcelerator is a registered trademark of Appcelerator, Inc. Titanium is a registered trademark of Appcelerator, Inc. Please see the LEGAL information about using trademarks, privacy policy, terms of usage and other legal information at http://www.appcelerator.com/legal.