Android (8) 썸네일형 리스트형 Android Hilt 에서 지원하지 않는 클래스 내 Injection Hilt에서는 Android 클래스 용이 아닌 일반 Class에서는 EntryPoint Annotation이 지원하지 않는다. Interface만을 지원하기 때문에 아래와 같이 구현해야 한다. @EntryPoint @InstallIn(SingletonComponent::class) interface TestInterface { fun adRequest(): AdRequest } val hiltEntryPoint = EntryPointAccessors.fromApplication(context, TestInterface::class.java) val adRequest = hiltEntryPoint.adRequest() adView.loadAd(adRequest) Singleton Class Module에 .. unrecognized Attribute name MODULE (class com.sun.tools.javac.util.SharedNameTable$NameImpl) Android Project Import 후 Gradle Build시 처음엔 하단의 에러가 발생했다. warning: Kotlin runtime JAR files in the classpath should have the same version 이에 상세한 에러를 확인하기 위해 아래 명령어를 쳤더니 아래오류를 발견하였다. ./gradlew assemble --stacktrace unrecognized Attribute name MODULE (class com.sun.tools.javac.util.SharedNameTable$NameImpl) Android Studio Gradle 설정에서 Gradle JDK버전을 JDK11로 맞춰주면 된다. Settings > Build, Execution, Deploy.. Cause: com/android/tools/idea/gradle/run/OutputBuildAction has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0 Android Project를 Import하는데에 아래와 같은 오류가 발생하였습니다. Cause: com/android/tools/idea/gradle/run/OutputBuildAction has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0 문제는 Java Runtime JRE에 있습니다. 이 Java Runtime의 버전은 52에서 컴파일 되었다는 메세지 입니다. Android Stuidio의 설정을 수정하여 해결했습니다. 1. Android Studi.. ScrollView 안에 Webview Scroll동작 Layout작업시에 부모Scroll과 중첩되어 의도된 Child의 Scroll이 안되는 경우가 많습니다. 이럴경우는 안되는 스크롤의 내부 Touch Event를 Override하여 requestDisallowInterceptTouchEvent 메소드를 요청하여 처리하는것이 일반적입니다. Webview가 Child일경우 방법은 하단의 2가지입니다. 1.새로운 WebView Class class CustomWebView : WebView { constructor(context: Context) : super(context) {} constructor(context: Context, attrs: AttributeSet) : super(context, attrs) {} constructor(context: Co.. Android - Activity LifeCycle Activity 이 Activity클래스는 Android 앱의 중요한 구성 요소이며, 액티비티가 시작되고 결합되는 방식은 플랫폼의 애플리케이션 모델의 기본 요소입니다. Activity가 시작되고 종료되는 일련의 생명주기에 따라 어떠한 방식으로 앱을 구현하고 처리해야 되는 지 달라집니다.Fragment와 같이 Activity는 화면을 이루는 가장 기본적이 단위이며 사용자에게 주로 보여지는 UI입니다. Activity LifeCycle onCreate ()시스템이 처음 활동을 생성 할 때 발생하는이 콜백을 구현해야합니다. Activity 활동의 단 한 번만 발생해야하는 기본 응용 프로그램을 수행합니다. 또한 savedInstanceState 파라미터를 변수로 받습니다. savedInstanceState는 B.. Dagger2 Android Library 사용하기 Dagger2Dagger2는 자바와 안드로이드를위한 완전히 정적 인 컴파일 타임 의존성 주입 프레임 워크입니다. 이것은 구글에 의해서 만들어졌습니다. Dagger2 Android안드로이드 용으로 작성된 코드는 자바 소스이지만, 종종 스타일 측면에서 상당히 다르다. 일반적으로 이러한 차이점 은 모바일 플랫폼 의 고유 한 성능 고려 사항을 수용 하기 위해 존재합니다 . 기존Dagger의 문제public class FrombulationActivity extends Activity { @Inject Frombulator frombulator; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState).. Room Database Browser로 확인하기 Room DatabaseRoom은 SQLite의 추상 레이어를 제공하여 SQLite의 모든 기능을 활용하면서 유창한 데이터베이스 액세스를 허용합니다. 데이터베이스 : 이 구성 요소를 사용하여 데이터베이스 소유자를 만들 수 있습니다. Sqlite를 사용하셨다면 기존에 사용하시던 데이터 베이스와 비슷한 과정을 거칩니다. 엔티티 : 이 구성 요소는 데이터베이스 행을 보유하는 클래스를 나타냅니다. 각 엔티티에 대해 항목을 보유하는 데이터베이스 테이블이 작성됩니다. DAO : 이 구성 요소는 클래스 또는 인터페이스를 DAO (Data Access Object)로 나타냅니다. DAO는 Room의 주요 구성 요소이며 데이터베이스에 액세스하는 메서드를 정의합니다. 데이터 베이스싱글톤으로 관리되어지는 entity.db라.. Libraries Proguard # Retrofit 2.X -dontwarn retrofit2.** -keep class retrofit2.** { *; } -keepattributes Signature -keepattributes Exceptions -keepclasseswithmembers class * { @retrofit2.http.* ; } #Guava-keep class com.google.common.io.Resources { public static ; } -keep class com.google.common.collect.Lists { public static ** reverse(**); } -keep class com.google.common.base.Charsets { public static ; } -keep cl.. 이전 1 다음