PallyCon Widevine 안드로이드 SDK 튜토리얼

[PallyCon Widevine 안드로이드 SDK 동영상 튜토리얼] 이 동영상은 안드로이드용 동영상 서비스 앱 개발자를 대상으로 하는 SDK 튜토리얼입니다 Widevine DRM으로 보호된 동영상을 재생하기위해 필요한 PallyCon Widevine Android SDK의 샘플 프로젝트 사용법을 설명합니다

우선 PallyCon 콘솔 사이트에서 다운받은 SDK 파일을 압축 해제합니다 SDK의 'Sample' 폴더에는 'Simple' 버전과 'Advanced' 버전의 샘플 프로젝트가 있습니다 이 동영상 튜토리얼에서는 SDK의 기본 기능을 간단하게 실행해 볼 수 있는 Simple 버전을 사용합니다 Android Studio를 실행해 Simple 프로젝트를 오픈합니다 Gradle 플러그인의 업데이트 알림 창이 표시되면, '이 프로젝트에 대해서는 알리지 않음'을 선택합니다

Simple 프로젝트는 MainActivityjava 소스에서 SDK 설정과 동영상 플레이어 처리를 모두 구현합니다 튜토리얼에서는 ExoPlayer 관련 기본 샘플 코드에 PallyCon DRM 콘텐츠 재생에 필요한 코드를 단계적으로 추가합니다 실제 다운로드 받으시는 SDK에는 튜토리얼 최종 단계에서 완성되는 전체 샘플 코드가 포함되어 있습니다 Simple 버전 샘플 프로젝트에서는 MainActivity

java 소스의 initializePlayer() 함수에서 모든 연동 작업이 구현됩니다 initializePlayer() 함수에 코드를 추가하기 전에, 먼저 Gradle 빌드 스크립트에서 Module:app 세팅을 확인합니다 샘플 프로젝트에는 PallyCon DRM 라이브러리와 ExoPlayer 라이브러리를 사용하기 위한 세팅이 적용되어 있습니다 실제 개발하실 서비스 앱에도 동일하게 라이브러리 빌드 세팅이 적용되어야 합니다 이제 다시 MainActivity

java 소스로 돌아가서 연동 구현을 해보겠습니다 initializePlayer() 함수에 적용되는 코드는 크게 세 가지 부분으로 이루어집니다 1단계에서는 PallyCon Widevine 라이브러리를 초기화하면서 각종 연동 설정값을 입력합니다 샘플 코드에는 기본적으로 데모용 사이트ID와 사이트키 정보가 입력되어 있습니다 실제 고객사의 서비스를 연동하기 위해서는 PallyCon 서비스 가입 후 콘솔 사이트에서 확인한 값들을 입력하셔야 합니다

PallyConEventListener는 Widevine DRM과 관련하여 발생하는 각종 이벤트를 처리하는 함수입니다 해당 이벤트 리스너 함수를 다음과 같이 MainActivity 소스에 추가합니다 2단계에서는 재생할 DRM 콘텐츠의 정보를 설정합니다 사이트 정보와 마찬가지로, 기본적으로 데모용 콘텐츠 정보가 샘플 코드에 적용되어 있습니다 데모 콘텐츠 외에 다른 콘텐츠를 테스트하려면 우선 패키져 연동을 통해 별도로 패키징된 콘텐츠가 준비되어야 합니다

별도의 콘텐츠 패키징 과정을 통해 준비된 DRM 콘텐츠 정보(DASH 스트림 URL)를 Uri로 입력합니다 CID는 패키징 작업 시 입력된 해당 콘텐츠의 고유 ID 값이며, PallyCon 콘솔 사이트의 패키징 이력 페이지에서 확인할 수 있습니다 userID는 동영상 서비스의 최종 사용자에 대하여 서비스 사이트가 관리하는 고유 ID 값입니다 콜백 페이지 또는 토큰과 같은 DRM 라이선스 연동을 통해 재생 권한이 주어진 사용자 ID를 입력합니다 그 외의 설정값들은 본 튜토리얼에서는 기본값 그대로 사용하겠습니다

마지막 3단계에서는 DRM 세션 매니저를 추가합니다 DRM 라이브러리의 createDrmSessionManager 함수를 호출하여 세션 매니저를 생성하며, 함수 인자는 2단계의 각종 설정값들로 입력합니다 해당 함수의 마지막 인자는 라이브 스트림 재생 시 사용되는 값으로, 샘플 영상과 같은 VOD 콘텐츠에 대해서는 false를 입력합니다 마지막으로 미디어소스 객체에 재생할 콘텐츠의 Uri를 입력합니다 여기까지 설정이 되었으면 앱을 빌드해 콘텐츠 재생을 확인해 보겠습니다

에뮬레이터에서는 DRM 콘텐츠 재생이 불가능하므로 실제 기기를 연결해 테스트를 진행해야 합니다 연결된 기기에서 샘플 앱을 실행하면, 소스 코드에 입력한 DRM 콘텐츠에 대한 라이선스 요청이 이루어진 후 콘텐츠가 재생됩니다 이상으로 PallyCon Widevine Android SDK에 대한 튜토리얼을 마치겠습니다 추가 정보는 영상 소개의 링크를 참고하시기 바랍니다

What’s New in Android 7.1

안녕하세요 저는 Android 개발 지지자 댄 갈핀입니다 저희가 오늘 Android 71의 시사평을 준비 해 왔습니다 몇 주 전에 저희가 Android 7

1의 개발자 시사평이 있을 거라고 떡밥을 던졌는데요 혹시 눈치 못 채셨을까 하는 말이지만 이제 시청하실 수 있습니다 이 시사평에는 다른 프로그램들과 다른 점들이 몇 가지 있습니다 71이 이미 픽셀에서 론칭했기 때문에 저희는 여러분께 처음으로 베타 품질로 넥서스 기기들을 이용해 개발업자 시사평을 보여드릴 예정입니다 이 평의 목적은 기기 특유의 문제들을 알아내는 것입니다 이 말은, 저희가 이미 새로운 API들을 API 레벨25로 마무리 지었고 구글 플레이에 새로운 API레벨을 겨냥한 앱들을 발표 가능하게 해 두었다는 것이지요 앱 개발이 되면 바로 업로드가 가능합니다 무엇이 새로워졌을까요? 우선, 안드로이드 71에는 몇 가지 런처 특유의 변화들이 있습니다 앱 내에서의 주요 조치들을 위해 단축 키에 고정, 동적 링크를 다 추가하실 수 있습니다 앱스 런쳐 아이콘을 길게 누르시면 앱 단축 키들이 뜨는데요 단축 키를 누르시면 관련 액션이 시작 됩니다 각 단축 키마다 다른 목적이 있고 그 목적에 따라 고유의 액션이나 작업을 실행하게 되는 것이지요 어떤 목적을 나타낼 수 있는 액션이라면 무엇이든 단축키를 생성하실 수 있습니다 목적의 예로는 새로운 문자 메세지 전송, 예약 비디오 재생, 게임 진행, 지도 보기 위치, 등이 있습니다 새로운 단축 키를 생성하는 방법으로는 APK안의 지원 파일에 앱을 더하는 정적인 방법이 있고 실시간으로 추가하는 동적인 방법도 있습니다 정적인 단축 키들은 일반 동작에 적합하고 동적인 단축 기들은 사용자들의 기호, 행동, 위치 등에 따른 액션들을 강조 해줍니다 각 앱당 다섯가지의 단축 키를 제공하실 수 있습니다 앱에 단축키들을 더하신 후에는 지원하는 모든 런쳐에서 사용 가능하십니다 픽셀 기기들의 기본 런쳐인 픽셀 런쳐나 넥서스 기기들의 기본 런쳐인 나우 런쳐 등 다른 지원하는 런쳐에서 사용이 가능합니다 어떤 앱 에서든 단축 키 생성이 가능하며 어떤 런쳐에든 단축기에 대한 지원을 추가하실 수 있습니다 안드로이드 71은 단축키 등록이 가능한 API를 제공하고 등록된 단축키를 읽을 수 있는 런쳐도 제공합니다 둥근 아이콘을 지원하는 기기에서는 둥근 아이콘이 사용되고 있습니다 자동적으로 말이지요 런처가 앱 아이콘을 요청 했을때 프레임워크는 장치 구성에 따라 안드로이드:아이콘 이나 안드로이드:둥근 아이콘으로 돌아갑니다 이미지 애샛 스튜디오를 사용하셔서 둥근 아이콘을 디자인 하실 수 있습니다 그 후에 구글 픽셀 기기로 테스트 해 보시거나 안드로이드 에뮬레이터와 API 레벨 25를 겨냥한 구글 API의 에뮬레이터의 시스템 이미지를 실행해 보시면 됩니다 런쳐와 관련된 사항으로는 라이브 배경화면의 메타 데이터가 강화되었다는 것입니다 현재 메타 데이터의 속성인 레이블, 설명, 그리고 작가 외에도 URL이나 제목 속성이 추가되어 사용자들이 그 배경화면에 대한 더 많은 정보를 얻을 수 있게 되었습니다 이것은 라이브 배경을 고르는 사용자들에게 더 풍부한 경험을 제공 해 줄 수 있습니다 71의 또 다른 특징은 스티커나 다른 풍성한 컨텐츠들이 입력 방법 에디터나 IME라고 알려진 소프트 키보드를 통해 사용 가능 하다는 것입니다 7

1 SDK는 커밋 컨텐츠 API를 포함합니다 이것은 세계적으로 통용된 이미지 전송 방법을 제공하고 IME에서 다양한 컨텐츠들을 직접적으로 앱의 텍스트 에디터에 제공 하고 있습니다 API 아이는 수정된 25버전의 V13 지원 라이브러리에서도 이용하실 수 있습니다 이 API를 사용하시면 어떠한 키보드의 풍성한 컨텐츠들이라도 모두 사용 할 수 있는 앱을 만드실 수 있습니다 어떤 앱에도 다양한 컨텐츠를 제공 할 수 있는 키보드도요 71에는 활용하실 수 있는 좋은 점들이 두 가지 더 있습니다 그 중 한가지는 스토리지 매니저 인텐트 입니다 앱들은 이제 스토리지를 관리 인텐트 액션을 통해 사용자들을 시스템 공간 확보 스크린으로 안내 할 수 있습니다 당신의 앱의 용량이 장치에서 사용 가능한 용량보다 클 경우 유용하지요 사용자들이 이 인텐트를 통해 불필요한 앱들이나 켄텐츠들을 삭제하고 공간을 확보 할 수 있게 되었습니다 한 가지 더, 데모 유저로써 디바이스가 작동하고 있는지도 확인하실 수 있습니다 사용자 매니저를 사용하는 것이 데모 유저 방법입니다 이것은 여러분의 앱이 잠재 고객들의 체험을 원하는 대로 정할 수 있게 해 줍니다 데모 유저로 사용하시는 동안 앱은 사용자에게 더 많은 도움을 주고 제품에 대해 더 상세하게 설명 하게 해 줄 수 있습니다 71에는 더 많은 특징들이 있습니다 예를 들어 '인어디블' 이라는 안드로이드 웨어를 지원하는 것과 중요한 전화 통신 방법들이 있지요 자세한 사항은 developerandroidcom의 안드로이드 7

1 페이지를 확인 해 주세요 이미 안드로이드 베타 프로그램에 등록 되어 있으시다면 등록된 기기가 바로 안드로이드 71 개발자 업데이트를 실행 할 것입니다 아무것도 하실 필요 없습니다 아직 안드로이드 베타에 등록 되어 있지 않으시다면 장 쉬운 방법은 Androidcom/beta에 방문하셔서 안드로이드나 태블릿으로 참여하시는 것입니다 곧 업데이트가 될 것이고 앞으로도 무선 업그레이드가 가능하실 겁니다 등록된 기기로 업데이트를 받고 싶지 않으시다면 안드로이드 베타를 방문하셔서 등록을 해제하시면 됩니다 빠른 수동 업데이트도 가능합니다 12월달에 있을 소비자 공개까지 피드백은 언제나 대 환영입니다 이 비디오에 관한 것이나 개발자 선공개 커뮤니티나 안드로이드 베타 커뮤니티에 대한 것도요 더 많은 안드로이드 개발자들의 영상

Turn off ‘USB Debugging’ option in your Android Device. (여러분의 안드로이드 기기에서 ‘USB 디버깅’옵션을 꺼주세요.)

안드로이드 기기를 작은 장치에 연결해보겠습니다 무슨 일이죠?! 조작도 없이 가짜 악성 앱이 설치되고 실행되었습니다!!!! 어떻게 동작하는 것일까요?? 이 기기에는 'USB 디버깅' 옵션이 활성화되어있습니다

USB 디버깅 옵션은 개발을 지원하기위해 만들어졌습니다 이 옵션은 테스트 앱 설치와 디버깅을 쉽게 해줍니다 이 옵션이 활성화되어있으면, PC의 악성소프트웨어도 이 옵션을 사용할 수 있습니다 그래서 악성소프트웨어는 악성앱을 아무메세지없이 연결된 안드로이드 기기에 설치할 수 있습니다

왜 이 옵션이 활성화되었을까요? 비활성화가 기본값이지만, 여러분이 여러분의 기기를 루팅하려고 했거나, 또는 몇몇 앱이 요구해서 여러분이 활성화했거나, 또는 여러분은 개발자일겁니다 라즈베리파이같은 작은 장치들도 안드로이드기기에 앱을 설치할 수 있습니다 그래서 이 기법은 공공충전기나 작은 가게에 적용될 수 있습니다 안드로이드 42

2는 알 수 없는 PC의 접근을 막는 기능이 들어있지만 96%가 넘는 안드로이드 기기는 이전 버전을 탑재하고 있습니다 여러분이 알림바에 이 옵션에 대한 아이콘을 보셨다면 이 옵션이 활성화되어있는 것입니다 이 아이콘이 알림바에 있으면 알려지지않은 PC나 공공충전기에 연결하기 전에 여러분의 안드로이드기기에서 이 옵션을 끄세요 여러분의 개인정보를 지킬 수 있습니다 iOS 역시 유사한 문제가 있습니다

저는 iOS의 문제에 대한 기사를 보고 이것을 만들었습니다 하지만 안드로이드의 경우보다 여럽습니다 시청해주셔서 감사합니다

Android 2.2 Official Video

>> 우리는 안드로이드 22를 발표하게 된 것을 기쁘게 생각합니다

강조하고 싶은 네 가지 영역이 있습니다 이 비디오에서 Google은 Android의 전반적인 속도와 성능을 지속적으로 개선하기 위해 노력하고 있습니다 안드로이드 22에서 새로 선보인 Dalvik JIT 컴파일러는 2 ~ 5 개의 X 성능을 제공합니다 Android 2

1에 비해 CPU 바운드 코드가 향상되었습니다 이 데모 버전의 게임 복제본 섬, CPU가 게임 시뮬레이션 스레드를 유지할 수없는 경우 화면이 빨간색으로 변합니다 초당 30 프레임 이상 여기에서 JIT가있는 Android 22 기기는 게임 시뮬레이션을 유지합니다

프레임 속도는 35 이상이고 21 장치는 30 이하로 빠르게 내려갑니다 개발자는 Android Cloud to Device Messaging을 사용하여 간편하게 알림을 활성화하고, 전화로 전송하고, 양방향으로 전송할 수 있습니다 Apps 용 동기화 기능 이 API를 사용하면 App 서버가 인증 된 메시지를 Google 서버에 보내면 사용자의 기기에있는 앱으로 메시지가 전송됩니다 이 예에서 개발자는 Android Cloud to Device Messaging을 사용하여 URL을 사용하도록 설정했습니다

데스크톱 브라우저에서 추가 전화 번호 정보로 보내면 자동으로 푸시 페이지가 열립니다 Google지도에서 적절한 응용 프로그램 앱 백업 API를 사용하면 모든 앱에서 데이터는 백업 된 후 새 장치에 설치 될 때 복원됩니다 이 기능은 제어됩니다 사용자가 기기의 자동 복원 설정을 통해 Android 2

2를 사용하는 개발자 앱이 기기의 SD 카드에 설치되기를 원하는지 여부를 지정할 수 있습니다 에 거주하는 앱 SD 카드를 사용하면 사용자는 SD 카드에서 내부 저장 공간으로 앱을 이전 할 수 있습니다 응용 프로그램 설정 관리 Android 22는 전화를 사용할 수있는 기능을 제공합니다 휴대용 핫스팟

사용자는 휴대 전화에서 휴대용 핫스팟을 활성화 한 다음 컴퓨터를 휴대용 핫스팟에 연결하여 인터넷에 액세스하십시오 우리는 브라우저를 계속 만들고 있습니다 더 빠르고 더 안드로이드 22는 V8 자바 스크립트 엔진을 소개합니다

Android 21에 비해 JavaScript 렌더링 시간이 2 ~ 3 배 개선되었습니다 너는 볼 수있어 각각의 SunSpider JavaScript 벤치마킹의 병존 시각화의 차이점 시험 결과 Android 마켓에 몇 가지 새로운 기능을 도입했습니다 사용자는 권한이 변경되지 않는 한 앱 자동 업데이트

사용자는 모든 앱을 업데이트 할 수도 있습니다 클릭 한 번으로 변경되지 않은 권한으로 애플리케이션 오류 보고서는 개발자 앱이 사용자가 제출 한 보고서를 중단시키고 정지시킵니다 이 보고서를 사용할 수 있습니다 Android 마켓 게시자 계정을 통해 개발자에게 제공됩니다 Android에 대해 자세히 알아 보려면 2

2, 저희 웹 사이트 developerandroidcom을 방문하십시오

Origami Google Android (Gerwin Sturm)

Antoni가 번역 한 http://wwwyoutube

com/user/anto1234567891234567 작은 브랜드 만 반으로 접어 펼치십시오 가장자리에서 앞 단계의 표시까지 접어 펼치고 작은 표시를하십시오 그것은 지시 된 부분에 작은 표시를함으로써 가르침을 따라 두 배로 펼쳐집니다 교차점에 표시를하여 대각선을 접고 펼칩니다 시트 회전 가장자리에서 참조 점까지 접고 펼칩니다

그것은 당신이 이전에했던 접이식 부분에서 구부러지고 펼쳐집니다 그것은 당신이 이전에했던 접이식 부분에서 구부러지고 펼쳐집니다 그것은 당신이 이전에했던 접이식 부분에서 구부러지고 펼쳐집니다 시트 회전 같은 방식으로 5 개의 수평 부분으로 나눕니다 중앙 직사각형을 구부리지 마십시오

시트 회전 10 개의 직사각형으로 분할 중앙 직사각형을 접지 마십시오 시트 회전 절반으로 표시된 부분을 나눕니다 반으로 표시된 세그먼트 나누기 상단 세그먼트를 접히지 마십시오 상단 부분에 접어서 만드십시오 시트 회전 그림과 같이 대각선을 접으십시오 대각선을보다 쉽게 ​​만들기 위해 빨간색 선을 참조로 사용하십시오

이전 단계의 접기 축소 중앙 팁을 가라 앉히십시오 폴드 열기 표시된 폴드에서 "엘리아스 스트레치"를 사용하여 다시 닫습니다 오른쪽에서 반복하십시오 시트 회전 열기와 벤드 팁 그것을 닫으십시오 팁을 접으십시오

도움말 다시 열기 접기 이전에 만들어진 폴드 위로 이중으로 구부립니다 접은 부분을 접어서 반으로 접는다 상단 레이어를 접은 상태로 접으십시오 비슷한 방법으로 다음 레이어를 접을 수도 있지만 "Squash Fold" 오른쪽에서 반복하십시오 당신이 볼 수있는 작은 배를 만드십시오

접을 때 접어서 고정하십시오 팔 부분을 아래로 접으십시오 팔을 반으로 접어 라 어깨를 접어 안테나를 뒤집으십시오 반대편에서 반복하십시오

안테나 구부리기 및 모양 짓기 접힌 부분이 안쪽으로 둥글게됩니다 다리를 조정해라 Android 완료!

Teste – Hackeando qualquer Android – IP Externo [No-IP]

No-IP 다운로드 및 압축 해제 설치하기 전에 계정 만들기 호스트 이름 설정 설치하기 터미널을 통해 사용자 이름과 암호를 입력하십시오 엔터를 줘라

y를 입력하십시오 원하는 경우 이름을 지정하십시오 라우터 및 / 또는 모뎀을 입력하여 포트 열기 먼저 인터넷을 Kali로 가져가는 라우터의 문을 열어 보겠습니다 (VM을 사용하는 경우 브리지 모드로 두십시오) "게이트웨이"에는 내 모뎀의 IP가 표시됩니다 이제 라우터를 인터넷으로 연결하는 모뎀 모뎀을 열어 보겠습니다

모뎀은 라우터의 IP에 배치됩니다 이제 No-IP를 시작하십시오 이제 모든 것이 올바르게 설정되었는지 테스트하십시오 그런 다음 대상에 설치할 apk를 만듭니다 * 설명 링크 : Sign Apk을 다운로드하여 실행하여 만든 apk에 서명하고 Android의 새 버전에서 실행할 수 있습니다

apk 구독 신청 대상에 apk 설치 Metasploit 시작하기 네트워크 인터페이스의 IP 주소를 입력하십시오 명령 목록을 확인하는 데 도움을주십시오

How to make Android apps using Processing (Tutorial)

Processing을 사용하여 Android 앱을 만들고 싶습니까? 그것을 해보자! TEKGADG, TEK

GADG, TEKGADG! 그래서 당신은 궁금해 할 것입니다, 가공은 무엇이며 왜 우리는 그것을 안드로이드 애플 리케이션을 만드는데 사용합니까? 처리는 오픈 소스 프로그래밍 언어이며, 매우 간단하고 쉽게 선택할 수 있습니다 쪽으로 많은 아티스트가 프로그래밍 스케치 북처럼 그것을 사용하고 멋진 라이브러리가 많습니다 스케치를 많은 플랫폼에 출력 할 수 있습니다

모든 데스크탑 OS, 웹, 그리고 물론, 안드로이드 Android에서 코드 작성하는 방법을 알고 있다고해도 Processing은 유용한 프로토 타입 작성 도구가 될 수 있습니다 여러 플랫폼 시작하려면 Android SDK 도구를 다운로드 한 다음 처리해야합니다 휴대 전화에서 개발자 옵션과 USB 디버깅을 켜야합니다

그렇게하려면 '설정'-> '휴대 전화 정보'로 이동 한 다음 '빌드 번호'를 여러 번 누릅니다 개발자 옵션을 볼 수 있습니다 다시 설정에서 개발자 옵션으로 이동하십시오 USB 디버깅을 켜십시오 이제 Android 용 처리 문제가 있습니다

하지만 간단합니다 그것을 위해 고쳐라 기본적으로 처리중인 JDK 파일을 JDK 파일로 대체해야합니다 귀하의 컴퓨터에 jdk1

70_45를 사용하고 있습니다 이전 버전의을 다운로드해야 할 수도 있습니다 문제가 생기면 JDK OS X에서 문제를 해결하는 방법을 알려 드리겠습니다

단계는 Windows에서와 비슷해야합니다 잘 Mac에서는 처리 응용 프로그램을 찾은 다음 마우스 오른쪽 버튼으로 '패키지 내용 표시'를 클릭하고 그곳에는 Contents -> PlugIns -> JDK 폴더 -> Contents가 있습니다 PC에서는 이러한 폴더가 처리 아래에있는 프로그램 파일에 있어야합니다 그런 다음 컴퓨터에서 JDK 파일을 찾으려면 라이브러리 -> Java -> JavaVirutalMachines -> JDK 폴더 -> 목차

그리고 방금 연 두 폴더 사이에서 파일이 비슷하다는 것을 알 수 있습니다 너 컴퓨터의 내용을 처리 응용 프로그램 폴더로 복사하기 만하면됩니다 과 그게 해결책이야 Android SDK의 경우 방금 다운로드 한 파일의 압축을 풀어야합니다 들어가다 도구가 나타납니다

그 폴더에 들어가면 '안드로이드'가 있습니다 시작해 그것은 터미널에서 무언가를 열 것입니다 SDK 관리자를 여는 데 1 초가 걸립니다 열었 으면 필요한 도구와 Android 2

33 API 10을 다운로드하십시오 Processing은 Android 233을 사용합니다

즉, 233 및 위에서 가공 스케치를 실행할 수 있습니다 이제 모든 것을 설정 했으므로 화면에 서클을 그리기 만하면됩니다 시작하겠습니다

프로세싱 프로그래밍의 구조는 이해하기 쉽습니다 그것은 무효로 시작한다 setup () {}, 그리고 무효 draw () {} '설정'은 처음에 한 번 실행되므로 여기에서 당신은 사물을 초기화합니다 '그리기'는 모든 프레임에서이 경우 초당 30 회 실행되므로 그 곳에서 모든 프레임을 그릴 필요가있는 것들을 호출합니다

이 원을 그리려면 설정에서 크기 (600, 400)를 입력하십시오 그림으로 그려라 타원 (랜덤 (0, 폭), 랜덤 (0, 높이), 100, 100); 그런 다음 왼쪽 상단 모서리에서 실행을 클릭하십시오 내가보고있는 것을보고 있다면, 그것이 작동하고 있다는 것을 의미합니다 '크기'는 창의 크기, 타원 함수에는 기본적으로 네 가지가 있습니다

x 위치, y 위치, 타원의 너비 및 타원의 높이 그래서 지금 x- 위치를 0에서 0으로 랜덤 화하는 것입니다 화면의 너비, 0에서 화면 높이까지 y 위치를 무작위로 추출한 다음 원의 폭과 높이는 100입니다 그리고 이제 우리는 이것을 Android에 넣을 것입니다 그렇게하기 위해, 우리는 한 가지를 바꾸기를 원할 것입니다

휴대 전화에서 앱을 전체 화면으로 실행하려면 '크기'의 숫자를 displayWidth로 변경하고, 및 displayHeight 이 부분을 시작하려면 USB 디버깅이 활성화 된 상태에서 휴대 전화를 연결해야합니다 그런 다음 오른쪽 상단 모서리로 이동하여 Android를 선택한 다음 실행을 클릭합니다 그럼 너는 잠시 기다려야하지만 결국 스케치가 휴대 전화에서 실행됩니다 그리고 첫 번째 Android 앱이 출시되었습니다

그래서 거기에서 프로세싱 참조로 가서 어떤 유형의 스트로크와 드로잉 할 수있는 셰이프 및 드로잉하려는 모든 드로잉에 사용할 수있는 다른 메서드 데모 목적으로 Pong-2D와 3D의 두 가지 버전을 만들었습니다 나는 링크를 넣을거야 설명 영역의 코드에 추가하면 코드가 주석 처리되어 더 나은 결과를 얻을 수 있습니다 당신이 그것을 통해가는 동안 무슨 일이 일어나고 있는지 생각해보십시오 2D 버전의 Pong은 매우 직관적입니다

당신은 다른 것들에 반응하는 공을 가지고 있습니다 손가락으로 플레이어를 제어 할 수 있습니다 적에게 정말 간단한 AI가 있습니다 그리고 나서 Processing 용 Android Ketai 라이브러리를 사용하는 Pong의 3D 버전을 작성했습니다 카메라 제어를위한 가속도계 데이터를 얻습니다

그래서 저는 그것이 재미 있고 모두를위한 교육 이었기를 바랍니다 네가 생각하는 걸 내가 알게 해줘 코멘트 나를 좋아하고 구독 해주세요! 지켜봐 줘서 고마워

Getting Started with Test Lab for Android – Firecasts

Firecast에 관심을 가져 주셔서 감사합니다 저는 더그 스티븐슨입니다 Firebase Test Lab 이용해서 앱을 테스트하는 방법에 관해 간단히 훑어 보도록 하겠습니다 어플리케이션의 품질은 앱이나 비즈니스의 장기적인 성패에 영향을 주지요 심각한 문제가 있는 앱을 내놓으면 고치다가 돈과 시간을 허비하는 경우도 많습니다

문제가 많으면 사용자들이 삭제해 버리니 더 큰 문제죠 이런 문제를 해결하려면 안드로이드를 위한 Firebase Test Lab을 사용해서 수많은 기기에서 동시에 테스트하여 높은 품질을 유지하는 것이 좋습니다 Test Lab은 유용한 게 많습니다 그럼 Test Lab을 지금 시작해 보겠습니다 Firebase 콘솔에서 프로젝트를 만들어두었으니 그걸 사용하겠습니다 여기를 볼까요? 왼 편에서 Test Lab을 선택하면 Blaze 플랜으로 업그레이드하라고 메시지가 뜹니다 업그레이드 버튼을 누르면 선택항목이 나오는데 Blaze 플랜에 Test Lab이 있습니다 Blaze를 선택하면 실시간 데이터베이스, 파일 저장소 웹 호스팅에 대한 요금이 청구됩니다 문제네요 고작 첫 버전을 만들면서 SPARC 플랜으로도 충분한데 스토리지나 용량으로 돈을 내기는 싫거든요 그럼 방법이 있습니다 프로젝트에서 Test Lab을 사용하지 마시고 앱 개발에만 쓰는 거지요 Test Lab에 대해서만 지불하려면 테스트용으로만 쓸 완전히 새로운 프로젝트를 생성하세요 그 프로젝트를 Blaze 플랜으로 업그레이드하고 테스트에 대해서만 지불하면 됩니다 사실 Test Lab으로 테스트만 할 거라면 앱에 Firebase가 없어도 상관 없습니다 APK만 올리면 Test Lab에서 테스트를 수행하지요 청구서는 그 앱이 속한 프로젝트의 지불정보로 청구됩니다 그럼 새 프로젝트를 만들어서 업그레이드해요 우선, Firebase 콘솔 메인 스크린으로 가겠습니다 그리고 새 프로젝트를 생성합니다 뭘 하려는지를 잘 표현하는 이름을 붙이고 기본 국가는 그대로 놔둡니다 이제 이 프로젝트를 업그레이드합니다 Blaze 플랜을 선택하고 billing 설정으로 갑니다 촬영은 여기서 잠깐 중단 신용카드 정보가 나가면 안 되니까요 나머지는 여러분이 알아서 하시면 돼고요 다 끝나면 프로젝트가 Blaze 플랜에 있고 테스트가 가능하게 됐습니다 앱을 테스트하는데 돈이 어떻게 드는지 궁금하죠 신용카드 청구서를 보면 physical device hour 당 5달러가 청구됩니다 즉 다섯 개의 기기를 사용하고 각기 12분 정도 걸리는 작업을 하도록 했다면 총 1시간이 되며, 5달러입니다 기기를 6개로 하고 10분씩 돌렸다면 총 1시간으로 5달러입니다 계산도 쉽고 이해하기도 쉽습니다 그럼 간단한 테스트를 해 봐요 업그레이드된 프로젝트에서 Test Lab을 클릭하면 하고자 하는 테스트들을 선택할 수 있습니다 가장 쉬운 테스트는 Robo 테스트입니다 이것은 자동화된 인지 테스트로 코딩이 필요 없습니다 앱을 작동시키고 나서 보고서가 나옵니다 APK를 업로드하고 테스트할 설정만 선택하면 됩니다 Nexus7과 Nexus5를 선택해 보겠습니다 API 레벨21과 21이고 가로보기와 세로보기입니다 기본 로케일은 US English로 놓습니다 스크롤해서 내려가면 총 6개의 테스트라고 알려줍니다 이 버튼을 클릭하면 테스트할 앱이 Test Lab 내에서 내가 선택한 기기로 배포됩니다 그리고 잠시 후에 결과가 콘솔에 표시됩니다 여러분이 자신의 계기오차 테스트를 한다면 콘솔에서 여기로 가서 할 수 있습니다 앞서 말했듯이 수많은 APK를 테스트할 수 있어요 Firebase가 포함되지 않아도 테스트가 가능하고 여러 다른 앱을 같은 프로젝트에서 테스트할 수 있어요 또 하나 있네요 테스팅으로 지불하기가 싫을 경우 구글 플레이 디벨로퍼 콘솔에서 알파 혹은 베타 채널로 APK를 업로드하면 Firebase Test Lab을 사용할 수 있어요 구글 플래이에서 Pre-Launch Report 사용하기를 선택하세요 그럼 그 순간부터 두 채널로 올리는 APK에 대해 5분간 여러 기기에서 Robo 테스트를 받게 됩니다 무료입니다 테스트 결과는 잠시 후에 APK올렸던 채널에서 볼 수 있게 됩니다 여기까지입니다 Firebase 유튜브 채널을 구독하시면 Android Firebase Test Lab과 기타 Firebase 기능의 정보를 받으실 수 있습니다 질문이 있으시면 트위터 #askfirebase에 올리시거나 댓글로 남겨 주세요 저는 더그 스티븐슨입니다 시청해 주셔서 감사합니다 Firebase 테스트를 잘 활용해 보세요

How to Camera2 (Android Development Patterns S2 Ep 8)

고양이 팬케이크

팬케이크를 먹는 고양이 만약 어플에 좋은 카메라가 지원되지 않는다면 어떻게 이런 컨텐츠들을 포착할까요? 제 이름은 데이비드 이스트고, Camera2 API는 가장 뛰어난 카메라 어플을 만드는데 필요합니다 잠시 물러서서 안드로이드 카메라API 옵션의 역사를 살펴보겠습니다 사진이나 영상을 찍는 가장 단순한 옵션은 항상 카메라 인텐트였습니다 기본적으로, 귀하가 인텐트를 시작하면 사용자들은 사진을 찍기 위해 자신이 원하는 카메라 어플을 사용하죠

이 것은 이용하기 쉽지만, 사실 실력이 있는 카메라 어플에게는 그렇지 않습니다 카메라 인텐트는 주로 카메라가 주요 기능이 아니라 부가적인 어플에 사용됩니다 카메라 인텐트로는 북실북실한 고양이가 팬케이크 먹는 모습을 못찍죠 그래서 더 나은 API가 필요했습니다 카메라 API는 카메라 인텐트보다 더 많은 것을 조정할 수 있었습니다

카메라 API가 있다면, 원하는데로 카메라 뷰를 설정할 수 있었습니다, 정말 좋았죠 하지만 사진이 발전하면서 부족한 부분들이 발견됐죠, 예를 들어 압축되지 않은 이미지를 포착할 때, 혹은 프리뷰 속도가 초당 1에서 3 프레임인 새로운 하드웨어에서의 실행 등등에 있어서 문제가 있었습니다 고양이를 찍으려면 더 나은 API가 필요하죠 그래서 Camera2를 소개합니다 Camera2 API는 가장 최근에 나온 카메라API로, 가장 크고 가장 뛰어납니다

Camera2 API는 해당 디바이스 카메라의 모든 권한을 귀하에게 부여합니다 그리고 전 API의 모든 문제들도 해결됐죠 더 빠른 간격으로 사진을 찍을 수 있고, 다수의 카메라에서 프리뷰를 볼 수 있으며, 필터효과도 바로 적용할 수 있습니다 하지만, 새롭게 만든 카메라 어플에 적용하기 전에 알아야 할 것들이 있습니다 Camera2 API는 좋은 기능들을 가지고 있지만, 어플 사용자의 디바이스가 지원하지 못 할 수 있습니다

그렇기 때문에, 귀하는 어떤 디바이스가 지원 가능한지 아셔야 합니다 이 정보는 디바이스의 카메라 스펙을 살펴보면 알 수 있습니다 이 스펙은 렌즈의 방향같은 간단한 특징일 수도 있고, 얼굴 인식 모드의 여부처럼 복잡한 것일 수도 있습니다 만약 귀하의 어플이 특정 스펙 없이는 지원이 안된다면, 사용자가 어플을 다운받으려면 해당 스펙이 필요함을 명시하면 됩니다 매니페스트 파일에 사용자의 기능을 설정해놓으면 되죠

한 가지 더 중요한 것은, Camera 2API는 안드로이드 L에서 내놨기 때문에, 모든 어플을 지원하기 위해서는 다시 카메라API를 사용해야 합니다 그리고 Camera2 API는 안드로이드 서포트 라이브러리에서 지원이 아직 안되지만, 이 남성분에게 재촉하면 더 빨리 가능케 할 수 있어요 Camera2 API는 디바이스의 카메라에 대한 귀하의 책임을 증가시킵니다 그리고 더 큰 책임에는 큰 힘이 따라오죠 아마 그럴꺼에요

Camera2 API에 대해서 더 아시려면 API 레퍼런스를 살펴보세요 그리고 실제로 시행된 모델을 확인하고 싶으시면, GitHub에 원시 이미지를 포착하는 샘플 어플이 있습니다 귀하의 어플이 카메라를 사용한다면, Camera2를 사용해 가장 뛰어난 카메라를 제공하세요 계속 좋은 어플을 개발해주세요

Media Playback with MediaSessionCompat (Android Development Patterns Ep 4)

여러분의 음악을 정지시키는 것과 같은 기능은 먼 얘기가 아닙니다 안드로이드는 이를 위한 여러 방법을 제공해왔죠 몇 가지 얘기하자면 화면 제어 잠금과 알림을 위한 미디어 제어 그리고 안드로이드 웨어, 그리고 심지어 안드로이드 오토도 있습니다 이렇게 좋은 기능을 여러분의 오디오 앱에서 어떻게 사용해야 할까요? MediaSessionCompat를 사용하면 간단합니다 여러분을 위하여 안드로이드와 통합된 많은 작업을 할 수 있는 안드로이드 지원 라이브러리를 통하여 하나의 API를 이용할 수 있습니다 저는 이안 레이크입니다 이제 MediaSessionCompat를 살펴보고 여러분의 미디어 메타데이터를 가지고 어디에서든지 제어할 수 있는 방법을 알아볼 것입니다 여러분의 미디어 재생의 대표로서 미디어 세션을 생각해 보시길 바랍니다 오디오, 비디오 심지어 구글 캐스트에서 먼 거리로 재생하더라도 시스템에 여러분이 하는 걸 알려주지 않으면 도움을 줄 수 없습니다 하지만 여러분을 도울 수 있는 많은 방법을 제공합니다 앨범아트와 아티스트 이름과 같은 메타데이터를 게시한다면 여러분이 지원하는 재생과 일시중지와 같은 미디어 제어를 알려줍니다 하지만 이에 대해 다루기에 앞서 시작을 제어하기 위해 MediaSessionCompat 객체를 생성해봅시다 또한, 롤리팝 이전에 안드로이드 버전에서 미디어 버튼 수신기를 생성하는 하나의 예비 단계가 필요합니다 블루투스 헤드셋과 안드로이드 웨어에서 미디어 제어를 제공하며 안드로이드 50 이전의 장치에서 여러분의 앱으로 전달할 수 있습니다 단순한 브로드캐스트 수신기입니다 이렇게 매니페스트에 등록하고 여러분의 앱을 위한 액션으로 수신 키 이벤트를 변형시킵니다 일반적으로, 실제로 일시 정지를 이동시키고 재생 명령을 여러분의 미디어 재생을 제어할 수 있는 서비스로 보내는 것입니다 예시로 우리의 훈련 문서를 보겠습니다 자, MediaSessionCompat가 있습니다 컨텍스트가 필요한데요 디버깅 태그로 제공되는 문자열과 여러분의 미디어 버튼 수신기의 구성요소 이름입니다 마지막 널은 대기중인 인텐트입니다 안드로이드 4

3에 있는 구성요소의 이름 대신에 사용할 수 있습니다 이렇게 생성되는데, 널을 통과하게 되면 일반적으로 올바르게 작동되는 것입니다 더 진행하기에 앞서서 세 가지를 해야 할 겁니다 적절한 플래그를 설정해야 합니다 미디어 버튼 제어가 있는데요 이러한 미디어 버튼 이벤트를 우리의 앱으로 보냅니다 그 다음, 콜백을 설정합니다 롤리팝과 더 높은 장치가 콜백을 사용하여 버튼을 눌렀을 때 재생, 일시 정지 그리고 다른 작동을 할 것입니다 마지막으로 무언가를 재생할 때 활성화할 세션을 설정합니다 여러분의 앱에서 미디어 버튼 경로와 다른 제어가 있는 시스템의 신호입니다 자, 플럼빙이 설정되었고 작동될 준비가 되었습니다 하지만 우리의 미디어 세션이 미디어를 재생시킬 수 있는지는 아직 모릅니다 어떤 것이 재생되고 어떤 제어를 지원하는지 알 수 있을까요? 첫 번째 부분은 MediaMetadataCompat에서 처리됩니다 이는 빌더 패턴을 사용하며 여러분은 가지고 있는 모든 정보를 추가할 수 있습니다 그 다음에 여러분의 미디어 세션에서 setMetadata를 호출합니다 하지만 여전히 미디어 제어가 없습니다 우리가 아직 다른 부분을 처리하기 않았기 때문입니다 재생 상태를 게시하지 않았기 때문이죠 PlaybackStateCompat은 두 개의 목적을 가지고 있습니다 setState 메소드를 통하여 설정된 재생과 일시 중지 또는 버퍼링과 같은 현재의 상태와 setActions 메소드를 통해 설정된 중지 또는 일시 정지, 재생 정지와 같은 현재의 액션이 있습니다 이러한 두 가지를 포함합니다 일반적으로 액션은 상태와 동시에 변경되기 때문입니다 중지 상태는 일시 정지 액션을 가지고 있지 않을 것입니다 예를 들면 말입니다 MediaSessionCompat이 작동되기에 충분합니다 통합된 미디어와 모든 API 8과 더 높은 장치, 그리고 아이스크림 샌드위치, 젤리 빈, 그리고 킷캣 장치를 위한 잠금 화면 제어의 블루투스 버튼을 보실 수 있을 겁니다 MediaSessionCompat이 NotificationCompat과 API14 그리고 더 높은 장치에서 특히 인라인 미디어 제어를 포함한 모든 API 레벨에서 여러분에게 훌륭한 미디어 알림을 제공하는 AppCompat 지원 라이브러리에 속한 MediaStyle과 잘 작동되고 있는 것도 보실 수 있을 겁니다 여러분의 미디어 세션에서 특별히 독특한 미디어 세션 토큰이 있는 SetMediaSession를 호출하는 것만 기억하시면 됩니다 이를 통하여 안드로이드 웨어에 미디어 세션을 연결시킵니다 그리고 안드로이드 50과 더 높은 장치를 위한 웨어의 미디어 제어를 제공합니다 미디어 세션을 완료했을 때 배포를 하는 것을 잊지 마시길 바랍니다 정말로, 잊지 마시길 바랍니다 아직 MediaSessionCompat에 대해서만 다뤄 봤습니다 미디어 브라우저 또는 미디어 컨트롤러나 미디어 세션의 상단에 만들 수 있는 전체 호스트를 아직 다루지는 않았습니다 하지만 이로 인해서 여러분이 시작할 수 있을 겁니다 여러분의 미디어 재생 정보와 재생 제어를 어디에서나 재생할 수 있습니다 MediaSessionCompat를 사용하여 여러분의 멋진 미디어를 볼 수 있기를 기대하고 있으며 여러분이 더 나은 앱을 가질 수 있도록 도움이 되었기를 바랍니다 그리고 배포하시길 바랍니다