1 parent
8cd38f5ba4
commit
aba06b3443
5 files changed
+375
No files matched your search
@@ -0,0 +1,51 @@
|
||||
# 1. 개발자 계정 만들기
|
||||
|
||||
[목차](README.md) · 다음: [앱 등록과 패키지 준비](02-app-and-package.md)
|
||||
|
||||
## 1. 계정 종류 선택
|
||||
|
||||
EG-BIM을 회사 제품으로 배포한다면 **Company(회사)**로 준비한다. 개인의 취미·학습 프로젝트라면 **Individual(개인)**을 검토한다. 회사가 소유할 앱을 직원 개인의 취미 계정으로 먼저 등록하지 않는 것을 권한다. 이는 이 프로젝트의 운영 권장사항이다.
|
||||
|
||||
Microsoft는 개인 계정을 회사 계정으로 전환하는 기능을 제공하지 않는다. 회사 명의 배포가 필요해지면 새 회사 계정을 만들어야 한다. [계정 유형과 가입 안내](https://learn.microsoft.com/en-us/windows/apps/publish/partner-center/open-a-developer-account)
|
||||
|
||||
## 2. 회사 담당자가 먼저 모을 자료
|
||||
|
||||
| 준비물 | 준비 방법 |
|
||||
| --- | --- |
|
||||
| 회사 정식 명칭·주소 | 회사 등록 서류의 표기를 확인한다. 앱 이름과 회사 법적 명칭은 다를 수 있다. |
|
||||
| 사업체 확인 자료 | D-U-N-S 번호가 있으면 확인한다. 없으면 공식 사업자 등록·법인 등록 등 화면에서 허용하는 서류를 준비한다. |
|
||||
| 담당자 이메일 | 인증 메일을 받을 실제 담당자의 회사 이메일을 준비한다. |
|
||||
| 고객 지원 연락처 | 사용자에게 공개할 회사 연락처를 담당 부서와 정한다. |
|
||||
| 로그인 담당자 | 계정 소유와 담당자 변경을 회사가 관리할 수 있도록 정한다. |
|
||||
|
||||
D-U-N-S는 회사를 식별하는 9자리 번호이며, 한국 사업자등록번호와 다른 값이다. 사업자등록번호를 D-U-N-S 입력칸에 넣지 않는다. 서류로 확인할 경우 최신성·유효기간 조건도 확인한다. 한국 서류의 허용 종류와 번역 요구 여부는 제출 화면/보완 요청을 따른다. [사업체 확인 자료 안내](https://learn.microsoft.com/en-us/windows/apps/publish/store-business-verification-reqs)
|
||||
|
||||
## 3. 회사 계정 가입 순서
|
||||
|
||||
1. 브라우저에서 [Microsoft Store 개발자 가입](https://storedeveloper.microsoft.com/)을 연다.
|
||||
2. **Get started / Get started for free**를 누른다.
|
||||
3. **Company account**를 선택한다.
|
||||
4. Microsoft 계정 또는 지원되는 회사 Microsoft Entra ID 계정으로 로그인한다.
|
||||
5. 회사 정보를 입력한다. D-U-N-S 조회 또는 공식 서류 제출 방식으로 확인한다.
|
||||
6. 담당자·지원 연락처를 입력한다. **인증용 이메일은 회사 도메인과 일치하는 담당자 이메일**을 사용한다.
|
||||
7. 약관을 확인하고, **Verification summary**에서 검증 진행 상황을 확인한다.
|
||||
8. 추가 서류 요청이 있으면 해당 화면에서 보완한다. 검증 완료 후 **Publish to Store**로 이동한다.
|
||||
|
||||
새 가입 절차는 **개인·회사 모두 등록비 무료**다. 결제 화면이 나오면 시작 주소를 다시 확인한다. [가입 절차·비용](https://learn.microsoft.com/en-us/windows/apps/publish/partner-center/open-a-developer-account)
|
||||
|
||||
**완료 확인:** Partner Center에서 **Apps & Games(앱 및 게임)**를 열 수 있고, 가입 검증에 미완료 항목이 없어야 한다.
|
||||
|
||||
## 4. 개인 계정을 만드는 경우
|
||||
|
||||
**Individual developer** 선택 → 개인 Microsoft 계정 로그인 → 신분증·셀피 확인 → 프로필 작성 → **Go to Partner Center dashboard** 순서다. 개인 가입에는 회사/학교 계정을 사용하지 않는다. [개인 가입 안내](https://learn.microsoft.com/en-us/windows/apps/publish/partner-center/open-a-developer-account)
|
||||
|
||||
## 5. 로그인했는데 앱 메뉴가 없을 때
|
||||
|
||||
- 가입에 사용한 계정과 현재 로그인 계정이 같은지 먼저 확인한다.
|
||||
- 회사에서 이미 가입했다면 새 계정을 만들기 전에 기존 관리자에게 앱 관리 권한을 확인한다.
|
||||
- 회사 계정의 소유자 또는 관리자가 **Account settings → User management**에서 역할을 부여해야 할 수 있다. [역할 설정 안내](https://learn.microsoft.com/en-us/windows/apps/publish/partner-center/open-a-developer-account)
|
||||
- 사업체 검증 문제는 **Account settings → Legal info → Developer**와 가입 검증 화면을 확인한다. 오류 내용을 기록하고 요청된 정보만 수정한다. [검증 상태 확인](https://learn.microsoft.com/en-us/windows/apps/publish/store-business-verification-reqs)
|
||||
|
||||
운영 메모: 로그인 주소, 담당 부서, 계정 종류, 검증 완료일을 회사 내부 관리 문서에 적는다. 비밀번호·신분증·사업체 증빙 원본은 소스 저장소에 넣지 않는다.
|
||||
|
||||
여기까지 끝나면 [2. 앱 등록과 패키지 준비](02-app-and-package.md)로 이동한다.
|
||||
@@ -0,0 +1,102 @@
|
||||
# 2. 앱 등록과 패키지 준비
|
||||
|
||||
[목차](README.md) · 이전: [개발자 계정](01-developer-account.md) · 다음: [제출과 공개](03-submit-and-update.md)
|
||||
|
||||
## 1. 앱 이름 예약하기
|
||||
|
||||
1. 가입을 완료한 계정으로 [Partner Center](https://partner.microsoft.com/dashboard)에 로그인한다.
|
||||
2. **Apps & Games → New product**를 연다.
|
||||
3. **MSIX or PWA app**을 선택한다. 이 매뉴얼은 MSIX 경로다.
|
||||
4. 원하는 이름을 입력한다. 예: `EG-BIM`.
|
||||
5. **Check availability**로 사용 가능 여부를 확인한다.
|
||||
6. 사용 가능한 이름이면 **Reserve product name**을 누른다.
|
||||
|
||||
**완료 확인:** EG-BIM의 **Application overview(앱 개요)** 화면이 나온다. 이름 예약만으로 사용자에게 공개되지는 않는다. [Microsoft 시작 안내](https://learn.microsoft.com/en-us/windows/apps/publish/get-started)
|
||||
|
||||
## 2. Store가 정한 식별 정보 복사하기
|
||||
|
||||
앱을 연 상태에서 **Product management → Product identity**로 이동한다. 아래 세 값을 복사해 둔다. 예시를 임의로 만들어 입력하지 않는다.
|
||||
|
||||
| Partner Center 항목 | Installer Studio 입력 위치 |
|
||||
| --- | --- |
|
||||
| `Package/Identity/Name` | **패키지 설정 → Identity Name** |
|
||||
| `Package/Identity/Publisher` | **패키지 설정 → Publisher** |
|
||||
| `Package/Properties/PublisherDisplayName` | **앱 정보 → 게시자 표시명** |
|
||||
|
||||
`Publisher`는 `CN=...` 형태일 수 있으며 게시자 표시명과 다르다. **프로젝트 ID**에는 내부 관리용 `egbim` 등을 사용한다. Store ID나 MSI ProductCode를 프로젝트 ID에 넣을 필요는 없다. Store ID와 Package Family Name은 관리 기록으로 보관한다. [Store 식별 정보](https://learn.microsoft.com/en-us/windows/apps/publish/view-app-identity-details)
|
||||
|
||||
**완료 확인:** 세 값을 복사했으며 원문과 대소문자·공백까지 대조했다. 이 제작기는 자동 Store 연결 기능이 없으므로 사람이 옮겨야 한다.
|
||||
|
||||
## 3. Installer Studio에서 제출 후보 만들기
|
||||
|
||||
샘플 설정을 보존하려면 파일 탐색기에서 `InstallerProject.isproj`와 같은 폴더의 `InstallerProject.isproj.local.json`을 **별도 작업 폴더**로 복사한다. 이름이 다르면 해당 `.isproj`와 그 이름에 `.local.json`을 붙인 파일을 복사한다. `.work`와 `releases`는 복사할 필요 없다. 상대 소스 경로는 폴더가 바뀌면 달라지므로 아래에서 다시 연결한다. 기존 `.json` 프로젝트는 지원하지 않으므로 해당 샘플만 있다면 새 프로젝트를 만든다.
|
||||
|
||||
1. Installer Studio의 **열기**로 복사한 프로젝트를 연다.
|
||||
2. **앱 정보**에서 예약한 앱 이름, 게시자 표시명을 입력한다.
|
||||
3. **파일 구성**에서 실제 배포용 소스 폴더를 연결한다. EG-BIM 예시는 `D:\egbim\repo\14.1\Build`이며, 별도 구성 요소는 실제 위치를 확인한다.
|
||||
4. **패키지 설정**에서 앞 단계의 Name·Publisher를 붙여넣는다.
|
||||
5. 패키지 버전을 입력한다. 이 매뉴얼의 예시는 최초 `14.1.0.0`, 다음 업데이트 `14.1.1.0`이다. 실제 제품의 기존 배포 버전과 맞춰 결정한다.
|
||||
6. 실행 파일과 아키텍처가 맞는지 확인한다. x64 앱에 단순히 arm64를 선택해서 변환할 수는 없다.
|
||||
7. **레지스트리** 탭에서 필요한 설정을 확인한다. 이전 ISM의 설정이 모두 자동으로 가져와졌다고 가정하지 않는다.
|
||||
8. **서명**에서 아래 용도 구분에 맞게 선택한다.
|
||||
9. **검증·빌드**에서 SDK 도구 선택 → 입력 검사 → 빌드 계획 생성 → MSIX 빌드를 차례로 누른다.
|
||||
10. 완료 화면의 산출물 경로를 기록하고 **결과·보고서 내보내기**로 보관한다. 기본 산출물은 프로젝트 폴더의 `releases\<빌드 ID>\package.msix`다.
|
||||
|
||||
Store 제출용 버전은 마지막 자리를 `0`으로 유지하는 규칙으로 운영한다. Name·Publisher를 유지하고 버전을 올린다. Microsoft의 Windows 10/11 패키지 버전 규칙과 파일 형식 조건을 함께 확인한다. [패키지 요구사항](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/app-package-requirements)
|
||||
|
||||
### 서명 선택은 어떻게 하나요?
|
||||
|
||||
| 목적 | 현재 제작기에서 할 일 |
|
||||
| --- | --- |
|
||||
| 내 PC/테스트 PC에서 먼저 설치 | **개발자 서명** 선택 → 현재 Publisher와 일치하는 인증서 생성/선택 → 빌드. 테스트 PC에는 공개 인증서를 별도로 신뢰 등록 |
|
||||
| Store 업로드 후보 생성 | **미서명**으로 생성할 수 있다. Store 식별 정보를 정확히 넣고, 테스트용 빌드와 별도로 보관 |
|
||||
| 일반 사용자가 웹에서 직접 설치 | 공인 서명 등 별도 배포 준비 필요. 현재 테스트 인증서를 그대로 일반 사용자 배포에 사용하지 않음 |
|
||||
|
||||
Store용 MSIX에는 유료 CA 인증서 구매가 선행 조건이 아니다. Microsoft가 심사 후 배포 과정에서 패키지를 다시 서명한다. 현재 미서명 파일을 더블클릭해 설치할 수 있다는 의미는 아니다. [서명 선택 안내](https://learn.microsoft.com/en-us/windows/apps/package-and-deploy/code-signing-options)
|
||||
|
||||
**Store 제출물에 PFX, 인증서 개인 키, 테스트 인증서 등록 스크립트를 넣지 않는다.** 내부 테스트 인증서 등록 방법은 [개발자 서명 설명](../../changes/2026-10-23-developer-signing.md)을 따른다.
|
||||
|
||||
## 4. 현재 제작기의 Store 준비 상태
|
||||
|
||||
2026-10-26 소스 확인 기준이다. 아래는 Microsoft의 제한이 아니라 **우리 프로그램의 구현 상태**다.
|
||||
|
||||
| 항목 | 현재 상태와 해야 할 일 |
|
||||
| --- | --- |
|
||||
| MSIX 파일 생성 | 가능. 생성 결과를 Partner Center에서 수동 검사할 수 있음 |
|
||||
| Name·Publisher·게시자 표시명 입력 | 가능. Store 값을 직접 입력 |
|
||||
| Store 전용 출력 대상 | 미구현. JSON에서 `distribution`을 `store`로 바꾸면 현재 검증이 거부함 |
|
||||
| 현재 `direct` 설정 | 일반 MSIX 생성 경로를 뜻함. Store 승인이나 자동 제출을 의미하지 않음 |
|
||||
| 패키지 언어 | manifest 생성 코드가 `en-us`로 고정됨. 한국어 EG-BIM은 지원 언어 선언을 맞추는 개발 작업 후 다시 생성해야 함 |
|
||||
| Store 전용 자산·버전·정책 검사 | 미구현. Windows App Certification Kit와 Partner Center에서 추가 확인 |
|
||||
| 업로드·심사 요청·그룹 관리 | 브라우저에서 수동 진행 |
|
||||
|
||||
개발 담당자 확인 위치: [manifest 생성과 검증 코드](../../../src/crates/package-domain/src/lib.rs), [제작기 사용 설명](../../../src/README.md).
|
||||
|
||||
**한국어 앱을 그대로 제출하기 전에 언어 선언을 보완한다.** 이미 만든 MSIX 내부 파일을 직접 바꾸면 서명·검증 결과가 무효가 될 수 있으므로, 프로젝트/생성 코드를 수정한 후 새로 빌드한다. 이 매뉴얼 작성으로 해당 기능이 구현되지는 않았다.
|
||||
|
||||
## 5. 설치 및 실행 확인
|
||||
|
||||
EG-BIM 담당자는 테스트 PC에서 다음을 확인하고 결과를 기록한다.
|
||||
|
||||
- 처음 설치한 뒤 시작 메뉴에서 실행되는가?
|
||||
- 기존 `C:\Program Files\Baron` 설치에 의존하지 않고 실행되는가?
|
||||
- 사용자 설정·라이선스·문서가 읽히고 저장되는가?
|
||||
- EgViewer, CAD 연동, 플러그인과 필요한 런타임이 실제로 동작하는가?
|
||||
- 업데이트 후 사용자 데이터가 유지되는가?
|
||||
- 기존 EXE 설치본과 함께 있을 때 충돌하거나 잘못된 프로그램이 실행되지 않는가?
|
||||
- 제거 후 남겨야 하는 사용자 자료가 보존되는가?
|
||||
|
||||
이 목록은 EG-BIM 전환을 위한 프로젝트 점검 항목이다. 현재 샘플의 서명 성공만으로 완료 처리하지 않는다. 기존 EXE 설치본의 제거·데이터 이전도 자동 구현된 상태가 아니다.
|
||||
|
||||
Windows SDK의 **Windows App Certification Kit(WACK)**는 Store 관련 기술 검사를 수행하는 별도 도구다. 없다면 Windows SDK 설치 구성에서 해당 도구를 준비한다.
|
||||
|
||||
1. 위에서 만든 테스트 서명본을 테스트 PC에 설치한다.
|
||||
2. 시작 메뉴에서 **Windows App Cert Kit**를 검색해 실행한다.
|
||||
3. **Validate a Windows app**을 선택한다.
|
||||
4. 설치한 EG-BIM을 선택한다. 목록에 없으면 **My app isn't listed**에서 전체 목록을 확인한다.
|
||||
5. **Next**로 검사 항목을 확인하고 실행한다. 실패를 피하려고 필요한 검사를 임의로 제외하지 않는다.
|
||||
6. 완료 시 보고서 저장 폴더를 지정한다. HTML/XML 결과를 열어 실패 항목을 확인한다.
|
||||
|
||||
실패 항목은 개발 담당자가 수정한다. 검사 통과 후에도 Store 심사는 별도로 진행된다. [WACK 사용 설명](https://learn.microsoft.com/en-us/windows/uwp/debug-test-perf/windows-app-certification-kit)
|
||||
|
||||
**완료 확인:** 설치·주요 기능·업데이트 시험 결과와 WACK 보고서가 준비되고, Store 식별 정보 및 언어 설정을 확인했다. 그다음 [3. 제출·심사·공개](03-submit-and-update.md)로 이동한다.
|
||||
@@ -0,0 +1,111 @@
|
||||
# 3. 제출·심사·공개·업데이트
|
||||
|
||||
[목차](README.md) · 이전: [패키지 준비](02-app-and-package.md) · 문제 해결: [오류와 체크리스트](04-troubleshooting.md)
|
||||
|
||||
## 1. 제출에 쓸 자료 준비
|
||||
|
||||
아래는 EG-BIM 담당자가 모아둘 작업 자료다. 사실과 다른 기능 설명이나 임시 문구는 제거한다.
|
||||
|
||||
| 자료 | 준비 예시 |
|
||||
| --- | --- |
|
||||
| 제출 후보 파일 | 검증한 `package.msix` |
|
||||
| 앱 소개 | 누구를 위한 프로그램인지, 실제 제공하는 기능, 사용에 필요한 라이선스 |
|
||||
| 실행 화면 | 시작 화면, 실제 작업 화면, 주요 결과 화면 |
|
||||
| 고객 지원 | 담당 이메일, 지원 웹페이지 |
|
||||
| 개인정보처리방침 | 개인정보 수집·전송이 있는 경우 실제 공개 URL |
|
||||
| 심사 안내 | 실행 순서, 샘플 자료, 필요한 외부 프로그램, 테스트용 계정/라이선스 |
|
||||
| 변경 사항 | 이번 버전에서 추가·수정한 내용 |
|
||||
|
||||
스크린샷은 현재 PC 앱을 직접 실행해 촬영한다. Desktop 기준 PNG, 1366×768 이상, 파일당 50MB 이하로 준비할 수 있다. 설치 프로그램 화면이나 제작기 화면이 아니라 **EG-BIM 사용 화면**을 올린다. 로고는 업로드 칸에 표시된 규격에 맞춘다. [공식 이미지 규격](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/screenshots-and-images)
|
||||
|
||||
## 2. 제출 초안 만들기
|
||||
|
||||
Partner Center에서 **Apps & Games → 해당 앱 → Application overview → Product release → Start submission**을 연다. 아래 항목을 작성하고 각각 **Save**를 누른다.
|
||||
|
||||
| 화면 | 입력 내용 |
|
||||
| --- | --- |
|
||||
| Pricing and availability | 가격, 제공 국가, 공개 대상 |
|
||||
| Properties | 앱 분류, 회사 연락처, 필요한 개인정보처리방침 URL |
|
||||
| Age ratings | 연령 등급 설문에 실제 앱 내용대로 답변 |
|
||||
| Packages | MSIX 업로드 |
|
||||
| Store listings | 지원 언어별 소개, 스크린샷 등 |
|
||||
| Submission options | 심사 참고 사항, 공개 시점, 제한된 기능 사용 설명 |
|
||||
|
||||
회사 계정의 연락처, 개인정보 수집·전송 시의 개인정보처리방침 등 필수 항목을 확인한다. 앱 소개와 스크린샷은 최소 한 지원 언어에서 완성해야 한다. 최소 한 장의 스크린샷을 준비하고, 이 프로젝트에서는 기능을 보여주는 4장을 권한다. [제출 항목 안내](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/create-app-submission)
|
||||
|
||||
가격은 제품 판매 정책에 맞춰 결정한다. 기존 EG-BIM 라이선스가 필요한 앱이라면 다운로드 가격과 사용 라이선스 조건을 혼동하지 않도록 소개문에 설명한다. 유료 판매를 선택할 때는 계정에 요구되는 정산·세금 설정도 완료한다.
|
||||
|
||||
## 3. 첫 배포는 비공개 테스트로 시작
|
||||
|
||||
권장 절차는 **Pricing and availability → Visibility → Audience → Private audience**를 선택하고 테스트 그룹을 만드는 것이다. 대상자의 **개인 Microsoft 계정 이메일**을 등록한다. 회사 개발자 계정을 Entra ID로 만들었더라도, 비공개 앱을 받는 테스트 계정은 개인 Microsoft 계정이어야 한다.
|
||||
|
||||
**Public audience로 제출한 뒤에는 Private audience로 되돌릴 수 없다.** 최초 테스트 단계에서 공개 대상을 먼저 확인한다. 검색에서 숨기는 Discoverability 설정만으로 특정 사람만 설치하도록 제한되는 것은 아니다. [공개 범위 설정](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/visibility-options)
|
||||
|
||||
## 4. MSIX 업로드
|
||||
|
||||
1. **Packages**를 연다.
|
||||
2. 파일 선택 또는 끌어놓기로 `package.msix`를 올린다. `.msix` 자체도 지원 형식이다.
|
||||
3. 업로드와 자동 검사가 끝날 때까지 기다린다.
|
||||
4. 오류가 있으면 해당 문구를 기록한다. 잘못된 파일을 제거하고 원본 설정을 수정해 다시 빌드한다.
|
||||
5. 표시된 Name, 버전, 아키텍처, 지원 장치를 확인하고 **Save**한다.
|
||||
|
||||
Microsoft는 `.msixupload`도 권장하지만 현재 제작기는 `.msix`를 생성한다. 확장자만 `.msixupload`로 바꾸지 않는다. 로컬 프로젝트 JSON이나 CER는 패키지 업로드 대상이 아니다. [업로드 가능한 형식과 검사](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/upload-app-packages)
|
||||
|
||||
**완료 확인:** 패키지 검사 오류가 없고 제출 필수 항목이 완료됐다. 파일에 `Validated`가 보여도 섹션 전체는 필수 입력 누락으로 `Incomplete`일 수 있다. [제출 완료 조건](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/create-app-submission)
|
||||
|
||||
## 5. 심사자가 실행할 수 있도록 설명
|
||||
|
||||
**Submission options → Notes for certification**에 아래 항목을 실제 동작에 맞춰 작성한다. 이 틀은 EG-BIM용 작성 예시이며 완성된 심사 설명문은 아니다.
|
||||
|
||||
```text
|
||||
앱 목적: [실제 EG-BIM 기능 설명]
|
||||
실행 방법: 시작 메뉴에서 [실제 이름] 실행
|
||||
시험 순서: [샘플 열기 → 기능 실행 → 결과 확인]
|
||||
필요 환경: [지원 OS, 외부 CAD/런타임 등 실제 필요한 항목]
|
||||
라이선스/로그인: [필요 여부, 심사용 접근 방법]
|
||||
runFullTrust 사용 이유: [기존 Win32 실행 구조와 필요한 기능을 구체적으로 설명]
|
||||
이번 변경: [수정한 내용]
|
||||
```
|
||||
|
||||
현재 제작기는 `runFullTrust`를 선언한다. 제한된 기능 설명을 요청받으면 앱에서 왜 필요한지 작성한다. 이것이 관리자 권한의 자동 부여를 의미하지는 않는다. 시험에 로그인이 필요하면 운영 계정 대신 심사용 계정을 마련하고 접근 방법을 심사 메모에 제공한다. [심사 메모와 기능 설명](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/manage-submission-options)
|
||||
|
||||
공개 시점을 직접 정하려면 같은 화면의 Publishing hold 옵션에서 **Publish now를 선택할 때까지 공개하지 않는 항목**을 선택한다. 기본값은 심사 통과 후 공개 진행이므로 최초 제출에서 확인한다. [공개 보류 옵션](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/manage-submission-options)
|
||||
|
||||
## 6. 심사 요청 및 결과 확인
|
||||
|
||||
1. 앱 개요에서 누락 항목을 확인한다.
|
||||
2. **Submit for certification**을 누른다.
|
||||
3. 상태와 알림 이메일을 확인한다. 심사에는 보안·기술·내용 검토가 포함된다.
|
||||
4. 거절되면 심사 보고서의 실패 항목을 수정하고 다시 제출한다.
|
||||
5. 통과 후 수동 공개 보류를 선택했다면 **Publish now**로 배포를 시작한다.
|
||||
|
||||
통과·공개까지 걸리는 시간은 심사 상태에 따라 달라진다. 공개 처리 중과 실제 Store 설치 가능 상태를 구분한다. [심사 절차](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/app-certification-process)
|
||||
|
||||
비공개 앱은 Partner Center가 제공하는 **인증이 필요한 비공개 앱 링크**로 테스트한다. 대상 Microsoft 계정으로 Store에 로그인해 설치·실행을 확인한다. 비대상 계정의 접근 제한도 확인한다. [비공개 링크 안내](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/visibility-options)
|
||||
|
||||
## 7. 개발자 → 1차 → 2차 → 일반 사용자
|
||||
|
||||
최초 제출을 게시한 후 앱 개요의 **Package flights → New package flight**에서 테스트 배포를 만든다. Flight는 특정 그룹에 다른 패키지를 제공하는 기능이다. 테스트 패키지도 심사를 거친다. [Package flights](https://learn.microsoft.com/en-us/windows/apps/publish/package-flights)
|
||||
|
||||
| 단계 | 이 프로젝트의 권장 그룹 | 진행 기준 |
|
||||
| --- | --- | --- |
|
||||
| 개발자 | `egbim-dev` | 설치·실행·기본 기능 확인 |
|
||||
| 1차 테스터 | `egbim-test1` | 주요 업무 시나리오 확인 |
|
||||
| 2차 테스터 | `egbim-test2` | 실제 작업 환경·업데이트 확인 |
|
||||
| 사용자 | 일반 제출 | 앞 단계 결과를 확인하고 일반 공개 |
|
||||
|
||||
Flight 생성 시 이름과 테스트 그룹을 지정하고, Packages에 패키지를 추가해 제출한다. 다음 단계에는 검증한 패키지를 복사/선택해 같은 후보를 배포할 수 있다. 여러 Flight에 속한 사용자는 설정한 우선순위의 영향을 받으므로 처음에는 그룹이 겹치지 않게 운영한다. 비공개 앱이라면 상위 Private audience에도 해당 테스터가 포함되어야 한다. [Flight 생성·순위](https://learn.microsoft.com/en-us/windows/apps/publish/package-flights), [비공개 대상과 Flight](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/visibility-options)
|
||||
|
||||
일반 공개할 때는 새 일반 제출에서 검증 패키지를 선택하고 Public audience로 전환한다. **현재 Installer Studio에 이 네 단계 관리 화면은 없으며 Partner Center에서 운영한다.** Cloudflare의 그룹 배포 설정과 자동 연동되지 않는다.
|
||||
|
||||
## 8. 다음 버전 배포
|
||||
|
||||
이 프로젝트의 반복 작업은 다음과 같다.
|
||||
|
||||
1. 같은 Store 앱의 Name·Publisher를 유지한다.
|
||||
2. 예를 들어 `14.1.0.0`을 `14.1.1.0`으로 올리고 전체 MSIX를 새로 만든다.
|
||||
3. 기존 버전에서 업데이트하는 시험을 진행한다.
|
||||
4. Flight에서 확인한 뒤 같은 앱의 업데이트 제출로 배포한다. 새 제품을 만들지 않는다.
|
||||
5. 새 설치와 기존 설치의 업데이트 결과를 각각 확인한다.
|
||||
|
||||
문제 버전을 받은 사용자에게 낮은 버전이 자동 설치된다고 가정하지 않는다. 수정 패키지에 더 높은 버전을 부여해 재제출하는 복구 계획을 준비한다. [버전 및 복구 안내](https://learn.microsoft.com/en-us/windows/apps/publish/publish-your-app/msix/app-package-requirements)
|
||||
@@ -0,0 +1,65 @@
|
||||
# 4. 문제가 생겼을 때와 최종 체크리스트
|
||||
|
||||
[목차](README.md)
|
||||
|
||||
## 오류를 어디서 해결하나요?
|
||||
|
||||
아래 표는 앞 문서의 확인 순서를 묶은 작업표다. 오류 전문을 보관한 뒤 해당 단계로 돌아간다.
|
||||
|
||||
| 상황 | 먼저 할 일 | 설명 위치 |
|
||||
| --- | --- | --- |
|
||||
| 가입 중 결제 화면이 나옴 | 새 가입 시작 주소와 최신 등록 경로 확인 | [계정 만들기](01-developer-account.md) |
|
||||
| 회사 계정 검증이 끝나지 않음 | 검증 화면의 추가 서류·이메일 요청 확인 | [계정 만들기](01-developer-account.md) |
|
||||
| Apps & Games가 안 보임 | 로그인 계정과 회사 역할 확인 | [계정 만들기](01-developer-account.md) |
|
||||
| 앱 이름을 예약할 수 없음 | 사용 가능 여부 확인 후 다른 이름 검토 | [앱 이름 예약](02-app-and-package.md) |
|
||||
| Identity/Publisher 불일치 | Product identity에서 다시 복사해 새 빌드 | [식별 정보 입력](02-app-and-package.md) |
|
||||
| 로컬 설치에서 인증서 신뢰 오류 | 테스트용 서명 및 해당 PC의 공개 인증서 등록 확인 | [개발자 서명](../../changes/2026-10-23-developer-signing.md) |
|
||||
| 제작기에서 Store 대상 미지원 | 현재 전용 대상 미구현. JSON 값을 바꿔 해결하지 않음 | [제작기 범위](02-app-and-package.md#4-현재-제작기의-store-준비-상태) |
|
||||
| 한국어 앱인데 en-us로 표시됨 | manifest 언어 설정 보완 후 재생성 | [제작기 범위](02-app-and-package.md#4-현재-제작기의-store-준비-상태) |
|
||||
| 업로드 후 Incomplete | 패키지 오류와 섹션 필수 항목을 모두 확인 | [패키지 업로드](03-submit-and-update.md) |
|
||||
| 테스트 그룹인데 설치할 수 없음 | 개인 Microsoft 계정 이메일, Private audience, 링크 확인 | [비공개 테스트](03-submit-and-update.md) |
|
||||
| 설치는 되지만 EG-BIM 실행 실패 | 런타임, 경로, 라이선스, 레지스트리, 외부 연동 시험 | [설치 및 실행 확인](02-app-and-package.md) |
|
||||
| 심사자가 앱을 시험하지 못함 | 심사 보고서와 Notes for certification 보완 | [심사 요청](03-submit-and-update.md) |
|
||||
|
||||
계정 문제를 문의할 때는 계정 종류, 발생 단계, 오류 문구, 발생 시간을 준비한다. Microsoft의 지원 창구는 [Store 시작 FAQ](https://learn.microsoft.com/en-us/windows/apps/publish/faq/get-started-with-the-microsoft-store)를 참고한다. 개인 인증자료나 계정 비밀번호는 이 저장소에 첨부하지 않는다.
|
||||
|
||||
## 제출 담당자 체크리스트
|
||||
|
||||
이 목록은 EG-BIM의 작업 확인용이다. 모든 항목을 체크해도 Microsoft의 승인 자체를 보장하는 것은 아니다.
|
||||
|
||||
- [ ] 올바른 회사/개인 계정으로 가입했고 검증을 완료했다.
|
||||
- [ ] 담당자 변경 시 계정을 관리할 회사 내부 절차가 있다.
|
||||
- [ ] 앱 이름을 예약하고 세 가지 Store 식별 정보를 기록했다.
|
||||
- [ ] 패키지의 Name·Publisher·게시자 표시명이 Store 값과 같다.
|
||||
- [ ] 샘플 이름·임시 로고·임시 소개를 실제 제품 정보로 교체했다.
|
||||
- [ ] 실제 지원 언어와 manifest 언어 선언을 맞췄다.
|
||||
- [ ] 신규 설치·주요 기능·기존 버전 업데이트를 시험했다.
|
||||
- [ ] 기존 EXE 설치본과 사용자 데이터 처리 방식을 확인했다.
|
||||
- [ ] WACK 보고서와 빌드 결과를 보관했다.
|
||||
- [ ] 패키지와 소개문이 같은 제품·버전을 설명한다.
|
||||
- [ ] 개인정보처리방침, 지원 연락처, 라이선스 조건을 확인했다.
|
||||
- [ ] 심사자가 기능을 실행할 수 있는 안내를 준비했다.
|
||||
- [ ] 최초 공개 대상과 공개 시점을 확인했다.
|
||||
- [ ] Store에서 실제 설치·업데이트 결과를 확인할 담당자를 정했다.
|
||||
|
||||
## 배포 기록 양식
|
||||
|
||||
아래 내용을 회사 내부 배포 기록에 복사한다. 실제 계정 정보나 승인 여부를 대신 작성한 것은 아니다.
|
||||
|
||||
```text
|
||||
제품명:
|
||||
담당자:
|
||||
Store ID:
|
||||
Identity Name:
|
||||
Publisher:
|
||||
PublisherDisplayName:
|
||||
패키지 버전 / 아키텍처:
|
||||
제작기 빌드 ID / 산출물 경로 / SHA-256:
|
||||
설치·업데이트 시험 기록:
|
||||
WACK 보고서 위치:
|
||||
제출 날짜 / 제출 번호:
|
||||
대상 그룹 / 공개 범위:
|
||||
심사 결과 / 보완 사항:
|
||||
실제 공개 날짜:
|
||||
Store 설치·업데이트 확인 결과:
|
||||
```
|
||||
@@ -0,0 +1,46 @@
|
||||
# 처음 시작하는 Microsoft Store 배포
|
||||
|
||||
대상: EG-BIM 같은 Windows 데스크톱 프로그램을 **MSIX 파일로 Microsoft Store에 올리려는 담당자**.
|
||||
|
||||
확인일: **2026-10-26, 한국 시간**. 웹 화면은 계정·언어·개편에 따라 달라질 수 있어 영문 메뉴명도 함께 적었다. 실제 계정 생성이나 Store 제출을 수행한 기록이 아니라, Microsoft 공식 안내와 현재 Installer Studio 코드를 확인해 작성한 매뉴얼이다.
|
||||
|
||||
## 어디부터 시작하나요?
|
||||
|
||||
아래 문서를 순서대로 따라간다. 처음에는 1번의 계정 준비와 2번의 앱 이름 예약까지만 해도 된다. 프로그램이 완성되기 전에 준비할 수 있다.
|
||||
|
||||
| 순서 | 따라 할 문서 | 끝나면 준비되는 것 |
|
||||
| --- | --- | --- |
|
||||
| 1 | [개발자 계정 만들기](01-developer-account.md) | 회사 또는 개인 개발자 계정 |
|
||||
| 2 | [앱 등록과 패키지 준비](02-app-and-package.md) | Store 식별 정보, 테스트 및 제출 후보 MSIX |
|
||||
| 3 | [제출·심사·공개·업데이트](03-submit-and-update.md) | 비공개 테스트부터 일반 사용자 공개까지의 절차 |
|
||||
| 4 | [문제가 생겼을 때와 최종 체크리스트](04-troubleshooting.md) | 오류별 확인 위치, 제출 전 점검표 |
|
||||
|
||||
전체 흐름:
|
||||
|
||||
```text
|
||||
개발자 계정 만들기 → 앱 이름 예약 → Store 식별 정보 복사
|
||||
→ Installer Studio 설정 → 패키지 생성·설치 시험
|
||||
→ Partner Center에 업로드 → 심사 → 테스트 그룹 배포 → 일반 공개
|
||||
```
|
||||
|
||||
## 이름이 비슷해서 헷갈리는 것
|
||||
|
||||
| 용어 | 쉬운 설명 |
|
||||
| --- | --- |
|
||||
| Microsoft 계정 | Microsoft 서비스에 로그인하는 계정 |
|
||||
| 개발자 계정 | Store에 앱을 올릴 수 있도록 등록·검증된 게시자 계정 |
|
||||
| Partner Center | 앱 등록, 제출, 심사 결과를 관리하는 웹사이트 |
|
||||
| Installer Studio | 이 저장소에서 개발 중인 설치 패키지 제작 프로그램 |
|
||||
| MSIX | 배포할 프로그램 파일과 설치 정보를 담은 패키지 |
|
||||
| 제출(Submission) | 패키지와 소개 자료를 묶어 심사를 요청하는 한 차례 작업 |
|
||||
| 인증서 | 패키지 서명에 사용하는 파일/저장소 정보. 개발자 계정과 별개 |
|
||||
|
||||
Store의 MSIX 배포에서는 Microsoft가 패키지 호스팅과 배포 서명을 처리한다. 이 경로를 시작하기 위해 Cloudflare 업로드나 유료 코드 서명 인증서 구매를 먼저 할 필요는 없다. 자체 웹사이트 배포는 별도 경로다. [배포 방식 안내](https://learn.microsoft.com/en-us/windows/apps/package-and-deploy/choose-distribution-path)
|
||||
|
||||
## 현재 프로그램으로 할 수 있는 범위
|
||||
|
||||
Installer Studio는 파일·레지스트리 설정, Identity 입력, MSIX 생성, 테스트용 자체 서명을 지원한다. **Store 계정 연결, 자동 업로드, Store 전용 사전 검사는 아직 없다.** 이 매뉴얼의 웹 작업은 브라우저의 Partner Center에서 직접 한다.
|
||||
|
||||
현재 코드에는 Store 제출 전에 보완할 부분도 있다. 특히 패키지 언어가 `en-us`로 고정되어 있으며 한국어 앱에 맞춘 설정이 필요하다. [2번 문서의 현재 구현 확인](02-app-and-package.md#4-현재-제작기의-store-준비-상태)을 먼저 읽는다. 패키지 생성 성공을 Store 심사 통과로 간주하지 않는다.
|
||||
|
||||
관련 자료: [기존 Store 배포 설계](../../plan/05-microsoft-store.md), [개발자 서명 사용 방법](../../changes/2026-10-23-developer-signing.md).
|
||||
Reference in new issue
Block a user