개발자를위한 Android Q : 알아야 할 모든 것

작가: Louise Ward
창조 날짜: 9 2 월 2021
업데이트 날짜: 1 칠월 2024
Anonim
개발자가 실력을 향상시킬 방법은 ○○뿐이에요_우아한형제들 김민태의 이야기
동영상: 개발자가 실력을 향상시킬 방법은 ○○뿐이에요_우아한형제들 김민태의 이야기

콘텐츠


사용자 관점에서 볼 때 새로운 버전의 Android는 일반적으로 흥미로운 시간입니다. 특정 UI 요소를 싫어하지 않는 한 일반적으로 더 나은 성능, 안정성 및 다양한 새로운 기능을 의미합니다.

또한 읽어보십시오 : 알아야 할 최고의 Android Q 기능

개발자에게 Android Q와 같은 업데이트는 더 많은 감정을 불러 일으키는 경향이 있습니다. 이 새로운 기능은 여전히 ​​희소식이며, 앱에서 더욱 흥미롭고 강력한 기능을 제공 할 수 있습니다. 동시에, 프로젝트가 새로운 플랫폼을 지원하고 사양을 충족 할뿐만 아니라 최상의 경험을 제공 할 수 있도록 최적화하기 위해 서두르면서 변화는 많은 작업을 나타냅니다.

이를 위해이 게시물은 개발자가 염두에 두어야 할 중요한 변경 사항과 개발 내용을 모두 공유함으로써 속도를 높이는 데 도움이됩니다.

여기에는 현재 베타 6까지의 모든 새로운 개발이 포함됩니다. 최종 릴리스 전에이 게시물을 마지막으로 업데이트 할 것입니다.

개발자를위한 Android Q 한 눈에 – 실제로 알아야 할 사항

실제로 알아야 할 사항은 다음과 같습니다.

  • 새로운 위치 권한이 필요합니다.
  • 다중 이력서 지원에는 매니페스트 변경이 필요합니다.
  • 범위가 지정된 저장소는 외부 저장소에 파일을 저장하고 액세스하는 방법을 변경합니다.
  • 위치를 검색하려면 이제 FINE 위치가 필요합니다.
  • IMEI와 같은 정보는 이제 제한되어 있습니다.
  • 백그라운드 앱은 더 이상 포 그라운드 활동을 시작할 수 없습니다.
  • Android Q와는 관련이 없지만 앱 아이콘에 대한 새로운 사양이 도입되고 있습니다.
  • 마찬가지로 올해 말 개발자는 최소한 Android Pie를 지원해야합니다. 앱이 준수하지 않으면 경고가 표시됩니다.
  • 그리고 모든 앱은 연말까지 64 비트 버전을 제공해야합니다.
  • 새로운 시스템 제스처 탐색은 앱 UI에 영향을 줄 수 있습니다.

흥미로운 새로운 기능은 다음과 같습니다.


  • 다중 이력서는보다 강력한 멀티 태스킹을 허용합니다.
  • Android 3.5 Canary 릴리스 채널을 통해 에뮬레이터의 변경 사항을 테스트 할 수 있습니다.
  • 개발자는 이제 깊이 센서에서 더 많은 데이터에 액세스 할 수 있습니다.
  • 개발자는 어두운 테마를 지원하도록 선택할 수 있습니다.
  • 고성능 및 대기 시간이 짧은 WiFi 모드를 사용할 수 있습니다.
  • TextClassifier를 사용하면 개발자가 텍스트의 언어를 식별 할 수 있습니다.
  • MicrophoneDrection API를 사용하면 녹음시 마이크 방향을 선택할 수 있습니다.
  • 버블은 더 쉬운 멀티 태스킹과 풍부한 알림을 허용합니다.
  • 미디어 코덱에 대한 지원이 향상되었습니다.
  • 바로 가기를 공유하면 앱에서 미디어를 더 쉽게 공유 할 수 있습니다.
  • 빠른 설정을 통해 현재 앱과 관련된 설정에 쉽게 액세스 할 수 있습니다.
  • 불칸의 지원은 더욱 강력 해지고 있습니다.
  • 더 많은 신경망 운영.
  • Android 런타임을 개선하면 이론적으로 앱이 더 빨리 점심을 먹을 수 있습니다.

이 모든 것들과 사소한 변경에 대한 자세한 내용은 계속 읽으십시오. 또한 지금 Android Q에서 앱 테스트를 시작하는 방법을 살펴 보겠습니다.

위치 권한은 향상된 보안 옵션을 참조하십시오

새로운 Android 버전마다 사용자에게보다 안전하고 개인적인 경험을 제공하도록 설계된 새로운 기능이 제공됩니다. 이번에는 위치 정보를 더 많이 제어하고 있습니다. 이전에는 사용자가 위치 데이터 도매에 대한 액세스 권한을 부여하거나 거부 할 수있었습니다. 이번에는 앱이 사용 중일 때 (포 그라운드에서 실행될 때) 해당 데이터 만 제공하는 세 번째 옵션을 선택할 수 있습니다.


이는 배경 위치 권한에 사용 된 문구가 약간 과소 할 수 있지만 사용자가 앱을보고 싶지 않기 때문에 앱 설치를 완전히 거부하지 않기를 희망합니다.

“앱이이 기기의 위치에 액세스하도록 허용 항상?

아야!

그러나 그것에 대해 생각하면 몇 가지 변경이 필요하다는 의미입니다. 특히 Q를 대상으로하는 개발자는 앱 매니페스트에 android.permission.ACCESS_BACKGROUND_LOCATION 행을 추가해야합니다.

이전 앱이있는 경우 Android는 기본적으로 ACCESS_FINE_LOCATION 또는 ACCESS_COARSE_LOCATION 외에이 권한을 추가합니다.

설정 방법에 대한 자세한 내용은 여기에서 Google을 참조하십시오.

범위가 지정된 스토리지는 외부 파일에 액세스하는 방식을 변경합니다

Google은 개인 정보 보호를 위해 READ_EXTERNAL_STORAGE 및 WRITE_EXTERNAL_STORAGE를 대체하는 새로운 런타임 권한으로 사진, 비디오 및 오디오 폴더의 공유 파일에 대한 액세스를 제어 할 수 있습니다. Downloads 폴더에 대한 액세스는 시스템 파일 선택기를 통해서만 사용할 수 있으며, 사용 가능한 파일을 사용자가 완전히 제어 할 수 있습니다.

이를 설정하려면 READ_MEDIA_IMAGES와 같은 새로운 권한을 요청한 다음 MediaStore API를 통해 컬렉션에 액세스해야합니다. 전체 지침은 여기에서 찾을 수 있습니다.

균형을 맞추기 위해 앱에는 이제 외부 저장소에있는 해당 앱으로 제한된 폴더를 제공하는 자체 "절연 스토리지 샌드 박스"가 있습니다. 이것은 현재 제공되는 내부 스토리지보다 약간 더 유연하면서 권한의 필요성을 줄이기위한 것입니다. 앱을 제거한 후에도 파일을 유지하려면 해당 파일을 MediaStore 컬렉션으로 이동하거나 Storage Access Framework를 사용하여 해당 파일을 백업해야합니다. 그러나 몇 가지 독특한 유스 케이스에서 불가피하게 장애물을 만들 것입니다.

외부 저장소에있는 다른 앱의 격리 된 저장소 샌드 박스에서 파일에 액세스하려면 몇 가지주의 사항이 있습니다. 이것은 일반적인 미디어 파일 형식 (예 : 사진 및 음악)에 대해 기본적으로 활성화되어 있습니다. 그러나 별도의 앱으로 만든 다른 파일에 액세스하려면 ACTION_OPEN_DOCUMENT 및 ACTION_OPEN_DOCUMENT_TREE 인 텐트를 사용하여 특정 파일 (사용자가 부여하거나 취소)에 대한 액세스를 요청해야합니다.

더 많은 보안 변경

고려해야 할 몇 가지 다른 보안 변경 사항 :

  • 백그라운드 앱은 더 이상 포 그라운드에서 활동을 시작할 수 없으므로 사용자에게는 문제가 될 수 있습니다. 대신 전화 수신과 같은 경우 전체 화면 의도로 우선 순위가 높은 알림을 사용해야합니다.
  • 장치는 기본적으로 다른 Wi-Fi 네트워크에서 임의의 MAC 주소를 갖습니다 (Pie에서는 선택 사항 임).
  • 장치 IMEI 및 일련 번호와 같은 정보에 대한 액세스가 제한됩니다. 자세한 내용은 여기를 참조하십시오.
  • 네트워크 검색을위한 API에는 이제 FINE 위치 권한이 필요합니다.
  • WPA3 및 Enhanced Open Wi-Fi 표준에 대한 지원이 추가되었습니다.
  • 앱이 더 이상 Wi-Fi를 전환 할 수 없으며 대신 새로운 설정 패널에 의존하게됩니다.

향후 교정 – 접이식 장치, 다중 이력서 및 신경망

Android Q는 또한 미래의 하드웨어를 준비하기 위해 여러 단계를 밟고 있습니다. 당신은 그것이 무엇을 의미하는지 압니다 : 접이식! 또는 Google에서 '혁신적인 새 화면'이라고 부르는 경우도 있습니다.

큰 발전은 onResume 및 onPause의 개선입니다. 이것들은 이제 "다중 이력서"를 지원하고 초점이 맞을 때 앱에 알립니다. 다중 재개 기능을 사용하면 두 개의 앱을 일시 중지하지 않고 동시에 실행할 수 있습니다 (현재와 동일). 이는 다중 창 모드 (폴더 블 디스플레이의 앱뿐만 아니라)의 모든 앱에 영향을 미쳐 궁극적으로 휴대 전화를 데스크탑과 같은 진정한 성능에 가깝게 만듭니다. 지금 어떻게 보이는지 보려면 Samsung의 Good Star의 MultiStar 앱을 통해 비슷한 것을 시도해보십시오.

그러나 다중 이력서뿐만 아니라 Android Q는 onResume 및 onPause의 변경 사항을 볼 수 있습니다. 아마도 우리가 한동안 본 가장 근본적인 변경 사항 중 하나 일 것입니다.

크기 조정 가능한 활동 매니페스트 속성도 변경되어 디스플레이가 열릴 때 정기적으로 두 배의 크기를 처리 할 수 ​​있습니다.

이것은 일시 중지되었지만 표시되는 앱을 처리하는 방법에 대해 걱정할 필요가없는 개발자에게 매우 좋은 소식입니다. 즉, 이미 고도로 단편화 된 플랫폼에 더 많은 유스 케이스 및 디스플레이 유형을 소개합니다. 재밌어요

이 모든 것을 다시 구현하려면 매니페스트를 일부 변경하고 특히 android.allow_multiple_resumed_activities 태그를 포함해야합니다. 베타 2 및 3부터 개발자는 AVD를 통해 접이식 에뮬레이터를 사용하여이를 직접 테스트 할 수 있습니다.

Neural Networks API 1.2도 60 개의 새로운 작업과 향상된 기능을 제공합니다. Ops에는 ARGMAX, ARGMIN 및 Quantized LSTM 등이 포함되어있어 본질적으로 더 나은 물체 감지 및 이미지 분할이 가능해야합니다.

거품이있는 멀티 태스킹

진정한 멀티 태스킹으로는 충분하지 않은 것처럼 Android Q는 거품을 한 번에 두 가지 이상 수행하는 또 다른 방법을 도입 할 것입니다. 이 거품은 효과적으로 알림의 형태로 작동하지만 더 많은 정보를 제공하고 사용자가 현재하고있는 작업 위에 전체 활동을 표시합니다. 이를 통해 메모, 번역 및 채팅과 같은 항목에 빠르게 액세스 할 수 있습니다. 기본적으로 대화를 나눕니다.

거품은 효과적으로 알림 형태로 작동

개발자는 현재 알림 시스템 위에 구축 된 API를 통해 새로운 기능에 액세스 할 수 있습니다. 거품을 보내려면 setBubbleMetadata를 사용한 다음 거품과 함께 아이콘과 함께 표시 할 활동을 제공합니다.

바로 가기 및 설정 패널 공유

Google은 사용자가 앱의 콘텐츠를 더 쉽게 공유 할 수 있기를 원하므로 사용자가 다른 앱으로 바로 이동할 수 있도록 "공유 단축키"를 도입 할 예정입니다. 개발자는 "공유 대상"을 게시하여 컨텐츠가 첨부 된 특정 활동을 시작할 수 있으며, UI를 통해 사용자에게 표시됩니다. 베타 2부터는 공유중인 데이터의 미리보기를 제공 할 수 있습니다.

앱 바로 가기와 비슷하게 작동하므로 ShortcutInfo API를 통해 액세스 할 수 있습니다. Q를 실행하지 않는 기기에서 작동하는 새로운 ShareTarget AndroidX 라이브러리도 있습니다. Google은이 모든 것이 어떻게 작동하는지 확인하려는 사람들을 위해 샘플 앱을 공유했습니다.

Android Q를 사용하면 현재 실행중인 앱의 맥락에서 시스템 설정을 쉽게 변경할 수 있기 때문에 일반적인 게임 이름이 더 빨라지는 것 같습니다. 개발자는 설정 패널 API를 통해 사용할 수 있습니다.

설정 패널을 표시하려면 설정 패널 작업에 ACTION_VOLUME과 같은 의도를 사용해야합니다.

연결성 개선

Wi-Fi 스택은 개인 정보 보호 및 성능을 향상시키고 IoT 장치 관리 또는 위치 승인없이 인터넷 연결을 쉽게 제안하는 등의 작업을 수행하기 위해 Android Q에서 리팩토링되었습니다.

더 흥미로운 것은 개발자가 고성능 및 낮은 대기 시간 모드에 액세스 할 수 있다는 것입니다. 후자는 게임 및 게임 스트리밍에 특히 유용합니다.

WiFiManager.WiFiLock.creatWifiLock ()을 호출하고 WIFI_MODE_FULL_LOW_LATENCY 또는 WIFI_MODE_FULL_HIGH_PERF를 사용하여 액세스 할 수 있습니다.

새로운 미디어 옵션 – 코덱 지원 및 깊이 데이터

이제 개발자는 이러한 깊이 감지 카메라를 활용할 수 있습니다. 동적 깊이 이미지를 요청할 수 있으며 깊이 요소를 설명하는 JPG, XMP 메타 데이터 및 깊이 신뢰도 맵이 포함됩니다.

이는 카메라 응용 프로그램 및 이미징 편집 응용 프로그램에 유용 할 수 있지만 AR 응용 프로그램의 가능성은 더욱 흥미로울 것입니다. Google은 OEM과 협력하여 모든 Q 지원 기기에서 사용할 수 있도록 노력하고 있습니다.

또한 Android Q는 오픈 소스 비디오 코덱 AV1을 지원하므로 낮은 대역폭 요구 사항으로 고품질 스트리밍이 가능합니다. Opus를 통한 오디오 인코딩도 제공됩니다. MediaCodecInfo API를 통해 이제 주어진 장치에서 사용 가능한 렌더링 옵션을보다 쉽게 ​​식별 할 수 있습니다.

기본 MIDI API는 NDK를 통해 MIDI 장치와 통신 할 수도 있습니다. 새로운 MicrophoneDirection API를 통해 개발자는 오디오 녹음 중 마이크 방향을 설정할 수 있습니다. 또한 줌이 가능한 마이크에 대한 제어를 표준화합니다.

또 다른 새로운 기능은 다른 앱의 오디오를 녹음하는 기능입니다. 게임 스트리밍, 캡션 및 번역과 같은 작업에 유용합니다.

업그레이드 된 성능 – Vulkan 및 Android 런타임

게임 개발자는 전반적으로 향상된 Vulkan 지원의 혜택을 누릴 수 있습니다. Google의 목표는 Android Q를 실행하는 모든 64 비트 장치에서 API가 지원되도록하는 것입니다.이 회사는 Vulkan을 기반으로하는 장치 용 표준 및 업데이트 가능한 OpenGL 드라이버도 개발하고 있습니다. 또한 Android Q는 OpenGL ES를 사용하는 게임이 Vulkan의 성능과 안정성을 활용할 수 있도록하는 추상화 계층 인 ANGLE에 대한 실험적 지원을 추가 할 예정입니다. OpenGL ES 2.0도 Q에서 지원 될 예정이며, 3.0이 곧 지원 될 예정입니다.

마찬가지로 앱 전체에서 향상된 일반 성능을 기대할 수 있습니다. 이것은 부분적으로 안드로이드 런타임의 개선을 통해 달성 될 것이며, 이는 게리가 구식 장치를 사용하는 속도 테스트 G에서 찾지 못했지만 앱이 더 빨리 시작하고 더 적은 메모리를 소비하게합니다.

안정성 향상을 위해 Google은 개인 API에 대한 액세스를 제한 할 것입니다. 회색으로 표시되는 목록을 여기에서 찾을 수 있습니다. Google은 모든 경우에 공개 대안을 제공 할 것을 약속합니다.

UI 변경 – 제스처 탐색 및 다크 모드

베타 3부터 개발자는 이제 테마를 "Theme.AppCompat.DayNight"또는 재료 구성 요소에서 확장하여 "어두운 테마"를 지원하도록 선택할 수 있습니다. 그런 다음 자신 만의 기본 야간 테마 설정을 지정할 수 있습니다. 사용자가 원하는대로 테마를 전환 할 수있는 옵션을 제공하고 레이아웃과 가시성에 대해 생각하십시오.

또한 Android Q는 거의 모든 Android 스킨과 같은 제스처 탐색을 지원하므로 사용자에게 새로운 UI 고려 사항이 도입됩니다. 예를 들어, 앱의 고유 한 UI에 구운 제스처가 사용자에게 혼동을 줄 수 있는지 고려해보십시오. 이러한 경우 개발자는 "제스처 제외 사각형"을 사용하여 시스템 제스처를 재정의하거나 사용자가 앱과 상호 작용하는 방식을 간단히 변경할지 여부를 선택할 수 있습니다. 마찬가지로 버튼을 잃어버린 여분의 화면을 더 많이 활용하는 것도 고려하십시오.

TextClassifier 클래스를 사용하면 개발자가 텍스트의 언어를 감지 할 수 있습니다. 마지막으로 Smart Actions는 알림 내의 빠른 응답 필드를 논리적 옵션으로 채 웁니다. 이렇게하면 더 이상 해당 기능을 처음부터 코딩 할 필요가없는 개발자에게 약간의 오버 헤드가 줄어 듭니다.

피드백에 대한 응답으로 베타 5의 최신 변경 사항은 내비게이션 드로우를 사용하는 앱에 대한 "탐색"옵션과 보조자에 액세스하기위한 빠른 바로 가기를 추가했습니다. 베타 6은 200dp 수직 앱 제외 제한과 함께 뒤로 제스처에 대한 감도 설정을 제공합니다.

이동하는 방법

모든 것이 상상력을 불러 일으켰거나 조금 불안하게 만들었다면 Android Q에 스핀을 줄 수있는 몇 가지 방법이 있습니다.

Android Q 베타를 Pixel 기기에로드 할 수 있습니다. Pixel을 설치하지 않았거나 일일 드라이버에 베타 운영 체제를 설치하지 않으려는 경우 AVD 관리자를 사용하여보다 쉽게 ​​설정할 수 있습니다.SDK 관리자를 열면 Android Q Beta 용 시스템 이미지를 다운로드하여 다운로드 할 수 있습니다.

Android Q 베타 4 이상에서 개발자는 이제 모든 API를 사용하여 앱 테스트를 시작할 수 있으며 Google은 이미 Play 스토어에서 API 29를 타겟팅하는 API를 허용하고 있습니다.

이러한 변화에 대해 어떻게 생각하십니까? 프로젝트에 가져올 새로운 기능을 생각할 수 있습니까? 아니면 지금 보안 업데이트를 해결하기 위해 많은 노력을 기울이고 있습니까?

Android 용 Chrome에서 다크 모드를 사용할 수 있다는 소식을 듣고 이미 전망에 대해 흥분했습니다. 그러나, 개발은 9to5Google 오늘은 우리가 처음 생각했던 것보다 훨씬 나을 수 있다고 제안합니다.Chromium Gerrit를 찌르고 9to5Google 원래 생각했던 것처럼 더 어두운 Chrome UI 일뿐만 아니라 웹 페이지에도 영향을 줄...

플랫폼에 관계없이 Android 용 Chrome (일반적으로 Chrome 브라우저)은 종종 메모리 호그로 비판됩니다. 특히 다른 브라우저와 비교할 때 Chrome은 지나치게 많은 처리 리소스를 소비합니다.안타깝게도 최신 Android 용 Chrome 업데이트는 소비하는 리소스의 양만 증가시킵니다. 그러나 사이트 격리 향상이라는 좋은 이유가 있습니다....

매혹적인 출판물