본문 바로가기
[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] PackageManager 와 ActivityManager. 그리고 Intent 이야기 안드로이드, PackageManager 와 ActivityManager. 그리고 Intent 이야기 PackageManager 이야기. PackageManager 는 폰이 최초 실행될 때 system/app, data/app 등의 위치를 검색하며 APK 파일들의 매니페스트 파일을 조사해 intent 에 관련된 내용들을 모두 system 에 등록시켜 놓는다. 새롭게 패키지가 추가되거나 삭제될 때 발생하는 broadcast intent 를 수신하여 등록된 정보를 갱신하는 일도 수행한다. ActivityManager 이야기 ActivityManager 는 인텐트를 수신받으면 PackageManagerService 를 통해 Intent 에 부합하는 컴퍼넌트 정보를 다져온다. 그 다음 해당 컴퍼넌트의 상태 정보와.. 2013. 11. 8.
[android] how can I know if there is any application which can handle an intent. android, how can I know if there is any application which can handle an intent? public static boolean hasAvailableIntentHandlingApp( Context context, Intent intent ){List list = context.getPackageManager().queryIntentActivities( intent, PackageManager.MATCH_DEFAULT_ONLY );return list.size() != 0;} Android, hasAvailableIntentHandlingApp, match_default_only, PackageManager, queryintentactivity, re.. 2013. 10. 10.
[android] how can I know whether an application is installed with packagename? android, how can I know whether an application is installed with packagename? public static boolean isAppInstalled( Context context, String packageName ){ try{ context.getPackageManager().getPackageInfo( packageName, PackageManager.GET_META_DATA ); return true; } catch( Exception e ){ return false; }} CONTEXT, how can i know whether an application is installed with packagename, install, isappins.. 2013. 10. 8.
[android] Manifest 의 VersionCode 정보 코드로 가져오기 Manifest의 VersionCode 정보 코드로 가져오기 Manifest의 VersionCode 는 App 을 Release 할 때 Version 명시용으로도 사용되고,Google Play 에 APK Release 를 할 때 비교 코드로도 사용된다. 간혹 자체 서버를 운영하며, 그 서버와 통신하는 형태의 앱이라면서버의 API 변경 등에 따라 App 의 Update 를 권하기 위해서도 Version Code 비교는 사용될 수 있다. Manifest 에 명시된 VersionCode 를 가져오는 방법은 다음과 같다. try{return getPackageManager().getPackageInfo( PACKAGE_NAME, PackageManager.GET_META_DATA ).versionCode;}ca.. 2013. 6. 14.
[android] manifest 에 명시된 app version 가져오기 이것도 매우 쉽다. String appVersion = getPackageManager().getPackageInfo(getPackageName(), 0).versionName; 단, getPackageInfo() 라는 녀석은 NameNotFoundException 을 뿜어내니 요 녀석만 try-catch 로 잡아주면 되겠다. 도움이 되셨다면 손가락 꾸욱~ ( 로그인 필요 x ) 2013. 1. 3.
반응형