Software Engineering Design Patterns in Java & Android: Welcome ‘2017

모두 다 잘됐다 내 이름은 Oum Saokosal입니다

오늘 저는 Design Patterns라는 새로운 코스 시리즈를 발표하게되어 너무 흥분됩니다 혼동하지 말고 소프트웨어 엔지니어링의 일부인 소프트웨어 디자인 패턴입니다 UI 디자인 패턴을 통해 사용자 인터페이스 및 사용자 경험을 디자인하는 방법에 중점을 둡니다 사용하기 쉽고 친절합니다 여기 소프트웨어 공학과 함께, 디자인 패턴은 소프트웨어를 만드는 것에 관한 것입니다

재사용하기 쉽고, 유연하고, 느슨하게 결합 할 수 있습니다 그러면 디자인 패턴은 무엇입니까? 글쎄, 당신은 객체 지향 프로그래밍을 알고 있죠? C ++, C #, Java, Python, PHP 6, Ruby, Swift와 같은 목록이 계속 있습니다 사람들은 다시 만들 수있는 하나의 클래스를 가질 수 있기 때문에 OOP가 멋지다고 말합니다 당신이 좋아하는만큼 많은 물건 부모 클래스에서 멋진 메소드를받을 수있는 상속 기능이 있습니다

글쎄, 많은 수업이 많은 일을 할 수 있고, 많은 수업을 수업 그리고 당신도 알다시피, 그것은 엉망입니다 그것은 자유지만 어쩌면 너무 많은 자유입니다 어떻게 제어 할 수 있을까요? 규칙과 결합하는 법? 클래스에서 많은 클래스를 호출하는 방법? 사물을 숨기는 방법? 수업을 다른 수업에 연결하는 방법? 콜백하는 방법? 많은 질문은 Design Patterns에서 대답 할 수 있습니다 이 질문들에 대한 대답은 하나도 아닙니다

그것이 디자인 패턴에 s가있는 이유입니다 실제로 Gang of Four에는 23 개의 디자인 패턴이 있습니다 디자인 패턴은 4 명의 소프트웨어 엔지니어 나 컴퓨터 괴짜가 만들어 냈습니다 Erich Gamma (Gang of Four)로도 알려져 있습니다 이제는 모두가 4 가지 디자인 패턴의 갱 (Gang of Four Design Patterns)이 될 것입니다

코드의 독창성은 C ++과 스몰 토크 (Smalltalk)로 작성되었습니다 그들이 쓴 책은 요즘까지도 관련성이 있고 인기가 있습니다 나는 그것이 결코 날짜가 없다고 믿습니다 왜? 프로그래머가 OOP 패러다임을 여전히 사용하는 한, 디자인 패턴은 결코 사라지지 않기 때문입니다 이 시리즈에서 공부할 패턴은 무엇입니까? 글쎄, 계속하기 전에 내 채널을 구독하고 그 채널 옆의 벨을 클릭하십시오

구독 버튼을 클릭하면 좋은 자습서를 놓치지 않습니다 이 코스 시리즈가 훌륭하다고 생각한다면 링크 버튼을 누르십시오 확인했는데 아직 구독 했습니까? 글쎄, 나는 기다릴 수있다 승인 처음에는 대부분의 프로그래머가 반드시 알아야하는 10 가지 가장 인기있는 디자인 패턴부터 시작하겠습니다 알고있다 그것들은 다음과 같습니다 : 1 싱글 톤 2

공장 공장 방식과 초록 공장 3 빌더 4 관찰자 5 어댑터 6 전략 7

명령 8 반복자 9 복합 재료 10 프록시 그런 다음 나머지 디자인 패턴을 계속 진행할 것입니다 이 자습서에서는 자바 프로그래밍에 대해 더 많이 알고 있기 때문에 Java 프로그래밍 언어로갑니다

다른 언어보다 더 좋으며 내 채널 이래로 안드로이드 개발자들에게도 좋을 것입니다 Android에 관한 것입니다 그러나 이러한 기술은 사용자가 선호하는 프로그래밍 언어에 적용 할 수 있습니다 어떻게 생각하니? 내가 원하는 디자인 패턴은 무엇입니까? 아래의 설명 섹션에서 알려주십시오 다시 한 번 내 채널을 구독하고 알림을 클릭하는 것을 잊지 마십시오

벨 내가이 게시 언제든지이 튜토리얼을받을 수 있습니다 고마워요, 제 이름은 Oum Saokosal입니다 그리고 다음 비디오에서 만나겠습니다

How to use bottom navigation in android application

내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolution

com 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 방문 : www

saddasolutioncom 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolution

com 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolution

com 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolutioncom 방문 내 웹 사이트 : saddasolution

com 방문

LG V20 starts getting Android 8 0 Oreo, but will take some time to arrive in US ● Tech News ● #TECH

한 달 전에, 유나이티드에서 가능한 LG V20 Android 80 Oreo 출시에 관한 소문 8 월에 설정된 국가가 온라인으로 등장했습니다

이제 우리는 업데이트에 대한 더 많은 정보를 얻었습니다 많은 LG V20 소유자를 만들 것입니다 매우 기쁘다 LG가 현재 한국에서 오레오 (Oreo) 업데이트를 발표하고있는 것으로 보인다 회사가 세계적인 출시를 준비하고 있다고 이전 보고서에 따르면 미국의 LG V20 사용자는 Android 8

0을 수신 할 것으로 예상됩니다 오레오 (Oreo)는 8 월의 어떤 시점에서 새로운 정보가 그 가정을 바꾸지 않는다 LG V20이 마침내 Android 80 Oreo를 한국에서 출시하기 시작한 이후로 비현실적인 것은 아닙니다 다음달에 미국에 도착할 것으로 가정합니다

업데이트에서 무엇을 얻을지 알고 싶은 사용자에게는 꽤 큰 changelog도 : 컴포트 뷰의 청색 필터가 개선되었습니다 이제 10 단계로 조정할 수 있습니다 앱을 사용하는 동안 홈 터치 버튼을 숨길 수 있습니다 새로운 앱 아이콘 모양이 추가되었습니다 향상된 설정 레이아웃

이제 각 앱의 알림을 한 곳에서 관리 할 수 ​​있습니다 이제 앱 아이콘에 대한 알림 배지가 내가 가지고있는 알림에 따라 표시됩니다 알림 패널 백그라운드 앱을 제한하여 배터리 수명 개선 및 폰 성능 향상 Sony의 코덱 LDAC는 이제 Bluetooth 헤드셋을 사용할 때 지원됩니다 코덱

홈 화면의 앱은 이제 더 많은 일을 할 수 있습니다 앱 위젯 및 정보를 보려면 앱 아이콘을 길게 터치 할 수 있습니다 이 업데이트의 무게는 약 17GB이며 보안 패치도 포함될 것으로 예상됩니다 당연히 LG가 한국에서 안드로이드 8

0 오레오 (Oreo) 공개를 마치면, 다른 나라들 미국뿐 아니라 업데이트도받을 수 있습니다

Update production devices in the field with the Android Things Console (Google I/O ’18)

[음악 재생] ADAM RODRIGUEZ : 안녕하세요 Android Things에 대한이 이야기에 오신 것을 환영합니다

우리와 함께 계셔서 다행입니다 나는 아담이야 저는 Google의 제품 관리자입니다 AMY JANG : 저는 Amy입니다 Android Things Console 용 엔지니어링을 이끌고 있습니다

ADAM RODRIGUEZ : 오늘 우리는 Android Things 콘솔을 사용하는 방법에 대해 이야기하고 싶습니다 필드에서 생산 장치를 업데이트하십시오 IO에서 몇 가지 다른 회담을 통해 잘 배웠으므로, 안드로이드 것들은 훌륭한 플랫폼입니다 자기 자신을 만들기 위해서 그러나 실제로 둘 이상을 만드는 것에 관해서는 무언가, 어떻게 유지합니까? 그 장치는 평생 동안? 기기를 사용하면 어떻게 지원하나요? 고객의 손에? 그게 오늘 우리가 너와 얘기 할 때 온거야 승인

그럼 정말 빠른 리뷰를 해봅시다 Android Things는 무엇이고 왜 당신이 그것을 원할 수도 있습니다 우선, 그것은 안드로이드의 힘을 가지고 있습니다 당신이 알고 사랑하는 것과 동일한 도구로 개발 된, Android 개발자 인 경우 결국 안드로이드이기 때문에 쉽습니다 둘째, 프로토 타입에서 생산으로 확장됩니다

하드웨어 엔지니어 또는 펌웨어 엔지니어 일 필요는 없습니다 이것을하기 위해 우리는 완벽하게 인증 된 SoM을 제공합니다 Android는 AOSP가 아니기 때문에 우리가 사용하는 것을 사용합니다 당신이 필요로하는이 이야기에 대해 이야기하기

Android Things SoM을 사용합니다 이점은이 SoM 플랫폼 용으로 제작되었습니다 따라서 Android 코드를 작성하면됩니다 저수준 펌웨어에 대해 걱정할 필요가 없습니다 해당 하드웨어를 구동합니다

마지막으로 자동 업데이트로 보안 기능이 내장됩니다 인증 된 SoM으로 개발하고 있으므로, Google에서 기기의 보안을 관리 할 수 ​​있습니다 Google은 업데이트 및 보안 픽스를 제공합니다 평생 동안 구현할 수있는 귀하의 제품의 Android Things의 목표는 사용자가 쉽게 작업 할 수 있도록하는 것입니다

쉽고 안전하며 관리가 쉽습니다 그러나 이것은 질문을 제기합니다 IoT는 왜 그렇게 열심히일까요? 이 문제에 대해 정말로 걱정할 필요가 있습니까? 그래서 그것에 대해 조금 생각해보십시오 몇 천 명이나되는 사람을 배로 데려다 줄거야 IoT 장치를 보호하십시오

건물의 어려운 일을해야 할 것입니다 장치, 하드웨어 설계, 소프트웨어 작성 어렵지만 특별한 소스이기도합니다 그것은 당신의 장치를 독특하게 만듭니다 하지만 그 외에는 다른 것들이 많이 있습니다 당신도해야합니다

다른 엔지니어들과 어떻게 개발을 공유합니까? 장치를 안전하게하려면, 최신 보안 패치를 항상 최신 상태로 유지해야합니다 해당 패치를 발견하면 장치가 해당 패치를 가져올 수있는 방법을 구축해야합니다 그런 다음 어떻게 안전하게 업데이트합니까? 업데이트가 나 빠지면 어떻게 할 수 있습니까? 고객의 기기를 손상시키지 않았는지 확인하십시오 델타 업데이트, 부분 롤아웃, A / B 설계를 상상해보십시오 파티션, 채널 관리

성공적인 IoT를 위해 필요한 모든 것 그러나 모든 인프라를 유지 관리하고 업데이트해야합니다 방대한 직업이다 우리가 앞서 말했던 것처럼, 우리의 목표 Android Things를 사용하면 더 쉽게 사용할 수 있습니다 하드웨어와 소프트웨어 디자인은 여전히 ​​당신에게 달렸습니다

그것이 있어야하는 것처럼 그것은 당신의 제품을 특별하게 만드는 것입니다 그러나 우리는 당신이 Android Studio와 같은 모든 친숙한 도구를 사용할 수 있습니다 그리고 그것을하는 [INAUDIBLE] 그러나 펌웨어 코드를 신경 쓰지 않아도됩니다

Android Things의 SoM 모델을 관리합니다 그런 다음 보안 업데이트와 관련하여, Android 팀 전체를 활용할 수 있습니다 보안 구멍을 찾아 수정하십시오 자동 업데이트와 함께 문자 그대로 0이 붙은 보안 패치 당신과 당신의 관계 마지막 장치를 보내십시오 또한 업데이트를 위해 동일한 기술을 활용하고 있습니다

매일 수백만 개의 장치를 업데이트하는 데 사용되었습니다 강화되고 검증되었으며 최적화되었습니다 따라서 실제로 차별화되는 부분에 집중할 수 있습니다 귀하의 제품 – 작성한 기능 및 응용 프로그램 AMY JANG : 예를 들어 보겠습니다 Android Things가 어떻게 도움이되는지 확인해보십시오

아담과 내가 세탁물 접기를하고 있다고 상상해보십시오 로봇, 솔직히 말하자면, 아무도 양말 접기를 좋아하지 않기 때문에, 권리? 그래서이 로봇은 많은 물체 인식, 비전을 사용합니다 기계 학습, 완벽한 사용법 Android 관련 항목입니다 프로토 타입에서 어떻게 가져 옵니까? 내가 집에서 지어서 모든 사람이 사용할 수있게 만들었습니까? 이것은 우리 콘솔의 마술이 들어오는 곳입니다 Android Things는 의도적으로 설계되었습니다

하드웨어를 쉽게 개발할 수 있도록 그것을 시장에 선적하십시오 그리고 Android Things 콘솔을 사용할 수 있습니다 당신의 모든 필요를 돌보아야합니다 첫 번째 구성 – 장치 관리를 정의합니다 우리가 제품이라고 부르는 그룹과 Android Studio와 같은 편집기를 사용하여 작성한 앱, [INAUDIBLE] 콘솔을 사용하여 앱을 관리 할 수 ​​있습니다

빌드 기능을 사용하면 앱으로 안전한 Android Things 이미지를 만들 수 있습니다 당신이 방금 썼던, 그리고 릴리스 단계에서, 원활한 업데이트를 장치로 푸시 할 수 있습니다 분석을 사용하여 출시가 완료되었는지 확인하십시오 부드럽게 그럼 어떻게 작동하는지 자세히 살펴 보겠습니다

ADAM RODRIGUEZ : 좋습니다 프로토 타입에서 생산에 이르는 첫 번째 단계 제품 콘솔에 세부 정보를 설정하는 것입니다 당신이 지을 계획입니다 세탁 로봇을 구성 해 봅시다 먼저 제품 이름을 설정하고 모델을 만듭니다

몇 가지 SKU가 있다고 상상해보십시오 어쩌면 영국 SKU와 US SKU가 있습니다 모델로 제품을 분해 할 수 있습니다 다른 버전으로 다음으로 SoM 유형을 선택하려고합니다

필요한 기능과 가격을 기반으로 SoM을 선택하십시오 당신이 치고 싶은 지점 SoM을 선택하는 것은 중요합니다 나중에 만들려는 이미지에 대해 많은 것을 제어합니다 하나의 메모

하나의 SoM으로 빌드를 시작한 다음이를 변경하려는 경우, 많은 코드를 다시 작성하지 않고도 쉽습니다 그것은 내가 개인적으로 실제로하는 것들 중 하나입니다 우리가 관리하는 SoM 모델에 대한 사랑 정말 비싼 물건으로 시작할 수 있습니다 일단 생산 단계에서 비용을 절감하려면 다운 그레이드하십시오

아니면 정말 싼 것을 함께 해킹 할 수 있습니다 공연이 당신의 필요를 충족시키지 못한다면, 보다 강력한 SoM으로 업그레이드 할 수 있습니다 마지막으로 제품 공유도 설정하십시오 Amy와 나는이 laundroid를 함께 만들고 있기 때문에, 우리는 콘솔을 통해이 제품에 대한 액세스를 공유합니다 그래서 우리 중 누구도 앱을 업로드하고 빌드를 만들 수 없습니다

제품 구성이 완료되면, 다음 단계는 앱을 작성하는 것입니다 앱은 Android의 핵심이며 Android Android 예외는 아닙니다 그들은 내부의 모든 기능을 정의합니다 Android Things의 Amy가 양말 접기 기능을 작성했을 때, 그녀는 [INAUDIBLE] APK에서 그렇게했습니다 친숙한 모든 도구를 Android로 사용할 수 있습니다

개발자– Android Studio, Kotlin, Google Play 서비스, Firebase 이 모든 것은 단지 다시 작동하기 때문에 결국 안드로이드 일뿐입니다 앱이 작성되면 앱 라이브러리에 업로드합니다 빌드에 추가 할 수 있습니다 여기에서 볼 수 있듯이 4 가지 앱이 있습니다 우리의 세탁 로봇의 기능이 깨졌습니다

또한 앱 라이브러리는 버전 관리, 그래서 새로운 버전의 앱을 가지고있을 때, 도서관은 당신에게 가장 최근의 것을 보여주기 위해주의를 기울입니다 내가 정말 좋아하는 한 곡은 앱 공유입니다 공동 작업자와 제품을 공유 할 수있는 것처럼, 당신도 애플 리케이션을 공유 할 수 있습니다 Android 자체는 앱을 만드는 데 필요한 모든 것입니다 다른 사람들이 사용할 수있는 Android 환경 여기도 예외는 아닙니다

다른 사람들과 귀하의 앱을 공유하십시오 팀 또는 유사한 제품을 만드는 다른 사람들에게 오늘은 아마 너만 갈거야 더 많은 사람들이 빌드하면서 자신이 쓴 앱을 사용하려면 Android 관련 항목에서 앱을 사용하고 있음을 알 수 있습니다 다른 사람들이 유틸리티와 공통 기능에 대해 썼다 AMY JANG : 이제 이미지를 빌드 할 차례입니다

너희들이 쓴 안드로이드 것들 애플 리케이션으로 우리의 경우에는 새로운 양말을 썼습니다 APK 우리 로봇에게 몇 가지 멋진 양말 접기 기능을 제공합니다 Adam이 방금 앱 라이브러리에 업로드했습니다 콘솔에서도 나와 공유했습니다

이제 우리는이 기능을 추가했습니다 그것을 패키지에 담을 때입니다 귀하의 장치에 빌드 및 플래시 그래서 Build는 모든 재료가 모이는 곳입니다 앱, Google Apps, 하드웨어 구성 장치에 맞게 사용자 지정할 수 있습니다

여기에서 선택한 옵션 세트 우리가 빌드 구성이라고 부르는 것입니다 빌드 구성은 비밀스런 소스와 규칙과 같습니다 장치의 내용을 지정하는 구성 영상 그리고 장치 이미지에 따르면, 나는 이미지 기기로 플래시하고 페이로드를 만드는 이미지 over the air update 따라서이 빌드 단계에서 새롭고 많은 것을 만들 수 있습니다

구성을 작성하고 관리하십시오 대부분의 사람들은 방금 구입했을 것입니다 또는이 I / O에서 개발자 키트를받습니다 시작하려면 시작 키트 사용 설정을 선택하고, 모든 빌드 세부 정보가 미리 채워집니다 이 예제에서는 예제를 살펴 보겠습니다

처음부터 시작하는 것 첫째, 가장 중요한 것들 중 하나 Android Things OS 버전을 선택하는 것입니다 최신 버전을 선택하십시오 그 (것)들은 최신 버그가 있기 때문에 편안함 수정 및 보안 업데이트 최신 버전을 사용해야하는 것은 아닙니다

하지만 이런 이유로 추천합니다 다음 단계에서는이 단계에서 앱 목록을 볼 수 있습니다 앱 라이브러리에 업로드 한 빌드에 포함 할 앱을 선택하십시오 Google에서 제공하는 앱을 포함하는 것을 잊지 마십시오 Google Play 서비스와 같은 그리고 왜 Google Play 서비스를 원하십니까? Google Play 서비스를 사용하면 앱 Nearby와 같은 최신 Google API를 활용할 수 있습니다

지도, Firebase, 새로운 [INAUDIBLE] 키트 포함 Google Play 서비스 패키지에 포함되어 있습니다 대화 상자에 표시된 확인란을 클릭하기 만하면됩니다 귀하의 빌드에 포함될 것입니다 ADAM RODRIGUEZ : 좋습니다 그래서 다시 빌드합니다

앱을 선택하고 나면 해당 앱에서 요청하는 권한 그 (것)들과 당신이 좋다는 것을 확인하십시오 사용자가 권한을 선택할 수 없기 때문에 일반 Android와 마찬가지로 자신에게 달려 있습니다 그들을 위해 그것을 할 수 있습니다 스스로 개발 한 앱만 사용하는 경우, 여기에 어떤 놀라움도 있어서는 안됩니다 하지만 다른 사람들이 공유하는 앱을 사용하는 경우, 봐야 할 가치가있어

이것은 당신이 잘못한 일을 막는 데 도움이됩니다 예상하지 못했고, 좋은 보안 조치였습니다 Android Things가 점점 보편화되면서, 다른 사람들이 건물을 지켜 보는 것이 놀랍지 않을 것입니다 다양한 소스의 공유 응용 프로그램이있는 IoT 제품 따라서 권한을 보는 것이 중요합니다 다음 단계는 추가하는 것입니다

빌드에 리소스를 구축하십시오 장치에 디스플레이가있는 경우 여기에서 보는 것처럼 부팅 애니메이션을 추가 할 수 있습니다 Lenovo 스마트 디스플레이 용 사용자 정의 bootanimationzip을 업로드 할 수 있습니다

이 섹션에서는 또한 글꼴을 포함하려는 경우 이 장치들 중에는 디스플레이가 없기 때문에, 우리는 글꼴로 그들을 부담시키고 싶지 않습니다 이 작은 IoT의 이미지 크기를 줄이는 것이 전부입니다 제작품 이제 Android 기기가별로 흥미롭지 않습니다 그것이 바로 SoM 이었다면

하드웨어 구성은 주변 장치를 추가하는 곳이며, GPIO 및 버스 속도를 제어하십시오 스타터 키트는 사전 설정되어 있습니다 시동기 장비에서 제공하는 하드웨어 구성 짓다 그러나 구성을 멋지게 만들 수 있습니다 다르게

이 UI 도구를 사용하여 조정할 수 있습니다 이 도구는 현재 버스 제어에 국한되어 있지만 속도 및 풀 업 저항이 모든 주변 장치를 구성 할 것이며, 디스플레이, 오디오 버스, 스피커와 같은 우리는 또한 여기서 I / O를 제어 할 계획입니다 그래서 당신은 핀 복싱을 할 수 있고, 어떤 핀들이 어떤 기능에 붙어있다 따라서 더 많은 업데이트를 위해이 공간을 조심하십시오 AMY JANG : 자, 이제 최종 빌드 단계에 있습니다

당신이 만든 구성들 총 예상과 함께 표시됩니다 OEM 파티션 크기 요약에서 예상 크기 검토 원하는대로 OEM 파티션의 전체 크기를 설정하십시오 이 파티션이 무엇인지, 그리고 개발자로서 변화시킬 수 있습니까? 그리고 어느 파티션이 무선으로 업데이트 할 수 있습니까? 최신 정보? 그 대답을하기 위해 Android Things 파티션 레이아웃을 살펴 보겠습니다 잠시 동안

왼쪽에는 IMX7D PICO의 간단한 파티션 레이아웃이 있습니다 이것이 개발자 키트에서 얻은 보드입니다 SOC 벤더 사이에는 작은 차이가 있습니다 보드 하지만 예제를 살펴 보겠습니다 코어 안드로이드 것들에 의해 사용되는 파티션 아키텍처는 모든 SoM에서 동일합니다

시스템, 시스템 및 부팅은 읽기 전용 파티션이므로, Android 용으로 생성되어 사용됩니다 플랫폼 부팅은 커널을위한 것이며 램 디스크는 정상 부팅을위한 것입니다 그리고 시스템은 Android Things OS가로드되는 곳입니다 Vbmeta는 읽기 전용 파티션입니다

그리고 이는 검증 된 부팅 메커니즘에 사용됩니다 이름에서 알 수 있듯이, 이것은 확인 된 부팅에 대한 메타 데이터가 기록됩니다 특히 Google에서 생성 한 단일 해시입니다 부트, 시스템 및 벤더에 대한 정보를 사용하여, Google에 저장된 보안 키로 서명했습니다 장치의 모든 부팅 순서에 대해, 부트 로더가 코드가 진짜임을 확인합니다

알려진 보안 결함이 없었습니다 이 정보를 사용하여 발견되었습니다 임의의 조작이 발견되면 장치가 부팅되지 않습니다 따라서이 파티션으로 주위를 어지럽히고 싶지는 않습니다 공급 업체는 읽기 전용 파티션이기도합니다

이 파티션에서는 SOC 공급 업체의 바이너리 이미지 로드됩니다 SOC 관련 드라이버 라이브러리와 같은 것들 보통 여기에 넣습니다 OEM과 OEM 부트 로더는 Android 용 파티션입니다 개발자, 그게 당신입니다 그것이 생성 된 후에 그것은 의미에서 읽기만합니다, 내가 방금 보안상의 이유로 훼손 될 수는 없어

얘기 했어 그러나 OEM은 콘텐츠가 콘솔을 통해 지정한 빌드 구성 에 기록됩니다 그래서 그 의미에서 재기록이 가능합니다 Android Things 개발자가 콘솔을 통해 관리합니다 이 OEM 파티션도 새로 생성됩니다

구성 4에서 새 빌드를 만들 때 오타에 그리고 OEM 부트 로더는 파티션입니다 어떤 하드웨어 구성을 선택했는지 그 빌드도 작성되었습니다 Android 개발자 인 경우 이 파티션, 사용자 데이터에 익숙 할 수 있습니다 시스템 및 앱이 사용자를 작성하는 곳입니다

런타임시 데이터 그 외에도 ADB 설치를 통해 설치하는 APK, 또는 Android Studio의 재생 버튼 또한이 파티션에 기록됩니다 그래서 이것은 실제로 질문을 제기합니다 패키지 이름은 앱의 고유 식별자입니다 동일한 패키지 이름이 사용자 데이터와 OEM에 모두있는 경우, Android 패키지 관리자는 어떻게했을까요? 어떤 앱을 사용해야하는지 알고 있습니까? OEM은 생성 된 후에 만 ​​읽을 수 있습니다

이미 거기에 쓰여진 APK 있는 그대로 존재해야합니다 당신이 개발할 때, 당신은 ADB 설치를 통해 APK가 변경 될 가능성이 큽니다 이 개발 흐름을 존중하기 위해 ADB 사용자 데이터에 설치된 APK는 항상 OEM 제품보다 영예 롭습니다 이것이 의미하는 바는 APK가있는 경우 사용자 데이터와 OEM 모두에서 APK가 OEM을로드하고 사용자 데이터에서 APK를 삭제합니다 설치시 ADB에 의해

Misc는 플랫폼에서 사용되는 또 다른 읽기 전용 파티션입니다 부트 로더와 같은 기타 요구 사항에 적합합니다 기능에 대한 우리의 시스템 공장과 그 부트 로더 파티션 모든 장치 별 구성을 위해 예약되어 있으며, 같은 일련 번호, 공장에서 작성된 것입니다 이는 서비스 센터에서 나중에 수행 할 수도 있습니다

이 파티션은 개발자와 공장에서 쓰기 가능하며, 배송 된 후에야 읽을 수 있습니다 따라서이 파티션에 쓰기 위해서는 특별한 도구와 권한을 제공합니다 그래서 지금까지 모든 파티션을 살펴 보았습니다 안드로이드 것들 코어 아키텍처가 사용하는 이 테이블의 파티션을 보셨을 것입니다

a와 b의 두 섹션으로 중복됩니다 그게 무슨 뜻이야? 이것은 OTA가 공중 갱신에 오는 곳이다 OTA는 AB 파티션 메커니즘으로 작동하며, 동일한 파티션 종류가 두 개의 중복 메모리에 존재하는 경우 공백 이 아키텍처는 사용자에게 끊김없는 업데이트를 제공합니다 장치는 여전히 활성 파티션에서 활성 상태 일 수 있습니다 업데이트가 다운로드 및 설치되는 위치 비활성 파티션 A에 B

그래서 모든 일이 끝난 후, 보안 부팅 메커니즘으로 재부팅 한 후, 장치가 파티션으로 깨어납니다 업데이트가 설치된 위치 또한 모든 읽기 전용 Android 항목 파티션은 특정 크기로 고정됩니다 그리고 아시다시피, 보드 메모리도 고정되어 있습니다 이것이 의미하는 바는 나머지 고정 된 OEM 파티션과 사용자 데이터간에 분할 될 메모리 분할

그리고 당신은 분할이 둘 사이에 무엇인지 결정할 것입니다 그럼 예제를 살펴 보겠습니다 그래서 LTS OS, 몇 가지 앱을 선택했다고 가정 해보십시오 Google Play 서비스, 맞춤 하드웨어 설정 이 콘솔의 [INAUDIBLE]보기에서, 당신이 마지막 빌드 단계에서 본, 우리는 모든 핵심적인 세부 사항을 없앴습니다

지금까지 본 시스템 파티션 중 따라서 마지막 슬라이드에서주의를 기울이지 않았다면, 괜찮아 당신이 알아야 할 것은 시스템 파티션 고정 크기입니다 따라서 OEM 파티션 크기 입력은 입력을 요청합니다 단일 OEM 파티션의 크기가 될 것입니다 이것이 의미하는 바는 OEM의 크기를 늘리면 100 분할, 사용자 데이터 파티션 200에서 뺍니다

파티션에 대한 가장 중요한 메시지는 다음과 같습니다 이 이야기에서 벗어나야합니다 적합한 OEM 파티션 크기 선택 제작 이미지를 만들 때 중요합니다 장치가 선택된 크기로 구워지면, 그들은 크기 레이아웃으로 고정되어있다 그들이 reflashed 때까지

AB와 OTA 메커니즘의 특성 때문입니다 우리는 방금 이야기했습니다 따라서 이러한 기기는 OTA 업데이트 만 수신합니다 동일한 파티션 크기로 빌드하십시오 크기를 설정할 때 한 가지 권장 사항 미래 성장을위한 완충 공간을 남겨 두는 것입니다

APK에 새로운 기능을 추가하고자 할 수 있습니다 새로운 멋진 부팅 애니메이션처럼 더 추가 할 수도 있습니다 더 많은 메모리가 필요할 수 있습니다 미래에 대한 계획과 예상 앱 성장과 데이터의 차이 성장 다시 말하지만 아직 계획 할 필요가 없습니다

프로토 타이핑 및 개발 단계에있을 때, 올바른 크기를 찾는 것에 대해 걱정할 필요가 없습니다 언제든지 장치를 다시 칠할 수 있기 때문입니다 이 값을 예측하고 마무리해야합니다 당신이 생산 이미지를 만들 때 이제 올바른 크기를 선택하고 빌드를 만들고, 빌드 구성을 작성하면, 두 가지 이미지 옵션 중 하나를 선택할 수 있습니다

개발 및 생산 개발 빌드는 디버깅 기능을 제공합니다 ADB와 마찬가지로 최종 사용자가 안전하고 사용하기를 원한다 디버깅을 제공하지 않습니다 장치가 프로덕션 이미지로 플래시되면, 보안상의 이유로 훼손 될 수 없습니다

따라서 디버깅이 가능하도록 복구해야합니다 다운로드를 클릭하면 이미지가 생성됩니다 브라우저를 통해 다운로드가 시작됩니다 이제 이미지 파일을 다운로드했습니다 파일에서 내 장치로 어떻게 가져 옵니까? 우리는이 모든 슈퍼를 만들기 위해 플래시 스크립트 도구를 제공합니다

쉽고 간단합니다 도구 섹션으로 이동하기 만하면됩니다 스크립트를 다운로드하십시오 스크립트의 지시 사항을 따르십시오 그리고 그것은 모두 꽤 간단해야합니다

기기를 바로 사용할 수 있습니다 스크립트 대신 빠른 부팅을 사용할 수도 있습니다 네가 원한다면 그래서, 우리는 건물을 완성하고 다운로드를합니다 Android Things 기기 준비하기 ADAM RODRIGUEZ : 맞아

이 시점까지는 빌딩에 관한 것이 전부였습니다 기능을 Android Things 기기에 추가 할 수 있습니다 Android Things 덕분에 개발이 쉬워 지지만, 당신은 아마 같은 일을했을 수도 있습니다 거기에 다른 플랫폼이 많이 있습니다 그러나 릴리스는 상황이 실제로 달라지는 곳입니다

새 기능 업데이트, 지원, 푸시, 귀하의 기기뿐만 아니라 수천 개의 기기로 해당 영역에서 이것은 Android Things가 실제로 빛나기 시작하는 곳입니다 나는 왜 두 가지 이유가 있다고 말하고 싶다 운영 체제로 Android Things를 선택할 수 있습니다 첫째, 당신은 안드로이드의 힘을 좋아합니다

당신은 그것에 익숙하고 익숙합니다 또는 두 가지, 하나 이상의 것을 만들 계획입니다 에이미와 나는이 세탁 로봇을 가지고있다 그녀는 양말을 접는 방법을 알고있는 세탁 로봇을 가지고 있습니다 하지만 내 집에있는 빨래 로봇은 양말을 접는 방법을 모른다

우리가 로봇에 얹혀있는 빌드를 어떻게 얻습니까? 안드로이드 것들로 아주 쉽게 먼저 채널을 사용하여 기기 인구를 분산시킵니다 고객이 소유 한 장치가 몇 개있을 수 있습니다 테스터들이 소유 한 몇 가지 다른 것들 그리고 당신은 그들 모두가 동일한 빌드를 얻는 것을 원하지 않습니다

따라서 채널을 논리적으로 구분할 수 있도록 채널에 배치하십시오 또한 맞춤 채널을 만들고, 품질 보증 (QA) 채널을 말하고, 또는 파란색을 좋아하는 사람들을위한 채널 사물을 더 나눕니다 채널을 통해 원하는대로 할 수 있습니다 그러나 당신이 약간의 지침서를 원한다면, 카나리아 일반적으로 빌드를 가져 오는 첫 번째 장치입니다 탄광 관용구의 카나리아에 대한 언급입니다

새로운 빌드에 문제가 있다면, 카나리아 장치가 먼저 그것에 대해 알려줍니다 Dev는 일반적으로 개발자 기기가 앉아있는 곳입니다 많은 새로운 기능, 많은 버그, 하지만 적어도 그들은 부팅 베타는 테스터를위한 것입니다 이들은 실제 사용자입니다

약간의 피드백을줌으로써 새로운 기능을 얻는다 출시되지 않은 소프트웨어에 대해 그리고 사용자의 대량 구매가 안정적입니다 이러한 빌드는 많은 테스트를 거쳤으며 모든 것이 작동합니다 마지막으로, 사용자 정의는 원하는대로 할 수 있습니다

개발자의 미리보기에서 우리는 많은 피드백을 얻었습니다 사람들은 많은 채널을 원했습니다 여러 가지 방법으로 기기 인구를 나눌 수 있습니다 그래서 우리는 그들을 위해 맞춤 채널을 만들었습니다 좋아, 이제 너는이 채널들을 가지고 있고, 어떻게 이러한 채널에 기기를 가져 옵니까? 처음부터? 장치는 안정 채널로 기본 설정됩니다

그러나 채널을 변경하려면 API를 통해 설정하거나 기기를 연결할 수 있습니다 여기에 보이는 것처럼 ADB를 플래시하십시오 명심할 것은 한 가지입니다 에이미가 석방에 대해 어떻게 이야기했는지 기억해 개발 이미지 vs

새로운 채널로 기기를 플래시 할 수 있습니다 그것이 개발 이미지를 실행하고 있다면 하지만 공개 이미지를 실행중인 경우, 깜박이고 ADB가 차단됩니다 따라서 채널을 변경할 수도 없습니다 최종 사용자가 실행되지 않도록하기 위해 원치 않는 코드 또는 악의적 인 코드가 포함될 수 있습니다

승인 이제 채널을 할당 했으므로, 업데이트를 푸시 할 수 있습니다 우리는 이전에 만든 빌드를 가져옵니다 그들로부터 업데이트를 생성 한 다음 장치에 배달됩니다 업데이트는 기본적으로 새로운 기능, 버그 수정 또는 변경

이러한 기기로 푸시하는 것을 OTA라고합니다 또는 over the air 업데이트 장치는이 업데이트를 다운로드하여 B 파티션에로드합니다 재부팅되면 B 파티션으로 부팅됩니다 그러나 문제가있는 경우 다시 A 파티션으로 돌아갑니다

나는 이것을 좋아한다 그것이 즉시 업데이트 느낌을 의미하기 때문에, 하지만 그들은 또한 내결함성이 있습니다 Android Things의 모든 사용자가이를 활용합니다 OTA를위한 옵션 중 하나는 부분 업데이트 (fractional update)라고합니다 채널의 업데이트를 100 %로 푸는 대신, 점차적으로 롤아웃 할 수 있습니다

나쁜 일이 생기면 동시에 모든 사용자에게 영향을 미치지는 않습니다 부분 업데이트 사용을 적극 권장합니다 OTA 접근을 위험에 빠뜨릴 수 있습니다 앞서 말했듯이 거의 모든 기술 동일한 인프라를 사용하고 있습니다 현장에서 수백만 개의 장치를 업데이트하기 위해 매일 사용하십시오

AB 업데이트, 델타 업데이트, 부분 업데이트 같은 것들 이것들은 모두 어렵지만 결정적으로 중요합니다 기기의 안정적인 업데이트를 원한다면 중요합니다 세계적인 AMY JANG : 아담이 언급 한 것처럼, Android Things 기기는 동일한 OTA 아키텍처를 따릅니다

Google이 사용하는 기능이므로 작동 할 것이라고 확신 할 수 있습니다 하지만 궁금해 할 것 같은데, 오타 후드 아래서 일하니? 그것은 꽤 간단한 흐름입니다 Android Things를 통해 지정하면 콘솔에서 정보를 저장하도록 OTA 서버를 업데이트합니다 제품 및 업데이트 채널에 대해 장치가 OTA 서버에보고합니다 5 시간마다 빌드 정보를 제공합니다

그러면 OTA 서버는 장치가 그것을 데리러 업데이 트가 있습니다 기기가 새 업데이트를 다운로드하고 설치합니다 우리가 얘기했던 비활성 AB 파티션을 구축하십시오 사용자는 여전히 기기를 사용할 수 있습니다 이 과정에서

Update Manager API를 사용하면 모든 권한을 가질 수 있습니다 업데이트 정책 (예 : 업데이트주기) 장치가 업데이트 확인을 위해 핑 (ping)하도록 하시겠습니까? 또한 듣는 방법으로 장치 동작을 사용자 정의 할 수 있습니다 이벤트를 업데이트합니다 일반적인 업데이트의 예를 살펴 보겠습니다 시퀀스, 장치 내부에서 발생하는 [INAUDIBLE] 다음과 같은 업데이트 상태 이벤트가 발생합니다

해당 앱 리스너에 게시됩니다 업데이트 엔진이 OTA를 서버에 확인합니다 OTA는 업데이트 엔진 클라이언트가 거기에 있음을 알리게합니다 그것을 데리러 새로운 업데이 트입니다 그러면 업데이트 다운로드가 시작됩니다

이 흐름도에서 볼 수 있듯이, 해당 업데이트 이벤트가 앱 수신기에 게시됩니다 그리고 그것은 당신의 앱입니다 설정 한 정책에 따라 앱 다음과 같은 경우 장치 재부팅을 트리거 할 수 있습니다 당신은 그것이 적절하다고 생각합니다 장치가 부팅되면 업데이트가 기록 될 새 파티션으로 시작하십시오

다시 부팅하면 업데이트를 다시 확인합니다 이미 업데이트되었으므로 다음 업데이트 때까지 유휴 상태로 돌아갑니다 수표가 발행됩니다 따라서 API를 사용하여 정책을 설정하는 방법입니다 관리자 인스턴스를 업데이트 할 수 있습니다

원하는 정책을 설정하십시오 적용 정책 만 사용하여 업데이트 관리자 업데이트를 다운로드하고 설치합니다 새 업데이트가 제공 될 때마다 업데이트 간격을 변경할 수 있습니다 이 API를 사용하는 빈도 – 예를 들어 이틀이라고 해 그러나 전체 흐름을 제어하려고한다고 가정 해보십시오

그런 다음 검사 전용 정책을 사용할 수 있습니다 모든 업데이트 이벤트를 듣고 전체 업데이트를 제어합니다 방법 업데이트 사용 가능 상태를 수신하면, 다운로드를 시작하기 좋은지 여부를 결정할 수 있습니다 설치하십시오

그리고 좋은 시간이라고 생각할 때, 지금 업데이트를 실행할 수 있습니다 메서드를 호출합니다 그리고 완료되면 업데이트 된 요구 사항을 다시 부팅하게됩니다 지위 그리고 또한 좋은 시간이라고 생각할 때, 장치를 다시 시작하도록 트리거 할 수 있습니다

그리고 그것은 모두 당신의 통제하에 있습니다 기기가 제로 데이 업데이트가 필요합니다 어떤 선반 시간 후에 고객이 제품을 구입하면, 이미 새 소프트웨어를 업그레이드했을 수도 있습니다 다음 가장 시원한 것 그리고 당신은 그것들을 시작하기를 원합니다, 그렇죠? 사용자가 몇 기가 바이트를 다운로드하는 것을 원하지 않습니다

새로운 소프트웨어가 귀하의 제품을 사용하기 전에 델타 업데이트는이 페이로드 업데이트가 가능한 한 작다는 것을 의미합니다 기본적으로 공장 이미지 옵션에 따라, 이전 OTA가 푸시하면 Android Things 콘솔 돌보아주고 자동으로 생성합니다 빌드 사이의 델타 페이로드, 그래서 장치는 더 작은 페이로드 패킷을 수신 할 수 있습니다 그들의 현재 빌드와 새로운 가장 멋진 것 사이 당신의 친구가 크리스마스 선물을 풀 었다고 상상해보십시오 그리고 그들은 최신 버전을 다운로드하기 위해 20 분을 기다려야했습니다

정말 끔찍한 경험 이었죠? 델타 업데이트를 통해 훨씬 개선되었습니다 ADAM RODRIGUEZ :이 시점에서 우리는 아마 조금 지출해야한다 보안에 대해 이야기하는 시간 XKCD가 매우 우아하게 지적했듯이, 단순히 안전한 장치를 만드십시오 안전한 IoT를 유지한다는 것은 지속적으로 유지된다는 것을 의미합니다

업데이트 및 취약성 찾기, 제품 수명주기 동안 변화를 추진합니다 우리는 Android Things가 얼마나 훌륭한 지에 대해 많이 이야기했습니다 많은 것을 만들고 싶을 때 그러나 당신이 무언가를 많이 만들 때, 너는 정말로 밀고하는 책임이 있니? 해당 제품의 평생 동안 새로운 업데이트가 있습니까? 에이미와 나는 이제 멋진 세탁 로봇을 가지고있다 하지만 몇 년 후에 우리는 다른 일을 계속합니다

어쩌면 우리는 다른 일자리를 얻을 수 있습니다 그 다음엔? 새로운 취약점에 대해 알게되었을 때, 커널 및 라이브러리 픽스를 조사합니까? 어쩌면 우리는 모든 엔지니어들과 다시 만날 수 있습니다 새 빌드를 컴파일하여 사용자에게 제공 할 수 있습니까? 아니 그게 무슨 일이 아니야 실제로 이러한 고아 장비, 그들은 인터넷에 연결되어 있습니다

아마 사용되지 않았을 것입니다 하지만 정말 취약합니다 고맙게도 Android Things를 사용하여 우리는이 문제에 대한 해결책을 가지고 있습니다 자동 갱신 플래그 Google의 SoM 전략 덕분에 Google은 자신있게 SoM을 실행하는 모든 IoT 장치에 보안 수정 사항을 적용하고, 세탁 접이식 로봇 또는 웹 캠 일 수 있습니다

채널에서이 깃발을 뒤집기 만하면됩니다 모든 장치가 정기적 인 보안 업데이트를 받게됩니다 귀하의 개입없이 Google로부터 메모하는 것이 중요합니다 이 깃발을 뒤집기 위해 필요합니다 자동 업데이트를 활성화하지 않은 경우, Google은 여전히 ​​보안 문제를 해결할 것입니다 그러나 언제 어떻게 구현할 것인지 선택할 수 있습니다

그것은 당신에게 달려 있습니다 Google에서 귀하의 업데이트 또는 관리를 관리하게하십시오 그들이 너 자신을 굴릴 때 Android Things 업데이트 방법에 대해 조금 이야기 해 보겠습니다 및 버전 관리 작업

대략 Android 버전의 주요 버전 일반 Android의 디저트 출시에 해당합니다 이들은 장기간 지원되는 대형 릴리즈입니다 Android API 프레임 워크 변경 사항을 나타냅니다 해당 채널의 자동 업데이트 플래그 주요 버전에서 업데이트되지 않습니다 따라서 메이저 버전 1에서 시작한다면, 주요 버전 2가 출시 되더라도, 주요 버전을 기반으로 보안 업데이트를 계속받을 수 있습니다

1을 선택하면됩니다 두 번째 숫자는 부 버전입니다 이들은 상대적으로 위험도가 낮은 업데이트입니다 그들은 안드로이드 API 프레임 워크의 변경이 없으며, 하지만 Android Things API가 추가되었습니다 자동 업데이트 플래그를 반전하면 당신은 새로운 주요 버전에 걸쳐 업데이트를 얻을 것으로 기대할 수 있습니다

따라서 12에서 시작하면 다음 부 버전이 나올 때, 13으로 마이그레이션 할 것입니다 마지막 번호는 보안 업데이트입니다 대략 매달 착륙 할 것으로 예상됩니다

API를 변경할 필요가 없습니다 그리고 이러한 업데이트는 자동 업데이트로 확실히 증가합니다 에 플래그 주요 버전 업데이트는 선택 사항이지만 교환하는 동안 Google을 통해 무료 업데이트를 얻으려면, 우리는 당신이 당신의 버전을 업데이트 할 것을 기대한다 각 부 버전 및 보안 패치에 걸쳐

그러나 당신이하는 일은 당신에게 달려 있습니다 자동 업데이트 플래그를 뒤집거나, 또는 직접 업데이트를 푸시하십시오 Android Things를 가장 쉽고 재미있게 만드는 것이 우리의 목표입니다 밖에 IoT 플랫폼을 확보하십시오 – 빌드가 가장 쉽고, 평생 동안 가장 안전하고 최신입니다 귀하의 제품의

그렇다면 SoM 및 주요 버전에서 어떻게 작동합니까? 그리고 년? 각 SoM은 Google에서 최소 3 년 동안 지원합니다 처음 사용 가능하게 된 때부터 모든 주요 버전에서 그래서 당신이 IMX8 SoM을 구입한다면 주요 버전 1에서 건물 시작 향후 3 년 동안 업데이트를 기대할 수 있습니다 모두 주요 버전 1에 남아 있습니다 주 버전을 업데이트 할 필요가 없습니다

2 전체 지원 시간을 얻으십시오 물론, 우리는 많은 장치들이 3 년보다 훨씬 더 많은 지원이 필요할 것입니다 따라서 SoM에서 지원하는 경우 다음 주 버전으로 업데이트하고 더 긴 지원을 받으십시오 창문 당신은 물론 항상 자신의 업데이트를 푸시 할 수 있습니다

전체 평생 동안 기기에서 사용할 수 있습니다 마지막으로, 더 긴 지원을 원한다면 시간, 확장 된 지원을위한 몇 가지 옵션에 대해 이야기 해주십시오 AMY JANG : 좋습니다 그래서 우리는 업데이트를 추진했습니다 우리의 로봇은 이제 양말을 접을 수 있습니다

마지막으로해야 할 일은 뒤로 물러서는 것입니다 우리 로봇이 현장에서 어떻게하고 있는지 모니터링하십시오 얼마나 많은 사용자가 있는지 확인하고 싶을 것입니다 그들은 매일 내 장치를 사용하고 있습니까? 그들이 방금 들었던 업데이트를 받고 있습니까? 아니면 미국의 로봇이 한국의 로봇과 비교하면 어떨까요? Android Things 콘솔이 제공합니다 엔드 투 엔드 솔루션을 통해 장치 분석에 이르기까지 다양한 솔루션을 제공합니다

매일 활성화 및 활성 그래프, 제품 전반에서 장치가 작동하는 방식을 모니터링 할 수 있습니다 시간 범위와 필터를 사용하여보다 심층적 인 분석을 수행 할 수 있습니다 IP 국가별로 기기를 필터링 할 수 있으며, ID를 만들고 채널을 업데이트하는 등의 작업을 수행합니다 당신이 콘솔을 통해 OTA를 밀고 나서 한 시간 안에, 이 모니터 화면으로 올 수 있습니다 업데이트가 어떻게 진행되고 있는지, 오류가 있는지, 귀하의 기기는 어떤 단계에 있습니다

그리고 우리가 제공하는 세분성은 매 순간까지입니다 업데이트 확인과 같은 다양한 업데이트 이벤트를 모니터링 할 수 있습니다 다양한 다운로드 상태 이벤트, 마지막으로 재부팅 이벤트, 장치가 새 파티션으로 재부팅되었음을 알립니다 여기에 표시되는 상태 이벤트에 매핑 된 이러한 이벤트 이전에 Update Manager API에서 보았습니다 그리고 업데이트에 오류가있는 경우, 당신은 업데이트 오류 그래프를 모니터링 할 수 있습니다

업데이트 오류를 ​​드릴 다운합니다 코드를보고 무슨 일이 일어나는지 확인하십시오 이것은 내가 OTA를 강요 한 직후에 굉장합니다 이 그래프를보고 장치가 잘 작동하는지 확인할 수 있습니다 내가 푸시 한 릴리스가 부드럽게 끝나면 ADAM RODRIGUEZ : 좋습니다

따라서 제작을 업데이트하는 방법을 안내해 드렸습니다 필드에있는 장치 그러나 왜 당신이 신경 써야하는지에 대해 정말로 재촉 해 봅시다 Android 작업으로 IoT를 쉽고 안전하게 만드는 것이 우리의 목표입니다 우리는이 일에 많은 시간을 할애 할 필요가 없습니다

우리는 당신이 중요하게 생각하는 것들에 집중하기를 바랍니다 당신의 하드웨어와 소프트웨어, 그 것 귀하의 제품을 차별화합니다 그리고 펌웨어, 보안 패치에 대해 우리를 의지 할 수 있습니다 업데이트 인프라 Android Things를 사용하면 일반 Android를 사용할 수 있습니다

개발자는 물론 Kotlin 및 Android와 같은 친숙한 도구를 사용할 수 있습니다 사진관 동일한 기술을 활용하게됩니다 수백만 대의 장치를 업데이트하는 데 사용하는 매일 현장에서 델타 업데이트, 부분 업데이트, AB 파티션 및 향상된 모니터링

이 모든 것을 스스로 구축하는 것을 상상할 수 있습니까? 네가 할 수있을거야 하지만 무언가는 당신이 오히려 발전하고 있다고 말할 수 있습니다 업데이트 재 작성보다 새로운 기능 및 기능 하부 구조 중요한 보안 업데이트도 있습니다 Google의 제품 유지를위한 이상적인 방법입니다

당신의 개입없이 안전하게 지키십시오 몇 년 동안 길을 결국 우리는 정말로 업데이트가 가능한 안전한 IoT를 쉽게 구축 할 수 있습니다 신제품에 대한 많은 기회가 있다고 생각하십시오 이 공간에서의 아이디어

AMY JANG : 그리고 그걸로 우리는 당신에게 감사의 말을 전하고 싶습니다 프로덕션 업데이트 방법에 대한 우리의 강연에 참석 한 분 Android Things 콘솔이있는 현장의 기기 전에 말했듯이, 거기에는 많은 옵션이 있습니다 IoT의 경우 어떤 OS 및 하드웨어를 선택할 수 있습니다 하지만 안드로이드 코드 작성에 익숙하다면, Android 환경을 사용하면 쉽게 시작할 수 있습니다

많은 장치를 만들고 판매하려는 경우, 보안에 관심이 있다면, 필요한대로, 그리고 원하는 생산 장치를 쉽게 관리 할 수 ​​있으며, Android는 당신을위한 훌륭한 솔루션입니다 고맙습니다 [음악 재생]

ARK : SURVIVAL EVOLVED || DOWNLOAD ON ANDROID | Official Launch In Play Store | Gameplay |TECHn HACK

TECHn HACK에서 친구를 환영합니다 이 동영상은 모두 중에서 가장 좋습니다

오늘 우리가 설치하겠습니다 내 안드로이드 장치에서 플레이 스테이션 4의 게임 ARK 생존이라는 이름 너는 예고편을 보았다 이 게임을위한이 최고의 비디오 사양을 시작하는 데 3GB RAM 금어초 또는 MEDIATECH의 최고 프로세서 소음 note5 (samsung) 또는 on5 그러면 쉽게 실행됩니다 시작 비디오를 허용합니다 설치 방법을 확인하십시오

당신은 이것을 플레이 스토에서 찾을 수 없다 나는 형식 ARK SURVIVAL EVOLVED를 입력했다 너는 그것을 여기에서 발견 할 수 없다 나는 이것을위한 링크를 주었다 당신은 설명에서 찾을 수 있습니다

너는 거기에서 구경 할 수있어 그래서 나는 또한 BROWSER에 붙여 넣는다 그래서 여기 있어요 당신은 이것을 직접 설치해야합니다 과 게임의 그래픽이 매우 높습니다

너는 그것을 좋아할 것이다 이 동영상이 도움이 되었다면 내 채널 구독하기 이 동영상이 도움이 되었다면 내 채널 구독하기 이 동영상이 도움이 되었다면 내 채널 구독하기 내 모든 알림을 받으려면 벨 아이콘을 클릭하십시오

Android Design in Action: Responsive Design

로마 누리 크 : 안녕하세요 환영합니다

Android 디자인 실천 내 이름은 로마 누릭이야, 오늘 나랑 여기서 – 안녕 얘들 아, 아담 코흐 런던에서는 NICK BUTCHER : 안녕, Nick Butcher 오늘 쇼의 대부분의 날과는 달리 – 공연의 대부분의 화요일 – 우리는 실제로 될 수 없습니다 재 설계에 대해 이야기하기

그래서이 쇼를 한번도 본 적이없는 분들은 대개 지명 된 앱을 살펴보십시오 일반적으로 개발자는 자신을 지명합니다 우리가 스크린의 일부를 어떻게 다시 상상할 수 있는지 살펴 보겠습니다 Android 스타일과 더 잘 어울리는 앱에서 전반적인 사용자에게 더 나은 경험이 될 수 있습니다 그런 다음 개발자가 개발자에게 전달합니다

그들이 그것을 좋아하는지보십시오 그리고 그들이하는 경우, 때로는 그들은 변화를합니다 때때로, 그들은하지 않습니다 그리고 지켜보고있는 당신들에게는, 기본적으로, 개발자는 목요일에 다시 올 수 있으며 무엇을 알 수 있습니까? 그들은 쇼를 생각해 개발자 스트라이크 백 (Developer Strikes Back)은 개발자들이 스트라이크 백 쇼

그러나 이번 주에는 그 일을하지 않습니다 엄청난 기술적 인 실패 때문에 마운틴 뷰 (Mountain View)에있는 금요일 앱에 사람들을 괴롭혔다 우리는 약간 다른 접근법을 채택하기로 결정했습니다 오늘이 에피소드 그래서 오늘, 우리는 이야기 할 것입니다

반응 형 디자인에 대해 그럼 반응 형 디자인이 무엇인지 알아 보겠습니다 자, 여러 사람들을 위해, 이번이 처음입니다 반응 형 디자인의 개념을 들었다 그리고 Ethan Marcotte – 미안,이든, 내가 너의 이름을 잘못 예측한다면 – Ethan Marcotte는 몇 년 전 기사에서이 용어를 사용했습니다

반응 형 웹 디자인에 관해 이야기했습니다 기본적으로 여기에서 인용문을 볼 수 있습니다 기사에서 웹 사이트를 방문하여 그것은 어떤 매체를 가로 질러서도 비례합니다 전화, 태블릿, 브라우저, 다른 화면 크기 및 거의 모든 다른 장치 유형

따라서 단일 레이아웃이나 단일 콘텐츠를 취하는 것과 매체에 따라 확장되는지 확인하십시오 그렇다면 반응 형 웹 디자인은 초소형 간단히 말하자면 따라서 반응이 빠른 웹 디자인이 적용됩니다 모바일 앱도 포함됩니다 그리고 오늘, 우리는 반응하는 것에 대해 이야기 할 것입니다

디자인 및 Android 기기에 적용되는 방법에 대해 설명합니다 우리가 뛰어 들기 전에, Adam, Nick, 어떤 의견? 이견있는 사람? 니가 말했듯이, 우리는 반응 형 디자인인데, 이번 주에 정제에 초점 방법에 대한 품질 가이드 라인을 시작했습니다 고품질의 태블릿 응용 프로그램을 만드십시오 그리고, 나를 위해, 잘 비례하는 응용 프로그램을 가지고 거대한 다양한 기기에서 Android 풍경, 그 품질의 크고, 큰 부분입니다

그래서 저는 이것이 정말로 중요한 주제라고 생각합니다 ADAM KOCH : 내가 언급하고 싶은 한 가지 빠른 것은 만약 당신이 이런 반응에 대해 생각한다면 웹 디자인 또는 반응 형 Android 개발 Android 개발시 개발주기 시작 앱을 사용하면 태블릿 앱을 만들거나 디자인을 만들 수 있습니다 그저 다른 모든 것을 맞추기가 더 쉽습니다 거기 밖으로 스크린 따라서 처음부터 디자인하는 것보다 이 모든 것들에 대해 처음부터 생각해보십시오

정말 도움이됩니다 우리가 다시 뛰어 들기 전에 형식에 대해 조금이라도, 우리는 실제로 될 수 없습니다 개발 모범 사례에 대해 이야기합니다 우리는 몇 가지 교육 세션을 가지고 있습니다 실제로 어떻게하는지에 대한 developer

androidcom 이러한 개념을 구현하십시오 하지만 우리가 할 일은 기존의 앱을 밖에 있고 그들이 어떻게 대우하는지, 어떻게 구현하는지 보아라 이 반응 형 디자인, 어떻게 그들이 유동적으로 규모가 있는지 서로 다른 유형의 기기간에 그래서 뛰어 들자 먼저 캘린더를 살펴 보겠습니다

따라서 이것은 내장 된 달력 응용 프로그램입니다 Galaxy Nexus, Nexus 7, Motorola Zoom 그리고 이것은 화면을 만드는 예제입니다 새 일정 항목 여기 전화로 볼 때, 그리고 나는 잠시 동안 확대 할 것입니다

전화로, 당신은 일종의, 완료 취소를 볼 수 있습니다 기본적으로 액션을 대체하는 상단의 바 막대 및 다른 입력 필드 (예 : 캘린더, 이벤트 제목, 날짜, 시간, 그런 것들 꽤 전형적인 것들 그런 다음 Nexus 7에서 스위치가 전환 된 것을 확인할 수 있습니다 일종의 다중 열 레이아웃으로 왼쪽 열에는 다른 텍스트의 레이블이 있습니다

입력란 그리고 오른쪽에는 필드가 있습니다 그리고 나서 10 인치 태블릿을 가로 질러 – 나는 여기에서 확대 할 것이다 미안합니다 기본적으로 동일한 화면임을 알 수 있습니다 화면에 세로로 표시됩니다

단, 여백이 더 넓습니다 그래서 기본적으로, 그들은 그것을 결정했습니다 콘텐츠, 텍스트 입력란은 꽤 흔하지 않습니다 번호는 약 45 ~ 75 자입니다 그 이상을 결코 볼 수 없도록하십시오

줄 길이가 너무 길지 않도록 한 번에 그런 제약에 맞추기 위해 측면을 따라 여백 그래서 요점은 간단히 말해서 캘린더는 무엇입니까? 앱의 이벤트 만들기 화면이 표시됩니다 얘들 아, 그들이 한 다른 일에 대한 생각 응답이 좋다는 것을 확인하기 위해 정말로 여기에 있습니까? NICK BUTCHER : 아마 좋을거야 외쳐라 우리는 Holo에 관한이 쇼에서 많이 이야기합니다

안드로이드의 언어, Holo 시각 테마, 그리고 그것이 가지고있는 그것의 자신의 특정 편평한보기 및 느낌 그리고 그 이유가 무엇인지 말해주고 싶었습니다 그런 사고 방식의 사고 Android 용으로 선정되었습니다 그리고 저는이 스크린 세트가 정말로 여기에 있다고 생각합니다 Holo가 어떻게 사용자 인터페이스를 만드는 데 도움이되는지 보여줍니다

타이포그래피와 간격을 사용하여 멋지게 확장됩니다 적절하게 애플리케이션 구조를 제공하기 위해 이 세 화면에서 분명히 볼 수 있습니다 Chrome에 세분화 된 상자가 많지 않으며 그래서, 텍스트 상자 등등 그것은 정말로 콘텐츠를 정의하는 콘텐츠입니다 페이지의 구조

그리고 그것은 정말로 그것을 확장하는데 정말로 도움이됩니다 너는 많은 비트 맵을 가지고 있지 않다 자산 또는 그래픽 자산 또는 그라디언트를 장소 전체에 적용 할 수 있습니다 크기가 커질 때 이상하게 보일 수도 있고 실제로는 그렇지 않을 수도 있습니다 이 분야에서 당신을 도와주세요

그래서 나는 이것이 내 주요 테이크 아웃 중 하나라고 생각한다 캘린더 응용 프로그램에서 홀로가 실제로 도움이되는 방법입니다 이 응용 프로그램 밖으로 이러한 화면 크기를 통해 확장하십시오 ADAM KOCH : 나를위한 한 가지 중요한 점은, 여백에 흰 공백 – 어디 보자 전화로 볼 수 있습니다

공백이 있습니다 왼쪽과 오른쪽 Nexus 7에 올라가 보면 작은 공백 그런 다음 가로보기로 가면 확대됩니다 실제로 여기에 더 많은 공백이 있습니다

모든 것이 더 큰 화면 크기를 채 웁니다 로마 누리 크 (NANIK) : 창조 할 때 또는 여전히 그리드에 충실한이 여백을 정의해야합니다 그리고 Metrics 아래의 디자인 가이드에서 볼 수 있듯이 및 그리드 섹션에는 16-DIP 그리드 개념이 있습니다 및 48-DIP 리듬 따라서 16 DIPs의 증분을 사용하여 32 DIP 또는 48 또는 64, 여전히 레이아웃에 구조를 도입 할 수 있습니다

아주 작은 마진을 사용하는 것을 제한하지 않고 따라서 32 개의 DIP, 48 개의 DIP가 큰 용도로 사용하기에 좋습니다 장치 (예 : 태블릿) NICK BUTCHER : 네 이런 종류의 화면을 순진하게 구현하려면 입력 필드를 줄곧 늘렸다 10 인치에서보기 흉하게 보입니다

그래서 나는 그것이 당신의 스크린 디자인에 접근하고 있다고 생각한다 앱 디자인 그리고 만일 당신이 무모한 것을보고 생각하고, 이봐, 어떻게하면 더 넓은 디스플레이에서 볼 수 있을까? 예를 들어, 10 인치의 풍경과 마음에 품은 소개를 시작하려는 곳 이 마진 포인트 ROMAN NURIK : 그럼 다음 앱으로 넘어 갑시다 그러면 첫 번째 타사 앱이됩니다

우리가 보는 것 그리고 이것은 Pattrn입니다 닉, 패트 른 얘기 좀하고 싶니? NIC BUTCHER : 물론 이죠 그래서 Pattrn은에 대한 배경 화면을 찾기위한 훌륭한 작은 응용 프로그램입니다 당신의 장치 루카스라는 영국 개발자가 모질라에서 일하고 있습니다

그리고 나는 그들이 정말 훌륭한 일을 해냈다고 생각합니다 내용 적응 다행히도 그들에게는 꿈의 응용 프로그램이 거의 없습니다 콘텐츠의 패턴 화 된 시나리오 배경 화면 – 종횡비의 개념이 없다 그런 것

그들은 실제로 종류의 타일을 사용하므로 실제로 잘 작동합니다 다른 종횡비에 따라 변경 될 수 있습니다 일부 앱의 경우 일 수 있습니다 그러나 보시다시피, 우리가 보여주는 세 화면에서 여기, 전화로, 그들은가는 3 개의 탭에 의지하고있다 데이터의 세 가지 주요 관점을 통해 그러나 그들이 특정 시점을 넘어 더 많은 것을 가지고있을 때 공간, 그들은 실제로 그것을 탭에서 떼어 낸다

이 사이드 바를 가지고있는 것으로의 탐색, 나는 생각한다 정말 잘 지나치게 폭이 넓어지기보다는 내용을 스트레칭하는 것보다, 실제로는 더 쉽게 네비게이션을 제공 할뿐 아니라 더 많은 정보를 제공합니다 예를 들어 Nexus 7에서 볼 수 있습니다 최근 검색 서비스

그래서 한 번 가볍게 치기 만하면됩니다 검색 필드를 탭한 다음 최근 기록을 보면, 최근 검색, 정말 멋지 네요 다른 점은, 당신이 그 차이를 보았다면, 전화와 7 인치 태블릿은 실제로 텍스트 크기와 패딩이 조금 더 크게 암시 그 특정 크기에 더 편하게 느끼기 위해서 그리고– 미안 해요, 닉 그것은 태블릿에서와 같이 보입니다 넓은 마진

그것이 16 DIPs의 증가라면 우리는 얘기했지만, 분명히 더 큽니다 패턴의 왼쪽과 오른쪽 네, 그리고 제가 말할 수있는 마지막 것, 당신이 7 인치에서 10 인치로 나가서 사용할 수있는 공간이 늘어남에 따라 이러한 종류의 더 많은 잠재적 배경 화면을 보여주는 그리드보기 한 번에 화면에 따라서 콘텐츠를 다시 상상할 수 있습니다 내용의 표현

그래서 같은 내용이지만 완전히 뻗어서 다른 방법으로 공간을 훨씬 효율적으로 사용할 수 있습니다 ROMAN NURIK : 네, 그리고 저는 놓친 기회 그리고 이것은 아주 사소한 것이지만 핸드셋을 보면 풍경의 버전 – 여기에 스크린 샷이 없습니다 Lucas는 패턴에 단일 열을 사용합니다 그래서 그는 이미 다중 컬럼을 구현했기 때문에 그걸로 전환하는 것이 상당히 사소한 것처럼 보입니다

멀티 칼럼 – 가로로 2 열짜리 레이아웃 그렇게하면 효과가있을 것입니다 승인 그렇다면 다음 앱으로 넘어 갑시다 더 많은 댓글

코닥 : 단지 한 가지 질문입니다 실제로이 앱을 많이 사용하지는 않았지만 휴대 전화 버전의 유료 탭에서? [알아들을 수 없는] Nick : 나는 실제로 나 자신을 기억하지 않는다 나는 그것이 즐겨 찾기와 다른 것이라고 생각한다 그러나 그것은 둘 중 하나의 조합이었습니다

ADAM KOCH : 어떻게 생각해 볼 수 있을까요? 그들은 확실히 구조를 조금 바 꾸었습니다 핸드셋 버전만으로 3 가지 버전에 맞출 수 있습니다 표준 탭을 표시하고 여전히보기 좋게 만듭니다 네 좋아, 계속 가자

그래서 우리는 시간을 확인해야합니다 승인 그래서 다음 앱은 Pocket입니다 그리고 포켓은 사실 포켓이라고 불립니다 이전에 읽으십시오

포켓은 기본적으로 – 저장된 기사 목록입니다 따라서 RSS 피드를 탐색하고 싶지 않은 경우 지금 읽으십시오 그냥 꺼내서 Pocket에 저장하십시오 그리고 그들은 당신이 공유 할 수있는 의도가 있습니다 좋은 일

그래서 이것은 Pocket의 메인 스크린과 비슷합니다 저장된 기사 목록을 참조하십시오 그래서 당신은 전화로 볼 때, 그들은 간단한 목록을 가지고 있습니다 오른쪽에 미리보기 이미지가 있습니다 이제이를 7 인치 태블릿으로 확장하면 2 열 그리드를 만들고 가로로 바꾸면, 3 열 그리드가 있음을 알 수 있습니다

그리고 완전히 다르다는 것을 알게 될 것입니다 똑같은 내용이지, 그렇지? 단순하지 않고 타일보기와 비슷합니다 수평 선형 레이아웃 그리고 10 인치 태블릿을 보면 기본적으로 더 많은 인용문으로 졸업하고, 인용 부호를 붙이지 않으며, '잡지'레이아웃은 Google Play 클라이언트와 유사합니다 응용 프로그램은 다른 타일을 추천 섹션

그래서 나에게 흥미로운 점은 그들이 많은 일을했다는 것입니다 글꼴 크기를 조정할 수 있습니다 따라서 10 인치의 제목 크기가 태블릿은 7 인치 태블릿보다 약간 큽니다 그리고 그들이 기본적으로 이것을 구현했다는 사실 레이아웃을 세 번, 한 번은 목록으로, 다른 하나는 그리드보기로, 잡지 레이아웃의 단순화 된 버전 일 것입니다 오른쪽으로

그러나 그들은 또한 잡지 레이아웃을 가지고 있습니다 프레임 워크를 지원하지 않습니다 내가 알아야 할 것 중 하나는 조금 바람 피는 그들은 HTML5와 CSS3에서 WebView를 사용하여 레이아웃, 완벽하게 대단합니다 유일한 문제는 약간의 실적이 있다는 것입니다

처벌 – 음, 아마도 사소한 것은 아니지만 약간의 실적이 있습니다 관련된 벌칙 그러나 전반적으로, 그것은 멋지게 보인다 네, 그렇게 간단합니다 내가 언급하고 싶은 또 다른 점은 그들이 액션 바 같은

그리고 이것은 완전히 괜찮습니다 액션 바를 전환 할 필요는 없습니다 키가 크면 물건을 더 넓게 만들 수 있습니다 프레임 워크는 실제로 모든 것을 처리합니다 너의 아이콘을 약간 넓게 만들거야

약간 더 큰 바 그래서 당신을 위해 모든 것을 할 것입니다 이 경우, 나는 아마 그들은 아마 사용자 지정 작업 표시 줄, 그래서 거기 일어나지 않을거야 하지만 액션 바는 거의 동일합니다 태블릿 및 휴대 전화, 동작 및 거친 측면에서 크기

NICK BUTCHER : 내가 좋아하는 것들 중 하나 여기서도 끝내주는 것은 당신이 전화와 태블릿에서는 검색 우선 순위를 지정하고 검색 결과를 가져옵니다 콘텐츠 뷰 상단에서 바로 검색 할 수 있습니다 필터를 사용하는 반면, 태블릿에서는 저것을 강등했다 그렇게 덜 중요합니다 거기에 행동 오버플로가 있다고 생각합니다

정말 흥미 롭습니다 나는 그것이 그들이 어떻게 생각했는지를 보여주는 것이라고 생각한다 누군가이 응용 프로그램을 약간 사용하려고합니다 타블렛에서 다르게, 그들은 같은 내용을 가지고있다 사용할 수 있지만 다른 표현입니다

그들은 서로 다른 유스 케이스를 위해 디자인되어 있습니다 누군가가 더 많은 시간을 보내고 탐색 모드 ROMAN NURIK : 다른 의견이 있으십니까? 좋아요 그래서 계속 나아가 자구 나는 – 오, 아니, TED가있어

TED에 대해 이야기하십시오, Adam 예, TED 앱입니다 잘하면, 여러분 중 일부는 TED 앱과 모든 훌륭한 콘텐츠에 대해 잘 알고 있으며, 그들이 가지고있는 비디오 회담 따라서이 예제는 매우 간단하기 때문에 마음에 듭니다 미친 짓이나 복잡한 일을 할 필요가 없습니다

다양한 폼 팩터를 지원하고 멋지게 보임 여전히 기분이 좋다 따라서 세 가지 폼 팩터를 살펴보면 여기에 게시되었습니다, 당신은 초상화에 핸드셋있어 모드에서 상단에 큰 미리보기 이미지가있는 경우 아래쪽에있는 세 개의 하위 탭은 다른 것을 보여줍니다 해당 동영상과 관련된 조회수 그런 다음 Nexus 7로 이동하면 매우 유사합니다 그들은 약간의 공백을 추가했습니다 조금만 확대 해 봅시다

그들은 약간의 여분의 공백을 추가했습니다 탭도있다 그것은 흥미있다 하지만 그렇지 않으면 상당히 유사합니다 글꼴 크기를 약간 늘린 추가 공백 그리고 10 인치 경치로 이동하면 여기 저기 확대 해 보겠습니다

당신은 그들이 쌓인 것에서 벗어났다는 것을 알게 될 것입니다 그들의 파편을 나란히 놓아 두는 것 그러나 본질적으로, 그것은 같은 조각입니다 당신은 분명히 그들이 재사용했다고 말할 수 있습니다 거기에 같은 조각

동영상 미리보기 이미지의 흥미로운 점은 다음과 같습니다 그들은 제목을 투명한 오버레이에서 실제 비디오 아래에는 더 많은 공간이 있으므로 그들은 정말 멋진 비디오 축소판을 가져올 수 있습니다 그것을위한 약간의 공간을 할당합니다 얘들 아, 의견이 있으십니까? 로마 누리 크 (NANIK) : 화면의 전체 구조 Android에서 YouTube 재생 화면을 상기시켜줍니다

그리고 저는 그것이 실제로 좋은 일이라고 생각합니다 내 생각에 사용자는 Android 기기를 구입할 때 YouTube를 열면 즉시 익숙해집니다 어떻게 작동하는지 그리고 당신이 풍경, 전체 화면입니다 그들은 그것이 어떻게 행동하는지, 탭의 종류에 대해 매우 잘 알고 있습니다

휴대 전화 하단의 구조로 전환 할 수 있습니다 서로 다른 세부 사항들 사이 동영상에 대한 정보 그리고 태블릿에서, 그들은 기본적으로 다시 뭔가를합니다 YouTube와 매우 유사합니다 그들은 그것을 오른쪽으로 넘깁니다

그리고 이것은 뭔가를하는 자연스러운 방법과 거의 같습니다 당신이 가진 새로운 공간으로 그러나 나는 단지 그것과 비슷한 점을 추가했다 YouTube 앱을 사용하면 사용자에게 즉시 익숙해집니다 닉, 우리가 이사 가기 전에 다른 건 없니? NICK BUTCHER : 나는 그들이 훌륭한 일을 해냈다고 말한다 간격을 가지고 노는 것

나는 그들이 당신이 공간에서 명확히 암시하고 있음을 볼 수 있다고 생각한다 당신이 전화에서 7 인치까지 올라가서 그냥 느끼기 만하면 그 크기의 장치에서 훨씬 편합니다 그래서 당신이 할 수있는 일 이죠 7 인치 장치에 전화 레이아웃을 시도하고 생각, 이봐, 그 정도면 충분 해 그러나 그들은 실제로 실제로 말할 여분의 마일을갔습니다

그것은 조금 비좁은 느낌이나 약간의 혜택을 누릴 것입니다 여기에 더 많은 간격이 있습니다 그래서 그들은 정말로 더 많은 돈을 벌어서 다른 장치 크기 ADAM KOCH : 네, 그렇습니다 이 특정 화면의 가로 레이아웃을 핸드셋 장치

사실, 그들이 실제로 풍경을 가지고 있는지 확실하지 않습니다 핸드셋에있는 모든 화면 그러나 비디오 앱의 경우, 특히 비디오 디테일의 경우 이런 식의 스크린은 때로는 좋다고 생각합니다 사람들은 회전 할 때 비디오가 대신 전체 화면으로 재생됩니다 거기에 다른 곳에서 할 수있는 충분한 공간이 없습니다

그건 TED 야 좋아, 그럼 계속 가자 마지막 앱이라고 믿습니다 우리는 여기에서 속임수로 쓰고 있습니다 왜냐하면 이것은 앱이기 때문입니다

우리 모두가 작업 했어 이것은 Google I / O 2012 애플리케이션입니다 그래서 기본적으로,이 응용 프로그램, 당신이 회의에 참석한다면, 그것은 재생중인 세션을 볼 수 있습니다 개인화 된 일정을 만들 수 있습니다 또한 다른 장치간에 동기화됩니다

다시 말하지만, 멀티 디바이스 사용자에게는 여러 기기에서 원활하게 동기화 할 수 있습니다 그래서 우리가 여기서 한 것은 기본적으로 – 전화로는 그다지 수평적인 공간이 없습니다 그래서 우리는 서로 다른 핵심 부분에 대해 세 개의 탭을 가지고 있습니다 기능 그것은 상호 작용 측면의 일종입니다

Google+에도 참여중인 다른 사용자 회의 내 일정 또는 내 일정 목록 영역, 그리고 탐색 단계를 통해지도를 보거나 둘러 볼 수 있습니다 개별 트랙 그래서 우리가 여기서 한 흥미로운 점은 우리가 그것을 나눕니다 탭에서 여러 창으로 확대 할 수 있습니다

그래서 초상화에서, 실제로,이 두 장치 모두 – 7 인치 및 10 인치 장치 – 초상화에서, 그들은이 종류의 2 열을 보여줄 것입니다 레이아웃은 두 개의 창이 하나의 열에 쌓이는 방식입니다 그리고 풍경에서, 그들은 더 넓은쪽으로 전환합니다 3 열 레이아웃 7 인치와 10 인치의 주요 차이점 중 하나는 레이아웃은 여기서 여백이 7 인치는 16 DIP입니다

10 인치 크기의 태블릿에서는 32 DIP입니다 그리고 실제로 조금 더 숨쉴 공간이 생깁니다 이 10 인치 기기의 콘텐츠 그리고 다음 화면에서도이를 알 수 있습니다 그것을 얻으십시오, 이것은 간격의 감각을 추가하고 두 개의 콘텐츠를 분리하거나 여기에서 세 가지 다른 콘텐츠 어떤 생각? NICK BUTCHER : 아름다운 앱입니다

누가 이것을 설계 한 사람이 대단하니? [목을 가다듬 다] 로마 인 내가 언급 한 것을 잊어 버린 한 가지는 당신이 스크린 샷에서이 내용을 볼 수 없지만 전화를 건 드리면 실제로 16-DIP 분배기는 실제로는 빈 공간입니다 그 분배기는 회색 배경과 동일합니다 태블릿 그래서이 지역에

여러 장치가있는 경우 미묘한 힌트가 있습니다 이것들은 실제로 같은 화면의 일부입니다 내가 말했던 것처럼 당신이 전화를 미끄러지게 할 때, 당신은 그 회색을 본다 배경은 당신에게 다시 분리 감각을줍니다 코닥 ADAM : 마지막으로 한 가지

개인적으로 내가 좋아하는 한 가지 점은 태블릿에 있습니다 레이아웃, 각각의 제목의 정렬 정렬 다른 조각들, 그것은 단지 앱이 정말 멋지다고 느낍니다 그리고 로마가 말했듯이, 이런 종류의 패딩이 있습니다 거기에 다른 섹션 사이에 동일한 패딩 그리고 내가 기억할 수없는 작은 표식도있다 라고 불린다

ROMAN NURIK : What 's On 단편? ADAM KOCH : 예, What 's On 단편입니다 그냥 정렬 일뿐입니다 정말 좋네 모든 것이 실제로 일관되게 보입니다 ROMAN NURIK : 여기서 한 가지하지 못한 것은 사용법입니다

Roboto Thin 또는 Roboto Light, 아마도 우리가 가지고 있어야합니다 따라서 타이틀을 더 돋보이게 만들고 싶다면, 더 주목 해 나는 그것이 여기에 필요하다고 확신하지 않는다 그러나 너는 할 수있다 큰 포인트 크기와 Roboto Thin을 사용하여 우아한 느낌을줍니다

헤더를 각 창에 추가하십시오 자, 이제이 앱의 두 번째 화면으로 넘어 갑시다 기본적으로 세션 세부 정보 화면입니다 그래서이 경우처럼 특정 세션에 들어가면, Chris와 Ellie가 Android 앱에서 제공 한 세션 Google Play에서 발표 한 곳 새 게시자 콘솔 화면에 들어가면 많은 정보가 있습니다

내가 볼 수있는 행동, 내가 할 수있는 행동들 세션에 참여하고 싶습니다 예를 들어, 내가 추가하거나 제거 할 수 있습니다 일정 잡기, 사람들과 공유하기,지도보기, 그런 것들 여기에 +1 할 수 있습니다

그리고 저는 연사리스트를보고 더 많은 것을 배우고 싶습니다 크리스 또는 엘리, 그리고 몇 가지가 있습니다 링크는 하단에 있습니다 그래서 우리가 여기서 한 것은 이것이 하나의 스크린이라는 것입니다 음, 세션 세부 정보 및 세션 목록입니다

이전 화면 이것은 휴대 전화의 단일 화면이며, 반면 태블릿에서는 그것은 다중 창 레이아웃으로 결합됩니다 이것은 매우 일반적인 마스터 세부 레이아웃의 일종입니다 이는 거의 모든 시스템 앱에 사용됩니다 당신은 초상화에서 그것을 볼 것입니다 – 여기서는 실제로 볼 수 없습니다 우리는 애니메이션이 필요합니다

우리는 이것을 보여줄 멋진 기술이 없습니다 그러나 초상화에서, 그것은 미끄러짐 스크린의 종류 다 상호 작용을 시작하면 왼쪽 패널이 축소됩니다 오른쪽 세부 정보 창이 있습니다 그런 다음 위로 버튼을 누르면 다시 슬라이드됩니다

또는 화면에서 실제로 움직이는 것입니다 그리고 풍경에있는 10 인치 태블릿에서 우리는 사용 가능한 공간이므로 축소 동작이 필요하지 않습니다 항상 눈에니다 어떤 생각이나, 얘들 아, 우리가 지적해야 할 다른 것? NICK BUTCHER : 저는 여기 7 인치 치료법을 정말로 사용합니다

같은 것을 가질만큼 충분히 넓지 않은 곳 당신이 10 인치에 가지고있는 디스플레이, 모든 정보가 화면에 영구적으로 표시됩니다 따라서 슬라이딩 인 / 아웃 기능이있는 멋진 솔루션입니다 당신은 화면에 둘 다 가지고 많은 장점 나는 사이의 빠른 상호 작용을 좋아한다 현재 세션을 전화로 할 필요없이, 어디서 계속 올라가고 내려야 만할까요? 다른 인접한 일정을 참조하십시오

그래, 내가 좋아하는 한 가지 사소한 일은 이 링크와 관련된 개념이 있습니다 특정 세션 따라서이 세션은 가을 세션과 관련된 동적 링크입니다 아래 핸드셋에서 – 내가 확대 할 수 있는지 보자 Nexus 7 버전 그러나 만일 당신이 풍경의 10 인치의 버전에 간다면, 대신 콘텐츠와 함께 일종의 가을을 볼 수 있습니다

그래서 NICK BUTCHER : 네, 그건 자연스러운 방법을 제공합니다 여백 포인트 또한, 그래서 세부 사항을 얻을하지 않습니다 와이드, 내 생각 엔

ROMAN NURIK : 여기 자연적인 점 중 하나는 텍스트 길이와 공백에 관한 것입니다 크고 넓은 스와 스를 최소화하기 위해 최적화하고 싶습니다 화면에는 아무 것도없는 공백이 있습니다 다음 중 하나를 따라 정보를 보내지 않으려 고합니다 화면 가장자리 또는 모서리

그리고 내가 선 길이에 관해 말한 것처럼, 특정 수의 문자를 중심으로 실제로 최적화 한 줄에 하나씩, 왜냐하면 더 크고 조금 덜 쉽기 때문입니다 눈으로 보아라 다음 줄로 이동하십시오 그리고 조금 더 작아 지 더군요 그것은 신문과 비슷합니다

한 줄에 2 ~ 3 단어 만 있으면 정말 지루해지다 긴 텍스트 조각 그래서 실제로 최적화 포인트 중 하나입니다 텍스트 자체를 매우 쉽게 읽을 수 있고 공백이 충분하게 채워진다 내가 지적하고자했던 마지막 한 가지는 단지 일반적인 것입니다

이것들에 걸친 스레드 – 당신은 녹색 배경은 트랙의 브랜딩을 유지합니다 여기에 작업 표시 줄 아이콘이 있습니다 안드로이드를보고 있음을 나타 내기 위해 초록색의 녹색이 표시됩니다 그리고 나서 초록색은 다른 태블릿 괜찮아

그래서, 마지막 절로 넘어 가자 4 분 남았 어 와, 시간이 없어, 얘들 아 정말 끝내주는 군 4 분 남았으니 안드로이드에 뛰어 들자

디자인 뉴스 그래서 뉴스의 첫 번째 비트 – 그리고 이것은 정말로 뉴스가 아닙니다 사람들에게 거짓말해서 미안해 이것은 실제로 Kirill Grouchnikov의 기사입니다 엔지니어 중 한 명이 Google의 인기있는 앱 중 하나입니다

그는 반응 형 모바일 디자인에 대한 일련의 기사를 저술했습니다 그것들은 개발자가 집중하는 것 같아요 서로 다른 전환점에 대해 많은 관심을 기울여야합니다 Nick이 암시하는 바와 같이 마진 포인트와 어떻게 만들었습니까? 그 결정들, 그리고 그 근본적으로 그것이 어떻게 영향을 미치는지 태블릿에서의 다른 레이아웃 조금이라도 1 년이 조금 지나면주의해야합니다

따라서 사고의 일부는 이전 버전이거나 우리의 현재 디자인 사고의 전신입니다 그러나 반응 형 모바일 디자인은 놀라운 인트로입니다 계속 전진 해 닉, 네가 생각한다 NICK BUTCHER : 예, 환상적입니다

우리가 2 주를 보았던 응용 프로그램 중 하나 보기 용 응용 프로그램 인 Glimmr이라고하는 Flickr의 사진 그리고 개발자 인 Paul Bourke에게 좋은 직장을 말하고 싶습니다 누가 디자인을 가져와 이미 구현했는지 너는 그 전후에 변화를 볼 수있다 첫 번째 화면

그래서 더 이상 단순한 로그인은 아니지만 실제로 그는 처음부터 일부 콘텐츠를 보여 주며 정말 좋네 나는 그가 훌륭한 직업을 가졌다 고 생각한다 잘 했어, 폴 네, 그렇습니다 잘 했어, 닉 초기 디자인에 영감을 불어 넣었습니다

다음은 The Verge입니다 닉, 그 얘기하고 싶니? 네, 물론 이죠 그래서 The Vertge, 인기있는 가제트, 저의 가제트 뉴스 사이트는 방금 Holo 재 설계를 완료했습니다 그래서 여기에서 볼 수 있습니다 그들은 Holo의 외관과 느낌이 브랜딩에 반영되는 동안 꽤 성공적으로, 나는 느낀다

그래서 일반적으로 정말 좋은 직장입니다 애플리케이션의 탐색과 관련된 몇 가지 문제 하지만 그들은 좋은 직장을 꾸 렸고 나는 또한 정말 기쁩니다 서랍 내비게이션 사용 패턴은 꽤 정확하게 그래서 그것은 매우 좋다

다음은 ActionBarSherlock입니다 그리고 이것은 개발자들에 더 초점을 맞추고 있습니다 하지만 ActionBarSherlock은 매우 유명한 도서관입니다 제이크 와튼 액션 바를 모두 사용할 수있는 라이브러리입니다

허니컴을 가지고 있지 않은 장치에 대한 영광 아이스크림 샌드위치는 아직 – 예를 들어, 진저 브레드 장치 그리고 최신 버전 – 버전 42 – 덧붙여 나는 이것이 예비적인 지원이라고 믿는다 SearchView 따라서 SearchView를 중심으로 디자인을 진행하고 있다면 진저 브레드를 지원해야합니다

이것은 좋은 방법 일 수 있습니다 보기를 백 포트하십시오 그리고 나는 그것이 이번 주에 있다고 생각합니다 나는 우리가 1 분 일찍 생각한다 그러나 다시 한번 튜닝에 감사드립니다

다음에 우리가 실제로있을 곳을 보길 바랍니다 검토 된 동영상 플레이어 앱의 재 설계 이번 주 금요일, 앱 클리닉에서 믿습니다 다시 한번 감사드립니다 언제나처럼, 나는 Roman Nurik입니다 아담 코흐 : 아담 코흐

닉 부처 (Nick Butcher) 서명 해 나중에 보자 고맙습니다, 얘들 아 안녕

[음악 재생]

What’s New in Android (Google I/O ’17)

안녕하세요, Android의 새 기능에 오신 걸 환영합니다 제 개인적으로 Android 키노트라고 부르고 싶습니다 Android UI 툴킷 팀에서 온 쳇 하제입니다 전 그래픽 팀의 호만 기입니다 전 시스템 UI 팀의 댄 샌들러입니다 시간이 얼마 없으니 바로 시작하겠습니다 Android의 새 기능을 볼 준비 됐나요? 지난 번에 여기에서 그만 뒀죠, API 25 그냥 깃-sha를 하고 깃-diff에 넣으면 다 된 거죠 이거 받아 적으세요 좋습니다 다음이요 네, 그것도 좋았죠 맘에 듭니다 이걸 이넘으로 만들 뻔 한 거 기억나요? 정말 웃겼죠 됐죠? 사람들이 이거 보러 왔다고 생각해요? 왜 이 생각을 못 했을까요 저희는 이 발표를 오래 해 왔습니다 새 기능을 몇 년째 알려 드리죠 보시다시피 자켓을 안 입고 왔죠 사실 예쁜 빨간 자켓이 있었는데 키노트 때 누가 빌려 갔죠 됐죠 당신 [청취불가] 하는 것 같아요 그러나 올해는 조금 다릅니다, 그렇죠? 훨씬 미리 개발자 미리보기가 있었고 이런 API 많이 보셨을 겁니다 Google 키노트에서도 신나는 일을 좀 자랑했죠 개발자 관련 일을 더 많이 알게 된 개발자 키노트도 있었죠 그럼 우린 뭐하는 거죠? Android의 새 기능 세션이 왜 필요하죠? 존재 위기이죠 그럼 클리커 시험해봤어요? – 했죠 – 네 이 발표를 와인 시음이나 위스키 시음이나 여러 버튼을 누를 수 있는 탄산음료 기계라고 생각하세요 Android 새 출시에서 놓쳤을 지도 모르는 것을 수공업으로 직접 선택한 겁니다 Android O의 일부분이 되려면 해야 할 것들이고 솔직히 저희가 무대에서 말하고 싶은 것들일 뿐이죠 이것이 Android의 새 기능입니다 구체적으로 개발자 미리보기나 I/O 키노트나 다른 키노트에서 놓쳤고 여러분이 관심을 가져야 하는 이유에 대한 거죠 오늘 꼭 하고 싶은 마지막 부분은 바로 이겁니다 모든 분들이 항상 이에 대해 흥분하지만 마지막에 다루도록 하겠습니다 괜찮을 겁니다 좋습니다, 시작하죠 로맨, UI와 그래픽 시작하죠 네, 시작하겠습니다 저희가 다루고 싶은 첫 번째 기능은 오늘 아침 키노트 중에서 보신 겁니다 쳇, 이 클릭커 안 됩니다 테스트 안 한거죠 시간 낭비 중이죠 여기 뒤에 서서 제가 슬라이드 넘겨 줄게요 – 알겠습니다 – 다음 슬라이드 부탁해요 이래서 미리 안 준 거죠 알겠습니다 전 괜찮아요 그냥 그 뒤에 있어요 안 보고 싶어요 오늘 아침 키노트에서 보신 첫 기능은 사진 속 사진은 더는 TV만을 위한 것이 아니라 핸드폰에서도 됩니다 여기 제 3자 애플리케이션의 예가 있죠 여러분 핸드폰에서 실행되는 넷플릭스도 사진 속 사진이죠 클리커 주세요 다시 가죠 됐네요 여러분의 애플리케이션에서 실행하기 정말 쉽습니다 그냥 목록만 수정하면 됩니다 애니메이션도 그만 하시죠 사진 속 사진 지원하기 트루라고 하면 되죠 O에서는 크기 조정 가능한 활동 트루 속성이 더는 필요 없고 컨피겨레이션 변화도 검사하셔야 합니다 그리고 코드에서 사진 속 사진 모드로 들어가고 싶으면 라인 하나만 부르면 되죠 getActivity와 enterPictureInPicture하면 되죠 정말 간단하고 사용자를 정말 행복하게 해 줄 겁니다 다음은 제가 정말 아끼는 기능이죠 색깔 관리입니다 O를 대신할 넓은 색영역 지원도 추가했죠 모든 기기에서 되는 건 아니죠 이 기능을 지원하는 기기만 여러분의 앱을 위해 이를 켜줄 겁니다 16비트 PNG 파일 지원이 추가되니 더 넓은 색깔과 채도가 더 넓은 색도 생기죠 ICC 프로파일을 지원하니 색깔 프로파일이 JPEG, PNG, WebP에서 비트맵에 임베드되죠 여러 화면에 걸쳐 색깔을 정확하게 전달해줄 겁니다 새로운 API도 많이 있죠 그건 다른 발표에서 주말에 더 얘기하겠습니다 사진 한장이 백마디 말보다 나으니 이것이 사진 관리이고 그 원리입니다 이해 잘 되시길 바랍니다 어쨌든 사진 관리는 아마 여러분의 앱으로 경험하는 것이겠죠 색깔은 기기에 따라 다르게 보입니다 따라서 Android O에서 해결책을 만들었죠 더 알고 싶으시면 제2무대에서 금요일 11시 30분에 제가 발표할 겁니다 색깔 이해하기라는 제목이죠 다음으로 다양한 디스플레이에 대한 지원도 추가했습니다 여러분의 애플리케이션이 이미 클리커가 잘 안 되네요 여러분의 애플리케이션이 이미 다양한 창을 지원한다면 여러 창 모드를 지원한다면 그 앱은 O에서 이미 다양한 디스플레이를 지원하게 될 겁니다 핸드폰이나 네트워크 기기가 다양한 디스플레이에 연결되고 호완되는 앱이 있다면 사용자는 다른 디스플레이셔 여러분의 애플리케이션을 보내도록 선택할 수 있죠 이럴 때 크기 변화 컨피겨레이션 변화가 생기겠죠 어느 디스플레이에서 활동을 보일지도 제어할 수 있습니다 이를 위해 활동 옵션을 사용하시면 됩니다 이 기능을 지원하고 싶으시면 꼭 여러분의 앱을 검사해 보세요 검사를 돕기 위해 새 개발자 도구 두 가지를 만들었죠 adb shell dumpsys 디스플레이를 실행하시면 됩니다 기기에서 현재 사용 가능한 모든 디스플레이 목록을 보여주죠 활동 인텐트로 adb shell start를 부르면 활동을 시작하고 싶은 기기를 구체적으로 정할 수 있죠 따라서 검사하기 아주 쉬운 방법입니다 API에는 더 많으니 오피스 아워에 가시길 권장합니다 목요일과 금요일이고 Windows와 활동에 대한 오피스 아워이죠 다음은 미디어 미디어 패키지에 굉장히 유용한 클래스가 많습니다 미디어 플레이어, 미디어 레코더 익스트렉터 그리고 코덱이 있죠 새 getMetrics API도 각각의 모든 클래스에 추가했죠 이는 여러분이 다루고 있는 미디어에 대한 정보를 쿼리할 때 도와주죠 따라서 해상도, 코덱 비트레이트, 지속 기간 등의 데이터를 쿼리할 수 있죠 사용하기 정말 쉽죠 오브젝트에 getMetrics만 불러오면 되죠 PersistableBundle이 있고 developerandroid

com에서 문서를 찾아보시면 됩니다 어떤 쿼리가 있는지 궁금하시면 말이죠 재생도 많이 향상되었죠 이제 여러분 앱의 버퍼링도 제어할 수 있습니다 높고 낮은 워터마크도 구체적으로 정할 수 있죠 비디오의 재생은 워터마크가 낮아질 때까지 시작하지 않을 겁니다 그 시스템은 이 높고 낮은 워터마크 사이에서 캐시 데이터를 유지하려고 최선을 다 하겠죠 지속시간나 데이터 양 크기에서 워터마크를 구체화할 수도 있습니다 찾기 기능도 향상됐습니다 비디오에서 찾기 기능을 할 때 그 행동을 선택할 수도 있죠 가장 가까운 프레임을 찾고 싶은지 다음 키프레임, 이전 키프레임 혹은 가장 가까운 동기화 프레임을 찾고 싶은지 말이죠 마지막으로 모든 애플리케이션에서 더 쉽게 사용할 수 있도록 Widevine으로 DRM 재생도 만들었죠 레코딩의 경우 지금까지 미디어 믹서는 하나의 비디오 혹은 오디오 트랙만 추가할 수 있었죠 이제 원하시면 얼마든지 오디오나 비디오 트랙을 추가할 수 있습니다 또한 맞춤형 트랙도 만들 수 있죠 MIME 타입은 애플리케이션으로 시작해야 하고 기본적으로 원하시는 어떠한 데이터도 인코딩할 수 있는 사이드 밴드이죠 정규 예시는 자바스크립트 데이터를 인코딩하는 거죠 360개의 비디오를 재생하고 싶거나 하면 말이죠 WebView는 정말 유용한 새 API와 함께 옵니다 브라우징을 저장하는 기능을 추가했죠 Chrome을 통해 아시고 좋아하시는 부분이죠 이는 멀웨어와 안전하지 않은 웹페이지를 탐지합니다 따라서 여러분 목록에 이 메타 데이터 태그를 추가하면 이는 Chrome 자체가 여러분의 사용자들을 위해 브라우징 경험을 안전하게 하려고 사용하는 것과 같은 후단부와 API를 쓰겠죠 WebView은 이제 다양한 처리를 사용하죠 특히 렌더 처리가 있습니다 또한 이러한 다양한 처리를 다루기 위한 새 API도 있습니다 따라서 렌더 과정이 고장나면 이 고장을 탐지하는 터미네이션 핸들 API를 쓰면 되죠 애플리케이션에서 뭘 할지 정하는 거죠 원하시면 애플리케이션을 고장내도 되고 WebView를 다시 시작하려고 하거나 뭔가를 로그해서 사용자에게 메시지를 보여줘도 됩니다 이전보다 훨씬 우아하죠 또한 렌더 중요 API를 사용해도 되죠 메모리가 적은 경우를 더 잘 해결하기 위해서 말이죠 시스템 메모리가 적을 때 어딘가에서 RAM을 되찾으려고 하겠죠 그러면 WebView가 애플리케이션에 정말 중요한지 별로 중요하지 않은지 그 시스템에 말해주는 거죠 WebView가 여러분의 애플리케이션에 아주 중요하다면 이 API를 꼭 봐야겠죠 오른쪽 버튼인 거 알고 계시죠? 네, 알아요 애니메이터, 특히 애니메이터세트를 위한 긴 요청된 기능이 몇 개 있습니다 실행하기 거짓말처럼 어려워서 시간이 좀 걸렸죠 하지만 Android O에서는 이제 애니메이터세트에서 찾기 능력이 생겼습니다 이제 아동 애니메이션 모음집인 애니메이터가 있다면 전체 애니메이터세트에서 아동 애니메이터를 찾을 수 있는 거죠 그렇습니다 이런 능력도 있습니다 뒤집기 쳇, 그 API 오래 전에 실행하려고 하지 않았나요? 글쎄요 마지막에 API를 실행한 사람은 누구죠? 전 아니죠 – 네 – 네 바로 그거죠 애니메이터세트에서의 새 기능은 뒤집기이죠 기능성을 가진 별도의 애니메이터를 설치해서 리스너를 받고 그럴 필요가 더는 없다는 거죠 저희가 모든 지루한 작업을 다 해드렸죠 자동완성이죠 반복해서 내용을 수정하는 건 정말 지루하죠 전에 키노트에서 봤죠 이런 기능인데 작성해야 할 폼이 있고 그 정보를 여러분에게 줄 수 있는 제공자가 있죠 따라서 그 문자 필드를 받으면 여러분의 위해 저희가 자동으로 그 정보를 입력할 수 있죠 이에 대한 다른 측면도 몇 개 있습니다 하나는 여러분 각자의 서비스를 실행할 수 있는 능력을 드리거나 저희가 대신 제공하는 서비스에 의존할 수 있다는 점이죠 혹은 좀 더 전형적으로 클라이언트를 실행할 겁니다 표준 뷰만으로도 되죠 텍스트뷰나 에딧뷰를 사용한다면 서비스와 상호작용하기 위해 이 정보를 어떻게 받을지 저희는 이미 알죠 따라서 표준 뷰를 위해 아무것도 안 해도 됩니다 맞춤형 뷰를 쓰시거나 표준 뷰에 대해 더 많은 정보를 제공하고 싶으시면 저희한테 힌트를 주는 API가 있죠 밸류 타입이 뭔지 API가 저희에게 여러분의 맞춤 뷰에 대해 또 여러분이 어떻게 상호작용하고 싶어하는지 더 얘기해주죠 또한 맞춤 뷰 위계가 있다면 내부 뷰가 있는 표면 뷰가 있지만 저희가 아는 건 표면 뷰가 있다는 게 다라고 가정하면 API가 저희에게 여러분이 저희와 상호작용하고 싶어하는 가상 위계에 대해 말해 주는 거죠 금요일 오전 세션에 이에 대해 더 많은 내용을 다룰테니 자동완성에 대해 더 알고 싶으시면 참석해 주세요 이제 텍스트에 대해 좀 이야기해 보죠 이번엔 텍스트 쪽에서 많은 일이 일어났죠 다시 적어도 될 것 같아요 됐죠 이 폰트는 오로지 덴에게 상처주려고 쓴 겁니다 신체적으로 괴롭히거든요 멋지죠 덴을 망친 것 같아요 좋습니다, 먼저 폰트 정보를 디클레어하기 위해 XML을 사용할 수 있죠 멋진 데이터 바인딩으로 말이죠 하지만 좀 까다롭습니다 그리고 이 기능을 제공해야 하는 이유가 굳이 있을까요? 지금은 있죠 이제 폰트 파일을 이 새 리소스 폰트 디렉토리에 직접 넣을 수 있는 겁니다 정말 멋지죠 디렉토리에 넣거나 저희한테 폰트 페밀리에 대해 말해주면 됩니다 각각의 스타일에 대한 정보로 여러 폰트를 제공할 수 있고 다른 리소스와 마찬가지로 폰트를 바로 사용할 수 있게 되죠 코드에서 그냥 그 리소스를 달라고 하면 되는 겁니다 다운로드 가능한 폰트죠 이제 폰트를 디클레어할 수 있는 기능이 있으니 이제 아직 없다면 저희가 여러분을 위해 시스템에 다운 받아 캐시할 수 있는 거죠 혹은 시스템에 있다면 캐시에서 사용하겠죠 코드나 XML에서 하실 수 있고 신나는 이전 슬라이드에서 XML 폰트로 한 것처럼 리소스로 사용하시면 되죠 아직 출시되지 않은 버전의 Gooogle Play 서비스에서 폰트 제공자도 제공할 겁니다 이번 주 학회에서 베타 버전을 이용하실 수 있죠 자세한 건 모르지만 자세히 배우실 수 있는 세션도 있고 아니면 Play 서비스 웹사이트에서 더 자세히 배우실 수 있을 겁니다 이는 모든 Google 폰트을 이용할 수 있게 해줍니다 표준 폰트를 사용하고 싶으시면 예컨대 제가 이 섹션 시작 때 사용한 아름다운 폰트 같은 거죠 그것도 아마 거기 있을 겁니다 서비스에서 바로 물어보시면 됩니다 또한 자동 사이즈 변환 텍스트뷰 기능도 있습니다 보통 텍스트뷰의 사이즈를 조정하면 뭐가 성공할지 정말 아무도 모르죠, 그렇죠? 텍스트 텍스트는 멋집니다, 특히 적당한 폰트가 있을 때 말이죠 이제 좌측에서의 행동이 나타나죠 뷰 자체의 크기를 조정하는 거죠 폰트에는 변화가 없습니다 그러나 우측에는 자동 크기 변경 텍스트뷰 행동을 선택하셨다면 여러분을 위해 폰트 크기를 조절할 겁니다 쓰고 싶은 행동이나 증가 단계나 크기가 조정될 때 원하는 특정 크기에서 멈출 수 있도록 구체적으로 정할 수 있습니다 이를 위한 API가 있죠 XML과 자바 프로그래밍 언어 코드 모두에 API가 있으니 마음대로 하시면 되죠 또한 이 모든 텍스트 기능 즉 XML 폰트, 다운 가능한 폰트 자동 크기 변경 텍스트뷰는 지원 라이브러리의 새 기능 관련 세션에서 내일 아침 모두 얘기할 겁니다 그럼 여러분들은 왜 지원 라이브러리 세션에서 이런 말을 할까 궁금하시겠죠? 이건 O 플랫폼 API 아닌가요? 맞습니다 또한 지원 라이브러리에도 있습니다 이 모든 기능을 이전에 출시된 버전에서도 모두 사용할 수 있는 거죠 접근성서비스 유틸리티 접근성서비스에서 쓰고 있다면 유용한 일이죠 여러분이 사용할 수 있는 새 기능들이 있습니다 언어 탐지는 접근을 더 쉽게 만드는 다른 버튼과 함께 내비게이션 바에 버튼을 두는 기능이죠 접근성 음량을 위한 별도의 음량 조절도 있죠 기기의 다른 음량과 섞이지 않도록 합니다 또한 맞춤형 지문 제스쳐를 정의하는 기능도 있죠 이에 대해 더 알고 싶으시면 오늘 오후에 접근성 관련 세션이 있으니 확인하시기 바랍니다 마지막으로 제가 가장 좋아하는 작은 변화는 제가 작다고 말한 건 API를 위한 코드 한 줄이기 때문이지만 이전 실행에 의존하는 모든 코드를 고치려는 실제 cl은 엄청납니다 그 중요성을 손상시키고 싶진 않습니다 하지만 API 측면에서는 정말 작고 숨겨졌죠 밖에서 보면 거의 같아 보입니다 findViewById는 이렇게 드클레어 됐었죠 퍼블릭뷰, findViewById 등으로 말이죠 그러고 나서 그걸 부르고 리소스 ID를 넘겨서 뷰를 가지고 나면 바로 원하는 것으로 캐스트되는 거죠 따라서 텍스트뷰에 이를 말해야 합니다 좌측 우측 모두에서 말이죠 그리고 괄호가 있고 좀 귀찮죠 이게 보기 너무 흉하다는 이유만으로 사람들은 헬퍼 라이브러리를 씁니다 이제 이게 생겼죠 전 이 기능을 캐스트어웨이라고 부릅니다 제 생각에 저만 그런 것 같지만요 제 첫 장을 그냥 저렇게 넘기죠 괜찮아요 여러분이 보시게 될 시스템 UI에 대해 조금 얘기해 보겠습니다 앱이 있으시면 어댑티브 아이콘을 아셔야겠죠 오늘 좀 전에 있었던 스테파니의 슬라이드에서 아주 잠깐 언급된 것 같습니다 근본적으로 저희는 여러분의 시간과 돈을 절약하려는 거죠 요즘 론처가 정말 많고 그 각각은 아이콘 모양에 대해 다른 제안을 합니다 따라서 어댑티브 아이콘은 여러분이 O에서 이렇게 할 수 있도록 하는 새로운 기술이죠 여기 내 배경이 있고 전경이 있으니 원하는 모양으로 잘라내라고 말이죠 따라서 론처가 동그라미나 둥근 사각형이나 흉한 모양이더라도 지역색을 정확히 맞춘 아이콘이 생기는 겁니다 어댑티브 아이콘에 대한 정보가 목요일 발표에 많을 겁니다 꼭 가 보세요 그럼 쇼트컷과 위젯에 대해 얘기해 보죠 론처 또한 시스템 UI의 일부이기 때문이죠 이전에 사용자 화면에서 쇼트컷과 위젯으로 가려면 작동되는 쇼트컷에 대한 알림이 있었고 위젯의 경우 사용자에게 사정해야 했죠 론처 내에서 위젯을 찾을 수 있는지 말이죠 O에서는 이제 이러한 것들이 사용자 작업공간에 고정되도록 요청할 수 있습니다 쇼트컷은 쇼트컷 매니저를 통해 위젯은 앱 위젯 매니저를 통해서 말이죠 그러면 사용자는 이럴 수 있는 기회가 생기죠 내 데스크탑에 그건 싫어 혹은 그래, 좋아 또한 사실 원하는 곳에 정확히 넣을 수도 있습니다 물론 그냥 위치 선정해 줘 해도 되죠 이는 이전 행동이었죠 이제 긴 플로를 사용자에게 설명할 필요 없습니다 이 대화로 바로 보내면 되는 거죠 정말 편리하죠 여러분의 위젯을 사용할 모든 새로운 사용자를 생각해 보세요 실제로는 여기 클릭커로 고생할 때 박수를 위해 잠시 중단하는 척 할 수 있죠 목요일 4:30분에 이 모든 것에 대해 이야기할 겁니다 다음은 예상하셨겠지만 알림이죠 정말 유용합니다 집중도를 위해 좋죠 사용자도 좋아합니다 약간 통제불능일 수도 있죠 지금 알림 스트림에서 사용되는 것이 아주 많고 원하는 메시지를 사용자에게 전달하기 아주 힘듭니다 사용자가 요구사항의 유입에 그들의 주의를 관리하기 상당히 여럽죠 이제 통제불능이지만 사용자는 항상 통제할 수 있어야죠 그것이 애초부터 저희의 원칙이었습니다 젤리 빈에서 패키지로부터의 알림을 차단하는 기능을 추가했습니다 또한 누가는 약간 정비해서 무음도 추가했죠 하지만 이 모든 것을 통해 사용자에게 가장 많이 받는 요청은 이겁니다 일부 앱의 알림만 차단할 수는 없나요? 반면 개발자로부터 가장 많이 받는 요청은 사용자가 제 알림의 일부만 차단할 수는 없나요? 하는 거죠 똑같은 겁니다 모두가 같은 걸 요구하고 있는 거죠 이때 알림 채널이 등장하는 거죠 O의 새로운 API로 채널은 모두 같은 행동을 공유하는 앱 하나의 지명된 알림 카테고리입니다 진동, 소리, 빛, 화면에 뜨던 사용자는 표면적이고 정교한 통제력을 가지는 거죠 앱에 있고 여러분은 각자의 채널을 모두 설정해야죠 O를 위한 기본값 행동을 정의하면 개인 메시지가 뜰 겁니다 태그는 아마 뜨지 않거나 더 낮은 우선순위를 가지겠죠 그러면 사용자가 알림을 길게 누르거나 새 슬라이드 제스쳐로 어느 채널에 있는지 볼 수 있고 바로 그 라인에서 바꿀 수 있습니다 일단 O를 겨냥하시면 2분 간의 저의 발표에서 이것만 기억해 주세요 모든 알림에 대한 채널을 사용하셔야 합니다 안 그럼 빠질 거예요 따라서 O를 겨냥하실 때까지 천천히 알림 시스템을 채널로 진화시키기 시작하세요 O를 겨냥하신다면 모두 채널화되어야 합니다 사용자가 자신이 뭘 얻게 될지 아는 것에 대해 일관된 경험을 제공하려고 노력 중이니 말이죠 그리고 저희는 이 내용과 다른 많은 멋진 내용 디디자인 고려와 여기 넣지 못한 모든 코드, 또 저기 깜빡거리는 작은 것 등을 내일 4:30에 발표하겠습니다 시스템 UI에 멋진 것들이 많이 추가됩니다 여기 그 중 일부의 목록이 있죠 또 다 적지 못했죠 전 슬라이드에 저러는 거 좋아해요 개발자 미리보기를 확인하시거나 베타를 설치해서 이용해 보는 것을 적극 권장하고 싶습니다 정말 뿌듯합니다 미국 개발자를 위한 새로운 API는 분명 모두 디버깅에서 사용하시는 스트릭트 모드 API를 확장시켰습니다 따라서 이제 스레드팔러시에서 버퍼되지 않은 I/O를 사용할 때 경고를 받을 수 있죠 버퍼된 스트림으로 쌓여지지 않은 인풋 혹은 아웃풋 스트림을 사용하면 플레시 같은 여러분이 설정한 경고를 유발할 겁니다 Vm팔러시에서는 소켓을 태그하지 않으면 경고를 받을 수 있죠 소켓을 태그하는 건 Android 스튜디오를 사용한 디버깅을 트래픽할 때 정말 유용하죠 마지막으로 또 다른 인텐트를 열 때 여러분의 앱 밖으로 인텐트를 보내고 허락을 줘야 할 때도 경고를 받을 수 있죠 사용하기 쉽습니다 이전 API와 비슷하죠 미디어 파일 에세스 오래 전 문서 제공자를 소개했었죠 두 버전 전이었고 정말 유용했습니다 큰 문서의 경우를 제외하면 말이죠 큰 문서가 있으면 그 문서 제공자의 사용자에게 넘기기 전 데이터 전체를 다운로드 받아야 했죠 이제 찾을 수 있는 파일 설명어를 만들 수 있습니다 오디오, 비디오 혹은 어떠한 큰 유형의 콘텐츠에도 정말 유용하죠 또한 사용하기도 정말 쉽습니다 따라서 저장매니저로 가서 프록시 파일 설명어를 열고 콜백을 주면 문서의 크기를 요청하는 콜백을 유발하게 되겠죠 바이트 열에 데이터 양을 요구하면 저희가 언제 닫을 건지 말해 드릴 겁니다 캐시된 데이터 이는 새 API로 여러분을 더 나은 시민으로 만들어주는 시스템입니다 각 앱은 캐시 파티션에서 사용할 수 있는 특정한 한도가 있죠 시스템에 저장 용량이 부족해지면 캐시 데이터의 일부를 삭제하기 시작할 겁니다 따라서 주어진 한도 이하에 머무르면 데이터가 삭제되는 것을 피할 수 있겠죠 이를 위해 저장매니저를 사용하시면 됩니다 여러분 앱에 할당된 바이트 수를 쿼리할 수 있죠 가끔 쿼리하셔야 합니다 여러분이 사용하는 양에 따라 그 한도가 바뀔 수 있기 때문이죠 혹은 사용자가 얼마나 자주 그 앱을 사용하는가에 따라 말이죠 그런 후 데이터를 할당하고 싶을 때 바이트할당하기를 사용하면 되죠 스스로 하실 수 있죠 그냥 파일, 아웃풋 스트림을 만드셔도 되겠죠 하지만 이 방법이 훨씬 낫습니다 필요할 때 바이트할당하기를 쓰시면 시스템이 여러분의 데이터 공간을 위해 다른 앱의 캐시 데이터를 삭제하기 때문이죠 따라서 getCacheQuotaBytes는 기기에 남아있는 여유 공간보다 더 클 수도 있습니다 setCacheBehavior Tombstone를 사용하실 수도 있죠 여러분의 앱이 캐시된 적 없는 파일과 캐시됐지만 지워진 파일 사이의 차이를 구분할 수 있도록 하는 데에 유용하죠 따라서 그 행동을 설정하고 시스템이 캐시에서 일부 파일을 삭제한다면 그 파일을 잘라낼 겁니다 따라서 그 파일은 여전히 있지만 크기가 0으로 설정되죠 이는 시스템이 그 캐시를 삭제했다고 말해주는 겁니다 마지막으로 사용 가능 공간과 할당 가능 공간은 다릅니다 이번 출시에서 Android 안전에 많은 일이 일어나죠 시간이 조금 밖에 없지만 Android O에 새로 나온 개인 정보 보호 정책 일부를 언급하겠습니다 Android ID를 사용해 오셨다면 이제는 모든 앱과 모든 사용자에 대해 달라질 것이라는 걸 아셔야 합니다 더는 같은 기기에서 앱 사이에 사용자를 추적하기 위해 사용될 수 없죠 유사하게 nethostname을 얻기 위해 시스템 속성을 봐 왔다면 지금은 비어있습니다 따라서 맥락에 맞는 광고를 사용자에게 보낼 수 있기 위해 광고 ID가 필요할 경우 Google Play 서비스에서 광고 ID API를 사용하시면 됩니다 Google Play에서 확인해 보세요 하지만 Android ID는 사용할 수 없습니다 더는 지금까지 하신 것처럼 신뢰하시면 안 됩니다 여기 웹뷰에 대한 슬라이드가 있었는데 로맨이 치웠죠 웹뷰에서의 안전한 브라우징에 대해 하나 더 말씀드리고 싶은 것은 이제 웹뷰가 6달마다 Play 스토어로 푸쉬되기 때문에 롤리팝까지 거슬러 올라가는 안전한 브라우징 기능을 선택할 수 있을 겁니다 아주 멋진 기능이죠 또한 키노트 때 밝혀졌죠 Google Play 보호라고 부르는 것으로 이전에 가지고 있던 많은 기술이지만 보여드리지 못했던 겁니다 정말 그럴 가치가 있죠 저희가 항상 사람들을 지켜주기 때문이죠 따라서 Google Play가 있는 어떠한 기기도 보호를 켤 수 있습니다 Play로 업로드되는 모든 앱은 미리 검열되고 업로드되는 새 버전마다 다시 검열됩니다 또한 앱을 설치할 때마다 Play 보호가 설정되어 있으면 그 앱 또한 검열될 겁니다 다른 스토어나 ADB 설치에서 가져온 것이라도 말이죠 정말 신나는 일이죠 할 말이 더 많습니다 Android 안전에 대해서 말이죠 슬라이드 더미를 저한테 주더군요 그래서 따로 발표하지 그래? 했죠 실제로 그렇게 말하진 않았죠 발표 따로 있거든요 목요일 2:30에 Android 안전의 새 기능을 알게 될 겁니다 커널에서부터 웹뷰에 대한 더 많은 사항까지 모두 말이죠 언어와 런타임 제가 할 말을 이미 아실 것 같습니다 오늘 아침 코틀린에 대한 공식적인 지원을 발표했죠 무대에서 스테파니를 보셨을 겁니다 여기 통로에 보이네요 I/O에서 스테파니를 보시면 감사 인사해 주세요 스테파니와 팀 전체가 과거에 정말 멋진 일을 해냈죠 얼마의 시간이 걸리든 해냈습니다 그러니 감사를 전해주세요 여러분의 감사를 팀 전체에게 전해줄 겁니다 오늘 Android 30에서 이용 가능하죠 이미 온라인에 문서가 많습니다 전 코틀린에 대해 몇 시간 얘기할 수도 있어요 왜 여러분과 저희에게 좋은지 말이죠 – 제가 잠시 말해도 될까요? – 되죠 사실 이 사람 정말 잘 해요 정말 그렇죠 하지만 아쉽게도 이 세션에 시간이 얼마 없어요 따라서 대신 금요일 10:30분 이 무대로 여러분을 초대하겠습니다 코틀린 입문이라는 발표가 있죠 젯브레인스의 언어 디자인 팀장 안드레이 브레스레브와 개발자 변호 부사장 하이디가 발표할 겁니다 그러고 나서 제 4무대에서 오후에 인생은 즐겁고 모든 것이 잘될 거야 코틀린이 있어라는 발표를 핀터레스트의 크리스티나 리와 스퀘어의 잭 워톤이 할 겁니다 이건 저희한테 아주 중요합니다 코틀린을 소개한 온 이유는 여러분 커뮤니티가 사용하기 때문이죠 여러분의 말을 들었고 여러분이 원하는 걸 가져오는 겁니다 여러분 커뮤니티를 무대에 모시고 저희가 할 수 있는 것 이상으로 말하고 싶었죠 또한 질문이 있으시면 Android 플랫폼 부스의 개발자 샌드박스에 오시면 됩니다 오늘 3시에서 4:30까지 목요일 2시에서 4시까지 그리고 금요일은 12시에서 2시까지입니다 언어 디자이너이인 앤드레이가 모든 질문에 답해 줄 겁니다 코틀린에 대해 궁금한 점 있으시면 꼭 오세요 가서 그냥 질문하세요 이제 스테파니가 말했듯 다른 프로그래밍 언어 또한 강화하고 있습니다, 자바스크립트나 C와 C++도 있죠 자바 프로그래밍 언어의 경우 Android O에 새 패키지를 추가합니다 javatime이 마침내 시간과 날짜를 쉽게 조정할 수 있게 됩니다 말이 되죠 더 오래 된 API보다 더 이해 갑니다 그럴 때가 됐죠 네, 그렇죠 javanio

file도 선보입니다 좋은 옛날 javaiofile API를 향상시키죠 파일의 속성에 접근할 수 있게 해 주죠 경로를 쉽게 조정하고 파일을 읽을 수 있게 합니다 예시를 보겠습니다 마지막으로 javalanginvoke는 약간 변형한 것으로 대략적 추정이지만 멋집니다 애플리케이션에서 방법 핸들을 변형하고 랩하게 해줍니다 새 파일 API에 대한 예시를 보죠 경로를 얻기 위해 경로 클래스를 사용할 수 있죠 그러고 나서 그냥 files

lines를 불러오면 되죠 파일의 콘텐츠 전체를 읽을 겁니다 스트림이 있겠죠 이 예시에서 전 모든 빈 라인 즉 파운드 사인으로 시작하는 모든 라인을 지우기 위해 람바다와 스트림 API를 사용하고 그런 후 마지막에 하나의 스트림으로 모든 것을 가져오죠 따라서 이전보다 훨씬 쉽습니다 런타임에서의 변화를 보시죠 오늘 아침에 일부는 들으셨을 겁니다 이번 주에 또 더 있습니다 새로운 병행 복사 콜렉터는 모든 것을 빠르고 더 괜찮게 만들어 줍니다 병행 복사란 멈추는 시간이 없다는 거죠 전체 GC의 경우만 빼고 말이죠 따라서 다른 걸 하는 동안 배경에서 해야 했던 온갖 작업을 할 수 있는 거죠 특히 정말 멋진 작업은 전경에서 히프를 실제로 압축할 수 있다는 점입니다 제 생각에 이전 버전에서 히프를 압축하는 기능은 있었죠 조각모음도 하고 히프를 더 작게 만들 수 있으며 할당과 콜렉션을 더 빠르게 할 수 있지만 활동이 배경인 경우에만 가능한 일이었죠 따라서 쉬는 상태로 들어가고 그 상태에서 일을 하겠죠 하지만 전경에 있을 때는 히프를 확장하거나 조각내는 일은 할 수 없었죠 이이제 전경에서도 모을 수 있고 전경에서 조각모음도 할 수 있고 모든 게 빨라졌죠 할당을 위한 더 빠른 새 메커니즘도 있습니다 그냥 포인터 할당으로 갈 수 있습니다 훨씬 빠르죠 콜렉션이 더 빠르고 이 모든 것은 여러분이 할 일을 줄여주게 되는 거죠 더 빨리 할당하고 더 빨리 수집하는 건 전반적으로 쓸모 없는 것과 메모리를 다루는 것이 O 출시에서 ART를 사용해 더 빨라졌다는 뜻이죠 다양한 최적화, 루프 언롤링 인라이닝이 있죠 또 하나 언급하고 싶은 건 달빅은 메모리 형태의 제한으로 만들어졌다는 거죠 달빅은 모든 것이 메모리를 절약에 초점을 뒀고 최적화만 많이 할 수 있다는 의미겠죠 최적화를 위해 할 수 있는 건 이제 거의 끝에 다다랐습니다 ART가 온라인으로 됐을 때 앞으로의 최적화를 만들 수 있도록 하는 플랫폼에 넣었죠 O와 앞으로의 출시를 포함한 매 버전마다 생기는 이러한 혜택을 이제 수확하기 시작하는 겁니다 더 많이 할 수 있겠죠 이번 출시에서도 많습니다 이번 주 말에 더 많은 정보를 얻을 수 있는 세션을 참고하시기 바랍니다 DEX 지역성도 있습니다 이는 특히 활동을 위한 시작 시간을 향상시켜 줍니다 같은 공간에 있는 모든 메모리를 수집할 수 있기 때문이죠 여러분의 앱이 시작할 때 더 쉽고 더 빠르게 접근할 수 있죠 성능과 메모리 향상이라는 세션이 금요일 아침에 있습니다 더 자세한 사항은 그 세션을 참조하세요 플랫폼 이상으로 지원 라이브러리가 있죠 O 출시에 대한 것이 아닌 것을 전달하기 위한 다른 메커니즘도 있습니다 그중 일부를 보시죠 개발자 미리보기 2와 함께 나오는 v26 베타 출시가 있습니다 저희가 이미 언급한 것이죠 텍스트, 폰트, XML 다운 가능한 폰트 자동 크기 변경 텍스트 뷰 등이죠 모두 포함됩니다 확인해 보세요 게다가 이모지컴팻이라는 것도 있습니다 이모티콘에서의 큰 문제 중 하나가 여러분의 친구가 여러분이 실행하는 버전에서 출시된 것이 아닌 최근 기준에서 이모티콘을 보내려고 하면 여러분은 그 이모티콘을 못 본다는 거죠 대신 두부 조각을 보게 될 겁니다 제가 본 일부 이모티콘보다 매력적일 순 있어도 의미 있지는 않죠 그러니 여러분의 기기에 업데이트 된 이모티콘을 받을 수 있다면 좋지 않을까요? 앱이 업데이트된 이모티콘을 사용할 수 있는 메커니즘이 2개 있습니다 하나는 앱이 실제로 업데이트된 이모네콘과 합쳐질 수 있죠 앱을 Play 스토어에 업데이트해서 사용자에게 업데이트 하면 그 사용자는 이모티콘에 대한 더 시기적절한 업데이트를 받을 수 있죠 다른 것은 아마 장기적으로는 더 나은 해결책으로 조금 전에 말씀 드린 다운로드 가능한 폰트를 위해 제공하는 서비스를 사용하는 거죠 이건 다운로드 가능한 폰트를 통해 자동으로 업데이트된 폰트를 가져올 수 있는 거죠 따라서 이 앱은 저희가 서비스에 제공하면 업데이트된 이모티콘을 가질 수 있는 다운로드 가능한 폰트 기능을 사용하는 기능을 만들 수 있죠 더 자세히 알고 싶으시면 내일 오전 지원 라이브러리의 새 기능 발표에 가보세요 제가 아까 말씀 드린 애니메이터세트에서의 작은 부분 외에도 애니메이션도 많이 발전 했죠 이제 물리학 기초의 애니메이션 같은 것도 할 수 있습니다 이걸 애니메이션 형태로 보고 싶다면 근본적으로 속도를 통해 가동되는 애니메이션을 가질 기능이죠 지금까지 플랫폼에 있는 모든 애니메이션 기능은 지속 기간에 의해 가동되어 왔습니다 얼마나 오래 실행될지 말하는 거죠 하지만 많은 애니메이션은 속도가 중요합니다 특히 사용자, 상호작용에 의해 가동되는 애니메이션이라면 말이죠 화면에 뭔가를 끌고 와서 놔 줄 때 놔 줄 때의 속도가 끌고 와서 손가락으로 놔줄 때까까지의 속도와 같다면 좋지 않을까요? 던지기나 스크롤 같은 건 속도 기초의 애니메이션 시스템이 정말 필요합니다 애니메이터로 할 수 있지만 정말 지루하죠 수학이 필요하고 수학은 어렵죠 따라서 저희는 그 기능을 이 새 물리 애니메이션 시스템으로 만들었죠 더 자연스럽고 더 상호작용하며 더 방해 가능합니다 사용자 상호작용 모델과 작업할 목적에서 만들어 졌기 때문이죠 작은 데모를 보여드리죠 상단의 원을 끌고 가는 동안 다른 두 원은 근본적으로 여러분이 정의내리는 스프링을 통해 상단의 원에 연결되어 있죠 따라서 공간에서 따라다니는 겁니다 록스텝이 아니라 연결된 스프링인 거죠 상호작용과 이러한 스프링의 물리 기초 개념에서 즉각적으로 혜택을 받습니다 새로운 물리 기초 애니메이션에 대한 발표가 금요일 오후에 있습니다 더 알고 싶으시면 그 발표에 가세요 건축 컴포넌트 키노트에서 언급되었죠 저희는 가끔 Android 개발이 필요 이상으로 어렵다고 생각했습니다 따라서 한 걸음 물러나 이렇게 생각했죠 앱 개발자들을 위해 단순화하려면 어느 주요 문제를 다시 한번 살펴봐야 할까? 하고 말이죠 저희가 특별히 신경 써서 지금 당장 살펴 보거나 라이프사이클로 본 몇 가지가 있죠 활동이 언제든 죽을 수 있다는 사실은 받아드리기 힘들죠 화면을 돌리거나 배경에 가거나 뭐 그럴 때 말이죠 여러분이 정확히 어느 상태에 있는지 알아내는 건 지겨울 수 있죠 모든 앱 개발자가 해결해야 할 계속 진행되는 문제이죠 따라서 저희는 이를 더 쉽게 만들기 위해 다르게 접근했죠 또한 저희는 지속성도 살펴보았죠 이제 원래의 SQL을 이슈할 수 있고 그것이 시스템에서 오는 전부이죠 그 기능에서 만들 수 있는 새로운 방식이 있고 더 쉽고 강력하게 만들어 줍니다 이번 주에 다 말씀드릴 겁니다 건축 컴포넌트를 소개할 예정이니 오늘 오후에 오시기 바랍니다 사실 이 세션 바로 다음이죠 내일 아침엔 라이프사이클 문제와 저희가 이를 어떻게 해결했는가에 대한 발표가 있죠 지속성과 오프라인에 대한 발표도 있습니다 이 모든 것은 이미 이전 버전에서 시도할 수 있는 것이죠 확인해 보세요 개발자 분들의 삶을 더 쉽게 만들어주길 바랍니다 행동 변화도 좀 있고 그 중 일부는 다른 것보다 더 좋아하실 겁니다 배경 앱의 행동에 변화가 좀 있고 특히 위치에 대한 거죠 배경 앱으로 실행하신다면 대략적인 위치 정보만 얻게 되겠죠 이 모든 것은 더 어렵게 만드는 게 아니라 기기를 더 괜찮게 만드는 것이죠 모든 앱이 모든 기능을 동시에 가진다면 또 언제든 필요하거나 원하는 걸 할 수 있다면 근본적으로 배터리를 다 쓰게 될 겁니다 모두가 항상 너무 많은 일을 하기 때문이죠 따라서 저희는 어떤 앱이 실제로 언제 서비스가 필요한지 신중하려고 노력하고 있습니다 사용자의 경험을 더 좋게 하기 위해서 말이죠 여러분의 사용자를 위한 경험 역시 훨씬 더 낫겠죠 그중 하나는 장소인데 배경에 있을 때 대략적인 정보를 얻죠 다른 건 웨이크 록입니다 저희는 앱이 배경 상태로 들어가고 나서 캐시 상태로 들어가는 것이 흔하고 그떄 웨이크 록이 있을 거라는 걸 알았죠 그냥 그 웨이크 록을 유지하고 아주 오랫동안 잡고 있겠죠 그것이 정말 배터리를 소모합니다 이제는 캐시 상태로 들어간 직후 웨이크 록이 자동으로 풀려서 기기를 부적절한 상태로 들어어가지 않게 하는 거죠 실행에 대한 제한 또한 있습니다 배경에서 실행할 때 말이죠 얼러트 창에도 변화가 있습니다 특히 타입 애플리케이션 오버레이라는 새로운 유형의 창이 있습니다 O SDK를 겨냥하신다면 얼러트 창 기능을 가지길 원하실 때 꼭 써야 하는 창 유형입니다 초기 버전이라면 이건 분명 없었죠 이건 안 쓰실 겁니다 여러분이 어떤 창을 쓰시던 이러한 유형 애플리케이션 오버레이 창 밑에 레이어될 것임을 알아 두세요 이를 통해 더욱 명확히 정의된 레이어링 정책이 있기 때문이죠 오늘 오후 5시에 배경 체크와 다른 통찰이라는 발표에서 더 자세히 들으실 수 있습니다 자세히 알고 싶으시면 그 발표에 참석해 주세요 마지막으로 여기로 돌아오기로 약속했었죠 그랬죠 딱 하나 남았죠 그렇죠 이에 대해 이야기하려고 했는데 드럼롤 있어야 할 것 같지 않아요? 다리라도 때리는 게 어때요? 다리로 될까요? 네 좋네요 안타깝게도 무대에 시계를 보고 있습니다 O가 의미하는 건 뭐죠 이런 시간이 다 됐네요 감사합니다

Android Kotlin Tutorial: Using Logic Gate and Making Decision in Kotlin

튜토리얼에서 다른 Android 분기별로 다시 돌아 오신 것을 환영합니다 인도는 프로그래밍에서 결정을 내리는 법을 배울 것입니다

방은 단순히 우리의 논리와 같습니다 우리는 이것에 대해 생각할 것입니다 이걸 가져 오면 다른 일을 가져올 수 있습니다 프로그램을 통해 우리는이 비디오에서 그렇게 할 것입니다 완전히 다 그리고 우리는이 주석을 삭제할 것입니다

지금은 쓸모가 없다 우리가하려고하는 것은 단순히 숫자를 취하는 것이다 그보다 더 큰지 또는 이보다 작은 지 확인하십시오 그렇게해서 첫 번째 숫자를 인쇄하여 10이 될 것입니다 인쇄 챔피언 네 그냥 그 일을 인쇄 그래서 우리는 단지 프로그램을 단순화 할 수 있도록 10을 오른쪽으로 인쇄 할 것입니다

그렇다면 10을 10과 같다고 가정 해 봅시다 무엇을 인쇄할까요? 그냥 거기서 인쇄하는 것을 보도록하겠습니다 이렇게하면 좋습니다 우리가가는 것은 사실입니다 이는 진실한 해 10이라는 것을 의미합니다

이 10은 10과 같습니다 그래서 나는 10보다 큰 10을 가진 다른 것이 있다고 가정 해 봅시다 그래서 우리가 무엇을 보았는지 봅시다 내가 걱정할 것 같아 10이 10보다 큰 것 같아 아마 false 자신의 명령이 무슨 일이 일어나고 있는지 확인하는 명령이므로 커플이 있습니다 프로그래밍에서 배워야 할 논리는 1 위입니다

간단히 말해서 숫자 2보다 적습니다 이것은 순서에 있지 않습니다 마음에 순서대로 학습 할 필요가 없거나 우선 순위가 아닙니다 방법을 사용하면 리더 코일 번호가 필요할 때 어디서나 간단하게 사용할 수 있습니다 우리가 평등하다고 말할 수있는 것은 세 가지입니다

그 다음 무언가와 동등한 숫자를 사용하면 4라는 숫자가 4와 같고 이 느낌표는 말할 수 없다 그때는 표현할 수 없다 그때 그것은 우리가 할 수있는 단 하나에 의해 지켜 질 수 없습니다 5 번 무언가와 동등하지 않은 것을 사용하십시오 이것을 키보드의 Enter 키 가까이에서 찾으십시오

신발 열쇠를 누르고 Shift 키를 눌러야합니다 뒤로 슬래시 나는이 수직 또는 네 수직을 가져올 것 같아요 수직선이 두 번 추가되면 or을 의미하고 숫자 6을 말하고 두 개미 인 키보드에 지금 사용하는대로 가자 우리 프로그램에서 우리가 이것을 어떻게 사용할 수 있는지 시험해보십시오 우리가 결과를 거짓으로 보았을 뿐이니까 이제 크기를 늘리십시오

당신에게가는 것은 간단히 10을 5로 변경하는 것입니다 그래서 10을 변경하면됩니다 10 점 미만이므로 아마도 5 점이 적기 때문에 진실 일 것입니다 10 살이니까 가자 다시 시도해 보라

그래서 우리는 그것을 바로 잡았다 10 점 이상 5 점 이상 10 점이니 우리가 바라는 점을 보자 이제는 거짓 일 것입니다 그러면 15 세가되면 사실 당신은 모두가 그렇게 알고 있다는 것을 알고 있습니다 약간의 고급 설정을 염두에 두어 간단히 제거하려고합니다

먼저 우리는 이미이 두 가지를 이미 다뤘습니다 10 초 그래서 우리가 알고있는 세 번째 빛을 완료 한 세 번째 예로 가자 당신은 10이라는 것이 10이라는 사실은 사실입니다 그래서 우리는 단지 다음으로 이동할 수 있습니다

그래서 15는 10과 같지 않습니다 이렇게하면 15가되기 때문에 이것이 확실합니다 사실 인 시간과 같지 않아 이제 우리는 두 번째 것을 사용할 수 있습니다 우리는 두 가지 옵션이 필요하다는 것을 사용하기에 충분하다 그래서 15는 참과 같지 않거나 5보다 크거나 작습니다

따라서 이것은 가져올 것입니다 사실 둘 다 맞다는 것을 알고 있기 때문에 사실입니다 예, 2를 사용하는 것을 알고 있습니다 15와 10이 같지 않은 2 개의 논리가 필요합니다 5가 8보다 작 으면이 방법으로는 단 하나의 논리가 10과 같거나이 값이 0 일 때 참이어야합니다

진실한 것을 가져오고 그것을 시험해 보아라 ok는 사실 일 정도로 일어나고있다 게이트의 경우에는 필요한 데이터 중 하나에서 필요합니다 true이면 true이고 true이면 결과를 true로 인쇄하지만 the and gate의 경우에 그것은 진실이거나 틀릴 필요가있는 두 가지 모두가 필요했고 그렇지 않으면 항상 가을을 가져올 것이므로 그렇게 시도해보십시오 이걸 15로 바꾸면 15는 10과 같고 더 큽니다 80이 5보다 작 으면 3입니다

5가 8보다 작으므로이 점을 압니다 이 논리는 사실이지만이 것은 거짓이므로 어떤 결과가 나오는지 보겠습니다 그래서 결과를 언급 한 결과는 항상 false가 될 것입니다 이 결과와 게이트가 모두 필요하기 때문에 결과가 true 또는 false이어야합니다 그냥 15라고 말하면 15와 같습니다

이렇게하면 사실 둘 다 논리가 사실이기 때문에 사실 이니 그것이 사실이라면 그렇게 할 수 있습니다 안드로이드가 아닌 안드로이드를 사용하십시오 우리가 안드로이드 프로그래밍에서 중요한 Java C ++을 사용한다는 것은 알고 있습니다 우리가 볼 수있는 C ++의 가장 숙녀들에게이 논리 게이트를 사용할 수있는 동일한 메소드 이 논리를 사용해야하는 곳이 너무 많아서 아이디어를 얻었 으면 좋겠다 그리고 이것에 관한 어떤 종류의 질문이라도 있다면 나에게 알려줘

댓글 섹션에서이 동영상 아래에 있으므로이 동영상을 공유하게되기를 바랍니다 친구와 함께 내가 나중에 더 나은 분석을 얻게 될 것입니다 다음 달에보고 해 주셔서 감사 드리며 희망합니다 내 다음 비디오 평화에서 너를보고 싶어

#29 What are ListViews in Android | ListView animated explanation | Android ListView tutorial

안녕하세요, BackToCoding에 오신 것을 환영합니다 이 비디오를 더 잘 이해하기 위해 이전의 동영상 또는 전체 재생 목록을 아래 설명에서 확인하십시오

오늘 우리는 "ListViews" 이전 비디오에서 설명한 방법으로 앱을 구성 할 때 탐색 방법이 필요합니다 너의 활동 사이 이 상황에서 사용되는 일반적인 접근법은 다음과 같습니다 목록보기를 사용합니다 목록보기를 사용하면 그런 다음이 데이터를 사용하여 앱을 탐색 할 수 있습니다

예를 들어, 이전 자습서에서는 카테고리 활동을 커피 숍에서 판매하는 음료 목록을 표시합니다 액티비티는 다음과 같습니다 활동은 커피 숍에서 판매하는 모든 음료를 표시하는 목록보기를 사용합니다 특정 음료로 이동하려면 사용자는 음료 중 하나를 클릭하고 세부 정보 그 음료의 표시됩니다 목록보기를 사용하면 데이터를 탐색 할 때 사용할 수있는 수직 데이터 목록을 표시 할 수 있습니다 앱을 통해 우리는 레이아웃에리스트보기를 추가 할 것입니다

옵션 목록을 표시하고 나중에이를 사용하여 다른 옵션으로 이동합니다 활동 <ListView> 요소를 사용하여 레이아웃에 목록보기를 추가합니다 그런 다음 android : entries 속성을 사용하여 목록보기에 항목 배열을 추가합니다 그것을 문자열 배열로 설정합니다 그런 다음 문자열 배열이에 표시됩니다

리스트 뷰를 텍스트 뷰의리스트로서 지정합니다 다음은 레이아웃에 문자열의 배열로부터 값을 가져 오는리스트 뷰를 추가하는 방법입니다 라는 옵션 : 이전 자습서에서 이전에했던 것과 똑같은 방식으로 배열을 정의합니다 stringsxml에 다음과 같이 추가합니다 이렇게하면 음료수, 음식 및 상점의 세 가지 값으로 목록보기가 채워집니다

다음은 레이아웃 코드 전체입니다 우리는 수직 방향으로 선형 레이아웃을 사용하고 있습니다 그러면 Coffee Shop 로고 바로 아래에 목록보기가 표시됩니다 이 동영상의 내용은 다음 동영상에서 계속 다루고 있습니다 이 비디오를 시청 해 주셔서 감사합니다

이 동영상에 대해 마음에 드 십니다 정말 내가 당신에게 유용한 콘텐츠를 만들어 줄 동기를 부여합니다 또한 내 다른 동영상을 확인하는 것을 잊지 마세요 도움이 될 수 있습니다 그리고 마지막으로 구독하십시오

내 채널에