[android 보안] 패키지 관리 #1 [android 보안] 패키지 관리 #1 출처 : Android Security Internals 3장개요 목차 3. 패키지 관리 3.1. 안드로이드 앱 패키지 구성 3.2. 코드 서명 3.2.1. 자바 코드 서명 3.2.2. 안드로이드 코드 서명 3.3. APK 설치 과정 3.3.1. 앱 패키지와 데이터의 위치 3.3.2. 활성화된 컴포넌트 3.3.3. 지역 패키지의 설치 3.3.4. 패키지 업데이트 3.3.5. 암호화된 APK 의 설치 3.3.6. 포워드 락 3.3.7. 암호화된 앱과 구글 플레이 3.4. 패키지 검증 3.4.1. 패키지 검증을 위한 안드로이드 지원 기능 3.4.2. 구글 플레이 구현 3.5. 요약 3.1. 안드로이드 앱 패키지 구성 -APK 는 자바 JAR 를 확장한 포맷이며, JA.. 2018. 4. 18. [android 보안] 권한 #2 [android 보안] 권한 #2 2.7. 시스템 권한 -프레임워크 클래스는 /system/framework/ 폴더에 JAR 파일로 패키지되어 있다. -프레임워크에는 JAR 라이브러리 외에도 framework-res.apk 라는 APK 파일이 있는데, 이름에서 알 수 있듯이 코드 없이 애니메이션, 그림 파일(Drawable), 레이아웃 등 패키지 프레임워크 리소스가 들어 있으며, android 패키지와 시스템 권한처럼 중요한 정보도 정의되어 있다. framework-res.apk 도 APK 파일이므로 AndroidManifest.xml 이 들어 있는데, 여기에서는 권한 그룹과 권한이 선언되어 있다. -권한 그룹은 시스템 UI 에서 관련된 권한을 출력하기 위해 사용될 뿐이며, 권한은 개별적으로 요청해야 한.. 2018. 4. 17. [android 보안] 권한 #1 [android 보안] 권한 출처 : Android Security Internals 2장개요 목차 2. 권한 2.1. 권한의 본질 2.2. 권한 요청 2.3. 권한 관리 2.4. 권한 보호 수준 2.4.1. normal 2.4.2. dangerous 2.4.3. signature 2.4.4. signatureOrSystem 2.5.권한 할당 2.5.1. 권한과 프로세스 속성 2.5.2. 프로세스 속성 할당 2.6. 권한 적용 2.6.1. 커널 수준 적용 2.6.2. 네이티브 데몬 수준 적용 2.6.3. 프레임워크 수준 적용 2.7. 시스템 권한 2.7.1. signature 권한 2.7.2. development 권한 2.8. 공유 사용자 ID 2.9. 커스텀 권한 2.10. 공개 컴포넌트와 비공개 컴.. 2018. 4. 16. [android 보안] 안드로이드 보안 모델 #2 [android 보안] 안드로이드 보안 모델 #2 1.2. 안드로이드 보안 모델 -시스템의 나머지 부분과 마찬가지로 안드로이드의 보안 모델은 리눅스 커널이 제공하는 보안기능을 활용한다.다중 사용자 시스템인 리눅스는 프로세스들을 서로 격리시키듯이 사용자 리소스들도 서로 격리시킬 수 있다. -전통적인 리눅스에서는 시스템에 로그인해서 셸을 통해 명령을 실행하는 실제 사용자나 백그라운드에서 실행되는 시스템 서비스에 전용 UID 를 부여했다.그러나 안드로이드는 스마트폰을 위해 만들어졌고, 또 모바일폰은 개인용 기기이기 때문에 시스템에 여러 사용자를 등록할 필요가 없다.사용자는 스마트폰의 소유자를 한 명으로 간주하고, 대신 UID 는 앱을 구분하는 용도로 사용한다. ** 1.2.1. 앱 샌드박스 -안드로이드는 앱을.. 2018. 4. 15. [android 보안] 안드로이드 보안 모델 #1 [android 보안] 안드로이드 보안 모델 출처 : Android Security Internals 1장개요 목차 1. 안드로이드 보안 모델 1.1. 안드로이드의 아키텍처 1.1.1. 리눅스 커널 1.1.2. 네이티브 사용자 공간 1.1.3. 달빅 가상 머신 1.1.4. 자바 런타임 라이브러리 1.1.5. 시스템 서비스 1.1.6. 프로세스 간 통신 1.1.7. 바인더 1.1.8. 안드로이드 프레임워크 라이브러리 1.1.9. 앱 1.2. 안드로이드 보안 모델 1.2.1. 앱 샌드박스 1.2.2. 권한 1.2.3. IPC 1.2.4. 코드 서명과 플랫폼 키 1.2.5. 다중 사용자 지원 1.2.6. SELinux 1.2.7. 시스템 업데이트 1.2.8. 검증된 부트 1.3. 요약 1.1. 안드로이드의 아.. 2018. 4. 14. [android] ripple mask 의 정체를 알아보자.. [android] ripple mask 의 정체를 알아보자.. https://developer.android.com/reference/android/graphics/drawable/RippleDrawable.html-Ripple(잔물결, 파도) 에 대해 공부하고 있는데 약간 헷갈리는 개념이 있다. 바로 요 녀석. 마스크이다. -우선 xml 을 간단히 해부해보면, ripple 에 지정되는 color 값이 바로 실제 ripple effect 의 색상 값이다.그리고 ripple 아래 정의된 item 이라는 녀석이 ripple 이 없을 때 background 로 그려지는 drawable 에 해당한다. 위의 예제에서는 기본적으로 white 색상이 view의 background 로 차게 되고, 빨간색 ripple .. 2018. 3. 31. [android] Ripple 에 대해 알아보자 [android] Ripple 에 대해 알아보자 https://blog.stylingandroid.com/ripples-part-1/https://guides.codepath.com/android/ripple-animation -Ripple 자체는 Android L ( LOS ) 부터 나왔다.그러나 필자는 Ripple 을 실제로 처리할 일이 없어서, 그런 것이 있구나~ 하는 상태로 지내왔으나 이제 쓸 일이 있어서 정리해본다. -Ripple 은 새로운 RippleDrawable 이라 불리는 새로운 Drawable 이다.xml 로는 아래와 같이 정의하며, 기존 selector 정의해서 쓰듯 일반적으로 background 에 지정해주면 된다. -Ripple 을 그냥 적용해버리면, effect 가 해당 view.. 2018. 3. 30. Efficient Android Threading #12 로더를 이용한 자동 백그라운드 실행 Efficient Android Threading #12 로더를 이용한 자동 백그라운드 실행 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용. -로더(Loader) 프레임워크는 콘텐트 프로바이더 또는 다른 데이터 소스에 대해 비동기 작업을 실행하기 위한 강력한 방법을 제공한다.콘텐츠가 변하거나 데이터 소스에 추가될 때 로더 프레임워크는 비동기적으로 데이터를 불러오고 앱으로 전달할 수 있다.API Level 11(허니콤)에서 추가되었다. Loader 는 액티비티 또는 프래그먼트와 연결하는 것이 가능하다. 콘텐트 프로바이더에 연결하는 경우 CursorLoader 를 사용하면 되고,다른 데이터 소스의 경우 커스텀 로더 객체로 구현.. 2018. 3. 28. Efficient Android Threading #11 AsyncQueryHandler 를 이용한 콘텐트 프로바이더 접근 Efficient Android Threading #11 AsyncQueryHandler 를 이용한 콘텐트 프로바이더 접근 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용. 13.1. 콘텐트 프로바이더에 대한 간략한 소개 -AsyncQueryHandler 는 ContentProvider 에서 비동기적 CRUD 작업 처리를 전문으로 하는 유틸 클래스이다.작업은 별도 스레드에서 실행되고, 결과가 사용 가능할 때는 콜백이 시작하는 스레드에서 호출된다.AsyncQueryHandler 클래스는 UI 스레드에서 CP 로 작업을 떠넘기는데 사용되고, UI 스레드는 백그라운드 태스크가 완료되면 결과를 수신한다. 13.2. 콘텐트 프로바이더.. 2018. 3. 27. 반응형 이전 1 ··· 20 21 22 23 24 25 26 ··· 125 다음