분류 전체보기 1203

Android 디컴파일

플레이스토어에서 Android App을 디컴파일해서 코드를 보는 내용입니다. 1. APK 파일 추출 https://extrememanual.net/28024 안드로이드 APK 파일 추출 및 다운로드 방법 - 익스트림 매뉴얼 안드로이드는 플레이스토어에서 앱을 설치할때 APK 파일을 남기지 않고 바로 설치하기 때문에 사용자가 앱을 따로 백업하거나 특정 버전을 저장하고 싶은 경우 APK 파일을 추출해야 하는 과정을 extrememanual.net 위의 링크를 따라서 APK파일을 추출합니다. http://www.javadecompilers.com/processing Decompiling Java and Android applications www.javadecompilers.com 2. jadx 설치 https..

Android(Kotlin) 2022.07.29

SharedPreferences / EncryptedSharedPreferences

SharedPreferences / EncryptedSharedPreferences 의 사용법입니다. 1. SharedPreferences 간단하게 아래와 같이 구현해줄 수 있습니다. class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val sharedPref = this.getPreferences(Context.MODE_PRIVATE) ?: return with (sharedPref.edit()) { putString("myString", "keyVal..

Android(Kotlin) 2022.07.26

ROOM Embeded

ROOM 을 사용할 때 객체간 매핑을 하고 싶을 때 사용하는 방법입니다. @Embedded를 사용해줄 수 있습니다. @Entity(tableName = "text_table") data class TextEntity ( @PrimaryKey(autoGenerate = true) @ColumnInfo(name = "id") var id : Int, @ColumnInfo(name = "text") var text : String, @Embedded var testDataset : testDataSet ) data class testDataSet( val test1 : String, val test2 : String ) - 참조 https://developer.android.com/training/data-s..

Android Jetpack 2022.07.22

ROOM Migration

기존에 DAO를 수정할 일이 생겨서 한번 수정을 해보겠습니다. 현재 앱 화면은 이렇습니다. 이 앱의 Entity를 기존에 있는 형태에서 @Entity(tableName = "text_table") data class TextEntity ( @PrimaryKey(autoGenerate = true) @ColumnInfo(name = "id") var id : Int, @ColumnInfo(name = "text") var text : String ) 새롭게 Entity를 하나 더 만들어보겠습니다. @Entity(tableName = "text_table2") data class TextEntity2 ( @PrimaryKey(autoGenerate = true) @ColumnInfo(name = "id2")..

Android Jetpack 2022.07.22