애플 로그인 on Android
설치 단계 및 이 플러그인의 전체 마크다운 가이드가 포함된 설정 프롬프트를 복사하세요.
애플 로그인은 안드로이드에서 해키입니다. 애플은 안드로이드에 대한 공식 지원을 제공하지 않습니다. Sign in with Apple 안드로이드에서 작동하도록 하려면 약간의 해킹이 필요합니다.
현재 안드로이드는 OAuth2 웹사이트를 표시하기 위해 Chrome 탭을 사용하고 있습니다. 이 접근 방식에는 다음과 같은 문제점이 있습니다:
- 어려운 설정
- 백엔드가 필요합니다
안드로이드에서 흐름을 이해하는 것이 어렵습니다.
안드로이드에서 흐름을 이해하는 방법안드로이드에서 로그인 흐름 다이어그램
flowchart TD
A("await SocialLogin.login()") -->|Handled in the plugin|B(Generate the login URL)
B --> |Pass the link| C(Open the Chrome browser)
C --> D(Wait for the user to login)
D --> |Apple redirects to your backend|E(Handle the data returned from Apple)
E --> F(Redirect back to the app)
F --> G(Return to JS) 서비스 ID를 생성합니다.
서비스 ID 생성
서비스 ID를 생성하기 위해 로그인합니다.-
Click on
Identifiers.
이런 화면을 보실 수 있습니다.
- 이 필드가
App IDs - 앱 ID가 올바르게 설정되어 있는지 확인하세요.
- 이 필드가
-
__CAPGO_KEEP_0__ capability이 활성화되어 있는지 확인하세요.
Sign in with Apple__CAPGO_KEEP_0__ 앱에 대한 __CAPGO_KEEP_0__ 기능이 활성화되어 있는지 확인하세요.- __CAPGO_KEEP_0__ 앱을 클릭하세요.
- __CAPGO_KEEP_0__ capability이 활성화되어 있는지 확인하세요.
Sign in with Apple__CAPGO_KEEP_0__ capability이 활성화되어 있는지 확인하세요.
- __CAPGO_KEEP_0__ capability이 활성화되어 있지 않다면 활성화하세요.
- __CAPGO_KEEP_0__ 앱을 클릭하세요.
-
__CAPGO_KEEP_0__으로 돌아가세요.
All Identifiers
-
__CAPGO_KEEP_0__을 클릭하세요.
App Ids__CAPGO_KEEP_0__으로 이동하세요.Services IDs
-
새로운 서비스 ID 섹션으로 이동하기
-
서비스 ID 생성
-
플러스 버튼 클릭
Servcice IDs새로운 서비스 ID 추가Continue
-
선택
Continuie.
-
를 서비스 ID로 사용하고 있습니다. 이에 대해 다시 한번 확인하고 클릭하세요.
Register
-
새로 생성된 서비스 클릭
-
활성화
Sign in with Apple선택
-
설정
Sign In with Apple
-
애플리케이션 ID가 이전 단계에서 구성된 것과 일치하도록
Primary App ID설정
-
백엔드 호스팅할 도메인을 추가
-
도메인 및 반환 URL 구성 확인
Done
-
설정
Continue
-
클릭하여
Save
-
키 생성
키 생성 섹션-
모두로 돌아가기
All Identifiers
-
클릭하여
Keys
-
플러스 아이콘을 클릭하여
-
키 이름을 지정하십시오
-
__CAPGO_KEEP_2__
Sign in with Apple__CAPGO_KEEP_3__Configure
-
__CAPGO_KEEP_5__
Save
-
Click on
Continue
-
Click on
Register
-
키 ID를 복사하고 키를 다운로드하세요.
-
다운로드 한 키를 백엔드 폴더에 저장하세요.
팀 ID를 가져 오기
팀 ID를 가져 오는 방법 Capgo를 사용하기 위해 Login with Apple 안드로이드에서 사용하기 위해 Team ID. 백엔드에서 사용됩니다.
-
Capgo 개발자 계정으로 이 웹사이트로 스크롤 다운
-
개발자 계정에서
Team ID
앱 리디렉션을 구성하기
Configuring the app redirect백엔드에서 수행하는 단계를 보셨듯이 Redirect back to the app.이 작업은 앱의 수동 변경이 필요합니다.
- Modify the
AndroidManifest.xml-
Android Studio에서 사용할
AndroidStudio
-
Find the
MainActivityMainActivity에 추가할
<intent-filter><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.BROWSABLE" /><data android:scheme="capgo-demo-app" android:host="path" /></intent-filter>
-
- Modify the
MainActivity-
앱을 열어주세요.
MainActivity
-
code를 MainActivity에 추가하여 깊이 링크를 처리하는 데 사용합니다.
@Overrideprotected void onNewIntent(Intent intent) {String action = intent.getAction();Uri data = intent.getData();if (Intent.ACTION_VIEW.equals(action) && data != null) {PluginHandle pluginHandle = getBridge().getPlugin("SocialLogin");if (pluginHandle == null) {Log.i("Apple Login Intent", "SocialLogin login handle is null");return;}Plugin plugin = pluginHandle.getInstance();if (!(plugin instanceof SocialLoginPlugin)) {Log.i("Apple Login Intent", "SocialLogin plugin instance is not SocialLoginPlugin");return;}((SocialLoginPlugin) plugin).handleAppleLoginIntent(intent);return;}super.onNewIntent(intent);}
-
백엔드 구성
'백엔드 구성'이라는 제목을 가진 섹션안드로이드에는 백엔드가 필요하지만 백엔드를 구성하면 IOS에도 영향을 미칩니다. 예를 들어, 다음의 백엔드가 제공됩니다. 여기
이 예제는 다음을 제공합니다.
- JSON 형식의 간단한 데이터베이스
- 애플 서버에서 JWT를 요청하는 방법
- JWT를 검증하는 간단한 방법
= App ID env 클립보드에 복사
ANDROID_SERVICE_ID플러그인을 사용하는 방법IOS_SERVICE_ID플러그인을 사용하는 방법 섹션 제목입니다.
env: { PRIVATE_KEY_FILE: "AuthKey_U93M8LBQK3.p8", KEY_ID: "U93M8LBQK3", TEAM_ID: "UVTJ336J2D", ANDROID_SERVICE_ID: "ee.forgr.io.ionic.starter.service2", IOS_SERVICE_ID: "me.wcaleniewolny.test.ionic.vue", PORT: 3000, REDIRECT_URI: "https://xyz.wcaleniewolny.me/login/callback", BASE_REDIRECT_URL: "capgo-demo-app://path"}= App ID
Copy to clipboardThe usage of the login 기능의 사용은 IOS와 동일합니다. 자세한 정보는 해당 섹션을 참조하세요. HOWEVER, initialize method의 변경은 약간 있습니다.
await SocialLogin.initialize({ apple: { clientId: 'ee.forgr.io.ionic.starter.service2', redirectUrl: 'https://appleloginvps.wcaleniewolny.me/login/callback' }})앱을 생성하는 중입니다
앱을 만들기 위한 섹션-
App ID가 아직 없는 경우 플러스 버튼을 클릭하십시오
-
선택
App IDs계속하기를 클릭하십시오
-
종류를 클릭하십시오
App계속하기를 클릭하십시오Continue
-
__CAPGO_KEEP_0__ 설명과 앱 ID를 입력하세요.
-
__CAPGO_KEEP_1__
Sign with Apple__CAPGO_KEEP_2__
-
__CAPGO_KEEP_3__
Continue
-
앱 등록을 위해 __CAPGO_KEEP_5__ 버튼을 클릭하세요.
Register
안드로이드에서 애플 로그인에서 계속하기
__CAPGO_KEEP_6____CAPGO_KEEP_7__ 사용 중입니다. Android에서 Apple 로그인 인증 및 계정 흐름을 계획하고 연결하세요. @capgo/capacitor-social-login을 사용하여 @capgo/capacitor-social-login의 네이티브 기능을 사용하여 @capgo/capacitor-social-login @capgo/capacitor-social-login의 구현 세부 정보를 사용하여 @capgo/capacitor-passkey @capgo/capacitor-passkey의 구현 세부 정보를 사용하여 @capgo/capacitor-native-biometric @capgo/capacitor-native-biometric의 구현 세부 정보를 사용하여 두 가지 인증 방법을 사용합니다. Two-factor authentication Two-factor authentication의 구현 세부 정보를 사용하여