최근의 안드로이드 구조를 배우기 위해 손잡이 앱을 개발했다(선정편)
6774 단어 Android
이번에 안드로이드의 로컬 개발에 종사할 때 현재 유행하는 안드로이드의 최신 구조와 프로그램 라이브러리를 배우고 싶어서 저는 장르로 수서에 표시된 핫이슈를 읽을 수 있는 프로그램을 만들었습니다.
Google Play 스토어에서 공개 중입니다.
HotBook. - 글을 쉽게 읽을 수 있어요.
목표
만든 물건
전체적으로 다크 블랙을 주제로 Coodintor Layout을 사용해 현대 안드로이드 앱의 느낌을 살렸다.
각 도메인에서 JavaScript 찾아보기를 잘라낼 수 있는 기능을 설정합니다.
안드로이드의 웹뷰가 자바스크립트를 무효로 설정한 것은 이번이 처음이며, 언제 사용한 설정이 기능으로 조합되었는가.
물론 보미도 볼 수 있다.
지금 안드로이드 개발이 어떻게 되어가고 있는지.
Google이 공식적으로 영리한 라이브러리를 많이 공개했기 때문인지 Google 라이브러리만으로도 괜찮은 프로그램을 만들 수 있습니다.
이번에 앱을 만들 때 저는 다음과 같은 내용을 선택했습니다.
아, 역시 IDE는 안드로이드 스튜디오 택일 맞죠?
Google이 공식적으로 영리한 라이브러리를 많이 공개했기 때문인지 Google 라이브러리만으로도 괜찮은 프로그램을 만들 수 있습니다.
이번에 앱을 만들 때 저는 다음과 같은 내용을 선택했습니다.
아, 역시 IDE는 안드로이드 스튜디오 택일 맞죠?
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.30"
implementation 'android.arch.lifecycle:extensions:1.1.0'
implementation 'android.arch.lifecycle:runtime:1.1.0'
implementation 'com.android.support:support-v4:27.1.0'
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:cardview-v7:27.1.0'
implementation 'com.android.support:design:27.1.0'
implementation 'com.android.support:preference-v7:27.1.0'
implementation 'com.android.support:recyclerview-v7:27.1.0'
implementation 'com.squareup.moshi:moshi:1.5.0'
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.squareup.retrofit2:converter-moshi:2.3.0'
implementation 'com.squareup.retrofit2:retrofit:2.3.0'
kapt 'android.arch.lifecycle:compiler:1.1.0'
kapt 'com.android.databinding:compiler:3.0.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
자세히 보면 Google 공식 라이브러리와 Square 라이브러리만 있습니다 (웃음)이 선정된 개발 환경을 포함해서 이렇게 된 느낌.
언어
앞으로 개발하면 무조건 코튼.AndroidStudio3.0부터 지지의 대강대강 발표가 된 것은 새로운 언어다.
kotlin의 장점은 자바와 공존할 수 있다는 것이다.
뭐랄까, 예를 들면 세 개의Activity가 있는데 그 중 두 개의Activity는 자바로 쓸 수 있고 하나의kotlin만 쓸 수 있다.
또한 kotlin에서 자바가 쓴 함수나 변수를 호출할 수도 있고, 반대로 자바에서 kotlin이 쓴 함수를 호출할 수도 있다.
날짜를 바꾸는 유틸리티 클래스에서kotlin으로 먼저 바꿀 수도 있습니다.
자바와 호환성이 있고 스위프트에 가까운 현대적 기법 때문에 kotlin은 기억하지 못한다.
아키텍처
이번에 주목한 건요.
안드로이드는 출시 이후 오랜 시간이 흘렀고, 보다 효율적인 방법으로 쓰고 표준화할 수 있다면 개발이 수월해질 것으로 기대된다.
물론 둘 다'아니요'를 선택할 수 있기 때문에 Archiitecture Components만 사용하거나 Databinding만 사용합니다.
이러한 구조를 사용한 해설은 다른 페이지에 소개될 것이다.
최근 안드로이드 아키텍처를 배우기 위해 손잡이 애플리케이션(아키텍처 편)을 개발했습니다.
통신/ 모형 주위
여기에 채택된 Retrofitmoshi는 iOS가 말한 Alamofire 정도의 표준 라이브러리이다.예전에는 볼리같은 걸로
moshi는 Retroffit에서 가져온 JSON 데이터를 대상으로 변환합니다.리토핏과 모스시가 연합한 라이브러리도 공개돼 API 통신에서 단숨에 JSON으로 전환하기 편하기 때문이다.
하지만 Retroffit 자체가 다른 라인에서 이동하지 않으면 당연히 나타난다
NetworkOnMainThreadException
.Android 표준 API를 사용한다면 AsyncTask는 최근까지 RxJava로 수신했으며, 이번에는 Archiitecture Components의 LiveData를 사용했다.
이 라이브러리를 사용하는 설명은 다른 페이지에서 진행될 것입니다.
View 주변
Android5.0 이상이면 일반 제작이라도 소재 디자인이 될 수 있다.Google 공식 애플리케이션처럼 멋진 UI디자인 라이브러리를 만들기 위해서도 Google 공식에서 제공하지만, 사용만으로도 좋은 느낌을 주는 신뢰할 수 있는 존재입니다.
이번에는 디자인 라이브러리에서 CoordinatorLayout을 사용하기로 했다.정말 말 그대로 잘 어울리는 라이브러리예요.Android 표준 커뮤니케이션 북 애플리케이션에 사용됩니다.
화면 스크롤과 함께 Action Bar를 숨기고 시차 스크롤을 제공합니다.
또 다른 picasso는 이미지 HTTP를 가져오는 것부터 캐시까지 한 손으로 받아들일 수 있는 프로그램 라이브러리다.현금 캐시 주변의 거의 전부를 도서관이 보관하고 있어 안심이 된다.
이 라이브러리를 사용하고 싶은 해설도 다른 페이지에서 진행될 것입니다.
개발 기간
Reference
이 문제에 관하여(최근의 안드로이드 구조를 배우기 위해 손잡이 앱을 개발했다(선정편)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kuluna/items/5ff8193c5f6d6af26c27텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)