개발 & 코딩 17

안드로이드 권한 설정 및 체크하기(Android 6.0이상은 필수)

1. 권한 설정하기 권한 설정을 위해선 AndroidManifest.xml에 등록을 해야한다. 이 중 위험 권한의 경우 체크를 통해 사용자의 동의가 필요하다. 위험권한 종류 : https://developer.android.com/guide/topics/security/permissions?hl=ko 시스템 권한 | Android 개발자 | Android Developers Permissions Google I/O 2015—Android M Permissions: Best Practices for Developers Android is a privilege-separated operating system, in which each application runs with a distinct system i..

확대 축소가 되는 ImageView와 Android 9에서의 오류 수정

참고한 TouchImageView :https://github.com/nowfloats/ANAChat-Android/blob/master/anachatsdk/src/main/java/com/anachat/chatsdk/uimodule/utils/TouchImageView.java nowfloats/ANAChat-Android Integrate Ana chat bot into your android application - nowfloats/ANAChat-Android github.com 해당 ImageView를 custom하여 사용하던 중 Android 9이상에서 오류를 발견하여 수정점을 기록한다. 1) 현상 : * 이미지가 최초 아무것도 안나오고 축소나 확대의 제스처를 취해야만 이미지가 나온느 현상 발..

FileProvider 정리

1. FileProvider란? 우선적으로 알아두어야 하는 점 : Android 4대 컴포넌트 1) Activity 2) Service 3) BroadcastReceiver 4) ContentProvider 그 중에서도 Android 4대 컴포넌트 중 하나인 ContentProvider contentProvider란 안드로이드 응용프로그램을 구성하는 컴포넌트 중 하나로서 데이터를 제공하는 역할을 하며 응용 프로그램끼리 데이터를 공유하는 유일한 방법이다. (서로다른 앱 사이의 데이터 공유) FileProvider는 ContentProvider의 하위 클래스 ContentProvider는 모든 종류의 데이터를 안전하게 공유 할 수 있는 구성 요소이지만 FileProvider는 특히 앱 내부 파일을 공유하는데..

연락처 및 이미지 공유 가능하도록 설정하기2

앞서 Manifest에 연락처 및 이미지를 공유하기를 통해 앱에 전달받을 수 있도록 세팅된 상태에서 데이터 처리법에 대해 알아보자. 1. 연락처(Text) - intent의 clipData안에 들어있음. ex) ClipData clip = intent.getClipData(); CharSequence clipText = clip.getItemAt(0).getText(); 2. 연락처(vcf) - 일반 text에 비해 복잡하다. 순서대로 알아보자. Uri contactUri = intent.getParcelableExtra(Intent.EXTRA_STREAM); 메소드로 내용물을 살펴보면 -> 단일 연락처 : content://com.android.contacts/contacts/as_multi_vcard..

연락처 및 이미지 공유 가능하도록 설정하기1

(갤럭시 노트 9+ 기준) 연락처 공유하기 버튼 위치 공유 버튼을 누르면 다양한 공유 가능 앱들이 나오는데 여기에 나오게 하기 위해선 아래의 코드를 Manifest에 추가해야 한다. 여기서 보내는 방식이 텍스트와 연락처 파일(vcf) 2가지가 있는데 위의 방식은 텍스트로 보내는 방식이다 vcf로 받고 싶은 경우는 하나만 위 코드 사이에 끼워 넣으면 된다. (노트 9+ 의 경우 단일 연락처의 경우 텍스트와 연락처 파일 중 고를 수 있지만 여러 연락처를 선택하는 경우는 vcf로 고정되는 것을 확인함) 어디에? 를 설정한 엑티비티에 나란히 넣으면 된다. 이미지는? 갤러리에서 이미지를 클릭하면 공유하기 버튼이 보일 것임. 마찬가지로 intent-filter를 추가해야 한다. 연락처의 경우 위 설정으로 여러 개를..

앱을 업데이트 후 최초 실행 했음에도 설정한 Default 값이 나오지 않는다?

회사 내 과제로 앱 하나를 만들어 서버에 올려놓았다가 몇 가지 업데이트 후 테스트를 하는 중 문제가 발생했다. 앱을 새로 설치했는데 최초 실행 체크용으로 넣어둔 sharedPreference값이 default값이 아닌 전에 설정되었던 값이 나오는 현상이었다. 안드로이드 스튜디오상에서 adb로 밀어 넣었을 때는 문제없었으나 사이닝 한 경우 문제가 발생했다. 이 문제의 원인은 android:allowBackup="true" 였다. developer에서의 설명은 다음과 같다. [android:allowBackup애플리케이션이 백업 및 복원 인프라에 참여하도록 허용할지 여부입니다. 이 속성을 false로 설정하면 모든 애플리케이션 데이터가 adb를 통해 저장되는 전체 시스템 백업에 의해서도 애플리케이션의 백업 ..