저는 NetworkUpp (ios https://apps.apple.com/tr/app/networkupp/id1499186365?l=tr / android https://play.google.com/store/apps/details?id=com.ciplidev.network_up ) 응용 프로그램으로 AppStore와 PlayStore 모두에 게시 프로세스를 진행했습니다. 나는 상점을 기준으로 자신을위한 일반적인 단계를 기록해야한다고 생각했으며 내 경험을 당신과 공유하고 싶었습니다.
터미널을 통해 응용 프로그램을 만들고 개발자 계정으로이 응용 프로그램을 게시합니다. 현재 실행중인 앱을 나와 함께 게시하고 싶을 것입니다. 비슷한 단계를 수행하여 응용 프로그램을 게시 할 수 있습니다. 그러나 푸시 알림 또는 백그라운드 작업과 같은 일부 종속성이있는 경우 IOS에 대한 일부 요구 사항 (기능)을 활성화해야합니다.
flutter create repo_explorer
그건 그렇고, GitHub 리포지토리 탐색기 응용 프로그램을 개발할 생각이므로 repo_explorer라고했습니다. 이를 개발 한 후 새 버전을 릴리스하는 방법을 설명하는 새 게시물을 작성할 수 있습니다.
Flutter 프로젝트를 열고 AppStore부터 시작하겠습니다.
응용 프로그램에 응용 프로그램 아이콘을 추가하려면 appicon.co http://appicon.co/ 사이트에서 아이콘 을 작성하여 수동으로 포털 https://pub.dev/packages/flutter_launcher_icons 에 추가하거나 flutter_launcher_icons 패키지 https://pub.dev/packages/flutter_native_splash 를 사용할 수 있습니다 .
먼저, AppStore https://www.apple.com/tr/ios/app-store/ 에 앱 을 게시하려면 Apple Developer Program https://developer.apple.com/programs/enroll/ 에 가입 해야합니다.
개인 계정으로 연간 $ 100를 받습니다. https://developer.apple.com/programs/enroll/
귀하가 Apple 개발자 프로그램에 등록했다고 가정합니다. 내가 틀렸다면 Apple Developer 프로그램에 가입하지 않고 AppleStore에 응용 프로그램을 할당 할 수 없기 때문에 AppStore 단계를 건너 뛸 수 있습니다.
모든 iOS 애플리케이션은 고유 한 번들 ID와 연관되어 있습니다. Xcode 를 사용 하여 flutter 프로젝트에서 Runner.xcworkspace 파일 을 열어 가장 쉬운 방법으로 설정하십시오 .
repo_explorer / ios / Runner.xcworkspace
Apple 개발자 계정으로 로그인했는지 확인해야합니다. 로그인하지 않은 경우 Xcode 환경 설정에서 로그인 할 수 있습니다.
등록 된 계정이 아래 나열되어 있지 않으면 더하기 기호가있는 계정을 추가해야합니다.
이제 계정이 Xcode에 나열되었습니다. 프로젝트에서 러너를 클릭 하고 서명 및 기능 탭으로 전환하십시오. 여기에서 자동 서명 섹션을 확인하고 번들 ID를 변경하십시오. 나는 변경 에 com.onatcipli.repoExplorer
번들 ID를 변경했지만 developer.apple.com https://developer.apple.com/account/resources/identifiers/list/bundleId의 식별자 섹션에 표시되지 않으면 당황하지 마십시오. 아직 만들지 않았기 때문에 번들 ID를 생성하는 두 가지 옵션이 있습니다.
첫 번째 옵션 (이것은 내가 가장 좋아하는 것입니다) , Xcode에서 임의의 기능을 추가하고 제거 할 수 있습니다. 이 조치는 Xcode를 트리거하여 번들 ID를 생성합니다. 아래 그림에서 볼 수 있듯이 XC는 이름 섹션에 Xcode로 추가되었습니다.
두 번째 옵션 인 developer.apple.co https://developer.apple.com/account/resources/identifiers/list/bundleId는 식별자 섹션에 더하기 아이콘을 수동으로 추가합니다.
이제 앱을 생성하고 내 앱을 먼저 클릭 한 다음 더하기 아이콘을 클릭하여 App Store Connect에 새 앱을 추가해야합니다.
만들기를 클릭하면 아래에 앱 정보 페이지가 표시됩니다
참고 : 앱 에서 iPad 또는 가로 모드를 지원하지 않으려면 일반 탭에서이 필드를 선택 취소 하십시오
이제 Xcode로 이동하여 Product → Archive에서 프로젝트의 아카이브를 만들 수 있습니다 .
일반 iOS 기기를 선택하십시오.
보관이 완료된 후 Organizer가 열리지 않으면 Window ( Window → Organizer ) 에서 열 수 있습니다 .
Organizer를 연 후 응용 프로그램을 선택하고 Distribute App 섹션을 클릭하십시오.
설치 프로세스가 완료되면 App Store Connect 에서 이메일을 받게됩니다.
이 작업을 수행 한 후 App Store Connect https://appstoreconnect.apple.com/ 에서 앱을 열고 왼쪽에서 제출 준비를 선택하고 앱 미리보기 및 스크린 샷, 키워드, 프로모션 텍스트, 설명, 지원 URL, 마케팅 URL, 앱 검토 정보를 선택하십시오. 편집 과 같은 필수 필드를 채우십시오.
앱 미리보기 및 스크린 샷 Apple은 앱에 3 개 이상의 이미지를 원합니다. 화면 사양 페이지에서 기술 사양을 확인할 수 있습니다 .
요약하면
, 6.5 인치 (1242 x 2688 픽셀)
용 3 장, 5.5 인치 (1242 x 2208 픽셀)
용 3 장, 12.9 인치 (2048 x 2732 픽셀) 용 3 장,
iPad (2 세대) 12.9 인치 (2048 x 2732 픽셀) 3 매
일반적으로 3 개의 시뮬레이터를 열어이 사진을 만들고 앱에서 스크린 샷을 찍습니다. 나는 Figma에서 픽셀을 설정했습니다 (이것은 내가 가장 좋아하는 것입니다 :))
거부를 피하기 위해 애플리케이션을 보내기 전에 공동 구현 거부https://developer.apple.com/app-store/review/ ( 공통 앱 거부 방지 ) 및 예방을 위한 App Store 검토 지침 https://developer.apple.com/app-store/review/guidelines/ ( App Store Review Guidelines )을 읽어야 합니다.
빌드 및 다른 모든 필드를 추가 한 후 저장 단추를 클릭하십시오. 검토로 보내기를 보낸 후 누락 된 것이 있으면 다음과 같은 경고가 표시됩니다.
모든 정보를 완료 한 후 검토에 보내기를 클릭하면이 창이 열리고 응용 프로그램에 따라이 필드가 채워집니다.
앱 빌드 상태 및 앱 상태 에서 상태 수단 확인
검토를 위해 앱을 보냈으며 검토 대기 중입니다. 검토가 시작되면 검토 중으로 업데이트되고 승인되면 판매 준비로 변경됩니다. 우리가 이것을 볼 때, 우리는 가게에서 우리의 자리를 차지했습니다!
먼저, 25 달러의 Google 개발자 계정이 필요합니다.
키 저장소가없는 경우 다음 명령을 사용하여 Mac / Linux에서 키 저장소를 작성하십시오.
keytool -genkey -v -keystore ~ / key.jks -keyalg RSA -keysize 2048-유효성 10000-별칭 키
Windows (USER_NAME'i değiştirmeyi unutmayın) :
keytool -genkey -v -keystore c : /Users/USER_NAME/key.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias 키
이 스크립트
key.jks
는 홈 디렉토리에 저장됩니다.
다른 곳에 보관하려면 -keystore 매개 변수에 전달한 인수를 변경하십시오.
그러나 키 저장소 파일을 비밀로 유지하십시오!
<app dir>/android/key.properties키 저장소 파일에 대한 참조 가 포함 된 이름 지정된 파일을 작성 하십시오 (공개 장소에 보관하지 마십시오).
storePassword = <이전 단계의 암호>
keyPassword = <이전 단계의 암호>
keyAlias = key
storeFile = / Users / onatcipli / key.jks
storeFile 파일 경로에 대한 오류가 발생하면 이 질문을 확인할 수 있습니다
<app dir>/android/app/build.gradle 파일을 편집하여 시작할 수 있습니다.
코드 android 블록 뒤에 다음 코드를 추가하십시오.
def keystoreProperties = 새 속성 ()
def keystorePropertiesFile = rootProject.file ( 'key.properties')
if (keystorePropertiesFile.exists ()) {
keystoreProperties.load (new FileInputStream (keystorePropertiesFile))
}
다음과 같이 buildTypes 코드 블록을 수정하십시오 .
signingConfigs {
release {
keyAlias keystoreProperties [ 'keyAlias']
keyPassword keystoreProperties [ 'keyPassword']
storeFile keystoreProperties [ 'storeFile']? file (keystoreProperties [ 'storeFile']) : null
storePassword keystoreProperties [ 'storePassword']
}
}
buildTypes {
릴리스 {
signingConfig signingConfigs.release
}
}
변경 후 gradle 파일 flutter clean 을 수행해야 할 수도 있습니다.
PlayStore에 응용 프로그램을 게시 하려면 응용 프로그램 apk를 가져와야합니다 (-bi -per-abi 장치는 장치 하드웨어별로 apk 크기로 나뉩니다).
플러터 빌드 apk — 스플릿 당
제 Google Play Console https://play.google.com/apps/publish 로 이동할 수 있습니다.
응용 프로그램 만들기 버튼을 클릭하고 응용 프로그램 이름을 입력하십시오. 앱을 게시하려면 아래 페이지가 표시되며이 확인란을 완료하고 녹색으로 표시해야합니다. 사진의 사양은 각각.
버전 생성 버튼을 클릭 한 후 Google에서 애플리케이션에 서명하도록 요청한 후 질문이 표시되면 예를 누르면 APK를 끌어서 놓을 수 있습니다.
repo_explorer / 빌드 / 출력 / apk / 릴리스
응용 프로그램 버전 의 설치 프로세스 후 컨텐츠 평가 단계로 진행합니다.
컨텐츠 평가 프로세스가 끝나면 애플리케이션 컨텐츠 섹션으로 진행합니다 .
애플리케이션 컨텐츠 섹션을 완료 한 후 가격 책정 및 배포 단계로 진행합니다.
그 후, 우리는 상점 입구를 완료합니다.
이 단계에서는 최소한 하나의 응용 프로그램 아이콘 (512x512)과 2 개의 응용 프로그램 이미지가 필요합니다 (모든 가장자리는 320px 및 최대 3840px이어야합니다).
매장에 들어가는 과정을 완료 한 후에는 위에서 본대로 모든 작업을 수행했습니다. 여기서 애플리케이션 버전으로 이동 하고 프로덕션 카드에서 관리 버튼을 누릅니다. 다음 이미지가 표시되면 이제 애플리케이션이 롤아웃되므로 PlayStore의 관계자가 적절한 지 여부를 확인합니다.
GooglePlay 콘솔에서 앱 상태의 의미를 완전히 이해하려면 롤아웃 및 임시 앱 게시 기사를 확인하십시오.
검토를 위해 앱을 보냈으며 검토 대기 중입니다. 검토가 시작되면 검토 중으로 업데이트되고 승인되면 판매 준비로 변경됩니다. 우리가 이것을 볼 때, 우리는 가게에서 우리의 자리를 차지했습니다!