본문 바로가기

분류 전체보기310

[Android] CLEARTEXT communication to 'IP' not permitted by network security policy 안드로이드 OS 9.0 Pie부터 네트워크 보안 정책이 변경되어 "모든 네트워크 트래픽에서 http 대신 https를 사용하도록 강제하는 정책"입니다. http 연결은 명시적을 사용을 선언한 경우에만 사용할 수 있게 되었습니다. 방법1. AndroidManifest에서 android:usesCleartextTraffic의 Flag값을 True로 변경해줍니다 방법2. 1-1) network_security_config 파일 생성합니다 res/xml/network_security_config.xml api_url 1-2) 위의 방법은 특정 주소를 허용하도록 설정하지만 그렇지 않은 상황인 경우도 있습니다. ex) 특정 사이트가 http인 경우 이런 경우 전체 http url을 허용해주는 방식을 사용합니다 2).. 2022. 6. 27.
[Android] ViewPager2와 ViewPager의 차이점 안드로이드 공식 홈페이지에서는 ViewPager에서 ViewPager2로 이전이라는 주제로서 글을 다루고 있습니다 ViewPager에서 ViewPager2로 이전하였을 때의 장점은 뭐가 있을까요? 1. ViewPager2는 적극적인 개발 지원을 받고 있지만 ViewPager는 그러지 않기 때문입니다 2. ViewPager2는 가로페이징 뿐만 아니라 세로 페이징까지 제공하고 있습니다 3. ViewPager2는 오른쪽에서 왼쪽(RTL) 페이징을 지원합니다. -> RTL 페이징은 언어에 따라 해당하는 경우 자동으로 사용 설정되지만 android:layoutDirection 속성을 설정하여 ViewPager2 요소의 RTL 페이징을 수동으로 사용 설정할 수도 있습니다. 4. 수정 가능한 프래그먼트 컬렉션을 통해.. 2022. 6. 26.
[Android] ViewPager 사용법 ViewPager2를 원하시는 분들은 아래 링크를 확인해주세요 [Android] ViewPager2 사용법 android 공식 홈페이지에선 "화면 슬라이드에는 향상된 ViewPager2 라이브러리를 사용하는 것이 좋습니다" 라고 공지하고 있습니다 1. 원하는 activity의 xml에 ViewPager2를 추가해줍니다. (저는 tab과 Indicat jgeun97.tistory.com 1. 원하는 activity의 xml에 ViewPager를 추가해줍니다. (저는 tab과 Indicator도 추가했습니다) //Indicator의 경우 외부 라이브러리를 사용 https://github.com/ongakuer/CircleIndicator / LICENSE: Apache 2.0 1.1 원하는 indicator.. 2022. 6. 26.
[Android] ViewPager2 사용법 android 공식 홈페이지에선 "화면 슬라이드에는 향상된 ViewPager2 라이브러리를 사용하는 것이 좋습니다" 라고 공지하고 있습니다 1. 원하는 activity의 xml에 ViewPager2를 추가해줍니다. (저는 tab과 Indicator도 추가했습니다) //Indicator의 경우 외부 라이브러리를 사용 https://github.com/ongakuer/CircleIndicator / LICENSE: Apache 2.0 1.1 원하는 indicator 색 변경 - black_radius (color만 원하는 색으로 지정하시면 됩니다) 2. Activity에서 ViewPager를 연결해준다 Horizontal: 수평, Vertical: 수직 3. 이제 ScreenSlidePager2Adapter.. 2022. 6. 26.
[Android] Unfortunately you can't have non-Gradle Java modules and Android-Gradle modules in one project. 1. File -> Invalidate Caches/Restart 실행 2. Android Studio를 종료 3. 해당 프로젝트 폴더로 가서 .idea 디렉토리를 삭제 4. .imi 확장자를 가진 파일을 삭제 5. 다시 시작해보면 해결된다. Error: Unfortunately you can't have non-Gradle Java modules and > Android-Gradle modules in one project I have an IntelliJ 14.1.2 Project consisting of two modules - one is an Android Gradle based module and the other is a Spring Java-based module with Maven. gp.. 2022. 6. 26.
[Android] Assets 폴더 만들기 app -> New -> Folder -> Assets Folder를 생성하시면 됩니다. 저는 폴더를 만들기 위해 Android Resource Directory, Sample Data Directory 등등 시도해봤는데 이 글을 보시는 분들은 한 번에 해결하세요! 2022. 6. 24.
객체지향 원리 추상화 어떤 영역에서 필요로 하는 속성이나 행동을 추출하는 작업 // 각 자동차마다 case를 나누는 것보다 switch(자동차 종류) { case 아우디: case 벤츠: case BWM: } // 추상화를 통해 공통된 부분인 car이라는 클래스로 처리할 수 있다 void changeEngineOil(Car c) { c.changeEngineOil(); } 응집도와 결합도 응집도: 클래스나 모듈 안의 요소들이 얼마나 밀접하게 관련되어 있는지를 나타냄 결합도: 어떤 기능을 실행하는 데 다른 클래스나 모듈들에 얼마나 의존적인지를 나타냄 -> 높은 응집도와 낮은 결합도를 유지할 수 있도록 설계해야 요구사항을 변경할 때 유연하게 대처할 수 있다 캡슐화 낮은 결합도를 유지할 수 있도록 해주는 객체지향 설계 원리.. 2022. 6. 24.
객체지향 모델링 모델링 (Modeling) 서로의 해석을 공유해 합의를 이루거나 해석의 타당성을 검토 현재 시스템 또는 앞으로 개발할 시스템의 원하는 모습을 가시화 시스템의 구조와 행위를 명세할 수 있으며 시스템을 구축하는 틀을 제공 모델은 추상화 (abstraction)에 바탕을 두고 만들어져야 함 추상화는 대상을 표현할 때 특정 관점에서 관련이 있는 점은 부각시키고 관련이 없는 면은 무시하는 것이 필요 ex) 대학교 학사 지원 업무 - 학생의 머리색은 관련이 없지만 학번이나 수강 과목 등은 매우 중요한 요소 UML (Unified Modeling Language): 시스템을 모델로 표현해주는 언어 시스템 개발 과정에서 개발자 사이의 의사 소통이 원할하게 이루어지도록 표준화한 통합 모델링 언어 시스템의 구조와 동작을 .. 2022. 6. 20.
[Firebase] Android에 Firebase 연동하기 구글에 Firebase입력하시면 아래와 같은 창이 뜨게 됩니다. 이제 시작하기와 프로젝트 만들기를 순서대로 눌러주시면 됩니다. Firebase는 총 3단계로 이루어져 있습니다. 순서대로 차근차근 입력하시면 됩니다. 프로젝트를 만들고난 다음엔 아래 그림과 같이 안드로이드 모양의 버튼을 클릭해주시면 됩니다. 이제 프로젝트와 안드로이드를 연결하는 과정으로 총 3가지 과정을 거쳐야 합니다. 1. Android 앱에 Firebase 추가 패키지 이름의 경우 manifest 파일 상단에 적혀있는 package를 복붙하시면 됩니다. SHA-1의 경우 아래의 글을 확인해주세요! [Android] SHA-1 key 쉽게 확인하기 예전에는 Gradle을 클릭해서 signingReport를 눌렀을 때 SHA-1의 정보를 확.. 2022. 6. 2.