티스토리 뷰
[ 목표 ]
App Store에 올리는 것이 아니라 자체 사이트에 링크를 공유하는 방식으로 맥 앱을 배포하고 싶습니다.
에버노트 처럼 말이죠!
에버노트의 다운로드 링크는 이렇게 되어있습니다.
https://cdn1.evernote.com/boron/mac/builds/Evernote-10.9.10-mac-ddl-ga-2439.dmg
또 다른 예로
애플의 SF Symbol 앱이 있습니다.
앱스토어가 아니라 개발자 사이트에서 download하는 방식으로 앱을 배포했습니다.
다운로드 링크는 이렇게 되어있습니다.
https://devimages-cdn.apple.com/design/resources/download/SF-Symbols-2.1.dmg
정확히 뭔지 모르겠지만
dmg 라는 파일을 만들어서 배포해야하나봅니다!
[1] app 파일 만들기
XCode를 열고 Product > Archive 해줍니다.
그 다음 Distribute App을 해주고
Copy App을 해줍니다.
일단 저는 desktop으로 export 해줬습니다.
그러면 폴더가 생겼고 그안에는 확장자가 app인
응용 프로그램이 생겼습니다!
참고로 이 파일을 응용프로그램으로 끌어오면
다른 응용프로그램들 처럼 쓸 수 있습니다!
하지만 우리의 목표는 나만 쓰는게 아니라 다른 사람들에게 공유하려고 하는 것이니까
dmg 파일 만들기 단계를 진행해줍니다
[2] (옵션) 앱 아이콘 설정
우선 앱아이콘을 준비합니다. icns 확장자여야합니다.
저는 anyconv.com/ko/png-to-icns-byeonhwangi/ 여기서 png를 icns으로 바꿔줬습니다.
1번 단계가 끝나고
만들어진 app 파일에 정보가져오기를 해줍니다.
그리고 앱 아이콘을 여기로 끌어와주면
앱 아이콘이 설정됩니다.
[3] (옵션) Applications link 만들어서 폴더에 넣어주기
앱 다운받으면 친절하게 응용프로그램으로 바로 이동하라고 이런 화면이 제공되는 경우가 있잖아요!!
이렇게 하고 싶으면
폴더에 Applications에 대한 링크를 만들어서 넣어주면 됩니다.
해당 폴더로 이동해서 아래 명령어를 실행해주면
ln -s /Applications
이렇게 Applications 링크가 생깁니다.
그러면 이렇게 앱을 Applications로 끌어오기 할 수 있게 됩니다.
보통 끌어오기를 유도하는 이미지를 설정해주는 데
이것은 여기 블로그를 참고해주세요
[4] dmg 파일 만들기
디스크 유틸리티에 들어가줍니다.
파일 > 새로운 이미지 > 폴더에서 이미지
눌러줍니다.
아까 만들어진 폴더를 선택합니다.
그리고 저장을 누르면
이렇게 dmg가 만들어집니다!!
만들어진 파일을 누르면 위치에도 나오고
이렇게 뜹니다.
[4] dmg 파일을 서버에 업로드하고 링크 공유하기
(따로 설명없습니다)
[ Reference ]
nebori.tistory.com/47#dfref-footnote-1
'🍏 > MacOS' 카테고리의 다른 글
[Automator] Merge된 로컬 브랜치들을 지워주는 단축어 만들기 (0) | 2021.04.01 |
---|---|
[MacOS] Custom 폰트를 쓰려면 info.plist에ATSApplicationFontsPath를 추가하자 (0) | 2020.09.03 |
[Automator] DerivedData 폴더 지우는 단축어 만들기 (0) | 2020.08.10 |
- Total
- Today
- Yesterday
- flutter 앱 출시
- ipad multitasking
- github actions
- flutter build mode
- Flutter Text Gradient
- 플러터 얼럿
- drf custom error
- 플러터 싱글톤
- 장고 Custom Management Command
- PencilKit
- METAL
- Django FCM
- cocoapod
- flutter deep link
- Python Type Hint
- DRF APIException
- SerializerMethodField
- Sketch 누끼
- Django Heroku Scheduler
- Watch App for iOS App vs Watch App
- Flutter getter setter
- 구글 Geocoding API
- Django Firebase Cloud Messaging
- Dart Factory
- Flutter 로딩
- Flutter Clipboard
- 장고 URL querystring
- ribs
- flutter dynamic link
- Flutter Spacer
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |