티스토리 뷰

공부

[iOS 16] Developer Mode

Zedd0202 2022. 6. 12. 19:08
반응형

 

안녕하세요 :) Zedd입니다.

대충 Developer Mode가 나왔다는 이야기는 들었는데...

5분...? 

ㅇㅋ

옛날에 막 40분씩 어떻게 봤지ㅎ

 

# What is Developer Mode

- 기본적으로 비활성화 되어있음. 명시적으로 개발자모드로 등록(enroll)해야함.

- 등록하면 재부팅 및 시스템 업데이트 후에도 유지

 

# 왜 생김

- 잠재적으로 유해한 소프트웨어를 실수로 기기에 설치하지 못하도록 보호

- 개발자 전용 기능으로 노출되는 공격(attack) 경로를 줄임


Developer Mode의 핵심은 이겁니다.

잠재적으로 유해한 소프트웨어를 실수로 기기에 설치하지 못하도록 보호


소프트웨어.. 그냥 앱은 보통 

1. App Store

2. Enterprise (In-House) 

3. Test Flight

같은 데서 다운받아서 설치할 수 있는데, 이때는 Developer Mode가 필요하지 않습니다.  

 

✅[Developer Mode를 켜야하는 경우]

1. Development로 서명된 앱(Personal Team포함)을 실행하고 설치해야할 때

2. Testing 자동화

3. 앱 Debug 및 Instrument

4. (WWDC에서 언급은 안됐지만) Apple Configurator로 .ipa파일을 설치할 때 

1번의 경우가 많을 텐데..한번 봅시다! 

 

Xcode 14에서 iOS 16 기기를 연결하면 Scheme Selector쪽에 아래와 같이 

Developer Mode가 꺼져있기 때문에 Unavailable Device(사용할 수 없는 기기)라고 나오게 됩니다. 

그냥 선택하고 빌드하려고 하면

니 아이폰에 Developer Mode가 켜져있지 않네 ㅎ 하는 경고창이 뜨게 됩니다. 

 

# Developr Mode 켜는 방법

설정 > 개인정보 보호 및 보안 > Developer Mode(개발자 모드)에 있습니다. 

(시뮬레이터는 없습니다)

Developer Mode를 on하면 

1. 재부팅

2. 재부팅하고 잠금해제하면 기기에 Developer Mode를 켤건지 확인하는 Alert이 뜸

3. ㅇㅋ

하면 Developer Mode가 완전히 켜지게 됩니다. 

 

참고로 iOS, iPadOS, watchOS에 필요한거라 

watchOS도 iOS와 똑같이 설정 > 개인 정보 보호 > Developer Mode(개발자 모드)에 가서 켜면 됩니다.

 

# When Developer Mode is turned on, your device security will be reduced

☝️ 설명 중 마지막줄에 나와있듯이...

When Developer Mode is turned on, your device security will be reduced.

Developer Mode를 켜면, 기기의 보안이 약화될 것.


WWDC에 따르면

To acknowledge the reduction in security protection in exchange for allowing Xcode and other tools to execute code, tap Turn On

Xcode 및 기타 도구의 코드 실행을 허용하는 대신 보안 보호가 감소했음을 확인했다면 On을 눌러


난 보호도 받고싶고 빌드도 하고싶은데 얘네 뭐지???;;;

정확히 어떤 종류의 보안에서 보호가 감소하는건지 나와있는게 없어서 쩜 무섭네여;

암튼 이제 Developer Mode가 켜져있으므로 빌드하여 앱을 설치할 수 있습니다. 

 

# Disable Developer Mode

똑같이 설정 > 개인정보 보호 및 보안 > Developer Mode(개발자 모드)가서 끄면 되고,

역시나

- 재부팅이 필요합니다. 

- 다시 켤때 까지 Xcode에서 앱을 실행할 수 없습니다 ^^!!

 

# Automation flows

암호가 없는 기기에만 Developer Mode를 커맨드라인으로 활성화 할 수 있음.

(재시동 할 때 기기의 잠금을 해제해야하기 때문에 암호가 없는 기기만 가능하다는 식..)

devmodectl streaming

을 입력하면 연결된 모든 기기의 Developer Mode를 켤 수 있습니다.

- 1개 이상이 연결되어있어도 그냥 다 Developer Mode켜짐 (암호가 없는 기기에만

- 당연히 재부팅 됨 

 

이게 시뮬레이터에서는 안나오기도 하고.. 제가 iOS 16 베타로 아직 올리질 않아서

WWDC와 애플 문서를 기반으로 작성했는데, 틀린점이 있다면 댓글 주세요~! 

 

[참고]

[WWDC22] Get to Know Developer Mode

Enabling Developer Mode on a device

반응형