애플 로그인 (안드로이드)
설치 단계와 이 플러그인의 전체 마크다운 가이드와 함께 설정 프롬프트를 복사합니다.
애플 로그인은 안드로이드에서 약간의 해킹이 필요합니다. 애플은 안드로이드에 대한 공식 지원을 제공하지 않기 때문입니다. Sign in with Apple 안드로이드는 현재 Chrome 탭을 사용하여 OAuth2 웹사이트를 표시합니다. 이 접근 방식에는 다음과 같은 문제가 있습니다:
어려운 구성
- __CAPGO_KEEP_0__
- 백엔드가 필요합니다
안드로이드에서 흐름을 이해하는 방법
안드로이드에서 흐름을 이해하는 방법흐름을 설명하기 위해 다이어그램을 사용해 보겠습니다.
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를 생성하는 방법-
애플 개발자 Portal로 로그인하세요 애플 개발자 Portal.
-
애플 개발자 Portal의 식별자 섹션을 클릭하세요
Identifiers.
이런 화면을 볼 수 있어야 합니다:
- 이 필드가
App IDs - 앱 ID를 찾을 수 있어야 합니다.
- 이 필드가
-
앱에
Sign in with Apple능성이 활성화되어 있어야 합니다.- 앱을 클릭하세요
- __CAPGO_KEEP_1__이 활성화되어 있는지 확인하세요.
Sign in with Apple__CAPGO_KEEP_2__이 활성화되어 있는지 확인하세요.
- 활성화되지 않은 경우 활성화하세요.
- 앱을 클릭하세요
-
모두 보기로 돌아가기
All Identifiers
-
__CAPGO_KEEP_3__을 클릭하세요.
App Ids__CAPGO_KEEP_4__으로 이동하세요.Services IDs
-
새 식별자 만들기
-
플러스 버튼을 클릭하세요.
-
선택
Servcice IDs및 클릭Continue
-
설명과 식별자 입력 후 클릭
Continuie.
-
세부 사항을 확인하고
Register
-
새로 생성된 서비스를 클릭하세요
-
Enable the
Sign in with Appleoption
-
Configure the
Sign In with Apple
-
애플리케이션 ID가 이전 단계에서 설정된 Cloudflare App ID로 설정되어 있는지 확인하십시오.
Primary App IDApp ID를 설정하는 드롭다운
-
도메인 및 반환 URL 필드를 설정하십시오.
-
서비스 설정을 위해
Done
-
서비스 설정을 위해
Continue
-
서비스 설정을 위해
Save
-
키를 생성합니다.
키 생성하기-
모두로 돌아가기
All Identifiers
-
클릭하세요.
Keys
-
플러스 아이콘을 클릭하세요.
-
키 이름을 입력하세요.
-
선택
Sign in with Apple및 클릭Configure
-
기본 App ID를 선택하고
Save
-
Click on
Continue
-
Continue 버튼을 클릭하세요.
Register
-
__CAPGO_KEEP_0__ ID를 복사하고 키를 다운로드하세요.
-
다운로드 한 키 파일을 찾고 백엔드 폴더에 저장하세요.
팀 ID를 찾는 방법
팀 ID를 찾는 방법In order to use Login with Apple on Android, you need to get the Team ID. It will be used in the backend.
-
Go to this website and scroll down
-
Find the
Team ID
Configuring the app redirect
개발자 계정에서앱 리다이렉트 설정 Redirect back to the app뒤에 설명한 것처럼 백엔드에서 수행하는 단계가 있습니다. 이 단계는 앱의 수동 변경이 필요합니다.
- 수정하기
AndroidManifest.xml-
파일을 열어보세요. Android Studio에서 AndroidManifest.xml 파일을 사용할 것입니다.
AndroidStudio
-
찾아보기
MainActivityIntent 필터 __CAPGO_KEEP_0__를 MainActivity에 추가하세요.
<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>
-
- Android Studio에서 MainActivity.java 파일을 열어보세요.
MainActivity-
MainActivity.java 파일을 열어보세요.
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 검증
이 튜토리얼에서 말한 모든 것을 고려하여, 여기서 어떻게 섹션이 보일지 알려드리겠습니다. env 섹션의 예시입니다.
ANDROID_SERVICE_ID= 서비스 IDIOS_SERVICE_ID= 앱 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"}플러그인을 사용하는 방법
플러그인을 사용하는 방법기능의 사용 방법은 IOS와 동일합니다. 더 많은 정보를 얻으려면 해당 섹션을 참조하세요. login 그러나 그러나__, the initialize 메서드의 변경은 조금 다릅니다.
await SocialLogin.initialize({ apple: { clientId: 'ee.forgr.io.ionic.starter.service2', redirectUrl: 'https://appleloginvps.wcaleniewolny.me/login/callback' }})앱을 만들기
제목이 '앱을 만들기'인 섹션-
이미 App ID가 있는 경우 이 단계를 건너뛸 수 있습니다. Apple Login for IOS를 구성한 경우 이 단계를 따르지 마십시오.
-
App ID가 아직 없는 경우 플러스 버튼을 클릭하세요.
App IDsAdd new identifier plus button
-
Select
App선택Continue
-
계속하기를 클릭하세요.
-
App ID 유형을 선택합니다.
Sign with Apple능력
-
클릭
Continue
-
세부 정보를 확인하고 클릭
Register