2014년 10월 28일 화요일

android - nexus 6, nexus 9을 위한 준비

nexus 6 를 위한 준비

1. xxxhdpi 리소스
  • 730 x 410 dp에 493ppi를 위한 리소스 처리
  • 해당 리소스가 없다면 nexus 6에서는 xxhdpi 를 스케일 업해서 사용함

2. AndroidManifest.xml에서 <compatible-screens> 태그 사용 제거 권고
  • Nexus 6에서 Play Store의 App이 노출되지 않을 수 있음
  • 만일 사용을 계속 하고자 한다면 신규 스크린 정보를 추가 후 재 배포를 반복해야 함


nexus 9 을 위한 준비

1. 화면 처리
  • 1025 x 768 dp에 288ppi를 위한 리소스로 xhdpi를 사용하기에 추가적인 리소스는 필요치 않음
  • 기본 태블릿은 주로 16:10의 화면비를 갖지만 nexus 9는 4:3의 화면비를 갖기에 레이아웃에 고려가 필요함

2. 64bit 지원
  • 안드로이드 최초의 64bit 지원 단말로 64bit ARM 을 지원해야 함
  • NDK app인 경우 Application.mk 파일에 다음과 같이 세팅(nexus 9은 arm64-v8a)

 APP_ABI := armeabi armeabi-v7a arm64-v8a x86 x86_64 mips mips64

 또는 

APP_ABI := all



3. 하드웨어 키보드 지원
  •  단방향 화면(가로 또는 세로 고정)을 사용하지 않을 것을 권고
 --> 넥서스 9은 다른 태블릿과 다르게 기본 방향이 세로이며 하드웨어 키보드 연결시 가로로 변경됨
  •  app 에서 키보드의 조작만으로 기본적인 사용이 가능하게 하길 권고
 -->  nexus 9 부터 키보드를 판매시작, 이 후 키보드가 번들 형태로 제공되거나 하이브리드 노트북 형태에서 안드로이드 사용을 위한 준비




공통

1. 화면 크기에 유연하게 대응는 레이아웃 구성
  • 가로, 세로 또는 화면 크기에 대한 대한 레이아웃 구성보단 화면 dp 값에 따른 레이아웃 구성을 권장
  • 컨텐츠를 표시하기 위해 필요한 최소 크기와 최대 크기를 고려하여 레이아웃 구성
2. Android 5.0과 Material 의 이점을 사용
  • android:targetSdkVersion을 21로 세팅
  • 이외 추가된 신규 API를 AppCompat v7을 사용하여 적용

출처: http://android-developers.blogspot.kr/2014/10/getting-your-apps-ready-for-nexus-6-and.html

android App 64bit 호환 처리하기

Android App 64bit 호환 처리하기

- JNI를 사용하지 않는다면 호환에 문제가 없다.
- JNI를 사용한 어플이라면 다시 빌드하여 배포해야 한다.

1.  android-ndk-r10c 다운로드

 다운로드 URL : https://developer.android.com/tools/sdk/ndk/index.html

2. Application.mk 설정

 예1) NDK가 지원하는 아키텍처 전체 지원
 APP_ABI := all
 예2) arm & x86 계열만 지원
 APP_ABI := armeabi armeabi-v7a arm64-v8a x86 x86_64

3. 빌드하여 마켓에 다시 올린다...

 arm & x86 계열만 지원하게 빌드된 예시 이미지