Android(JAVA)
Room 데이터베이스
개발도중 로컬 DB의 필요성을 느꼈다. 간단한건 쉐어드로 해결하였으나 이번에 복잡한걸 구현하게 됨 ㅇㅇ.. 일단 로컬 DB로 SQLite의 존재를 알고있었나 써보진않음.. 그러다 Room이란걸 알게됨 ㅇㅇ Room 라이브러리에 대한 설명이다. Room 지속성 라이브러리는 SQLite를 완벽히 활용하면서 강력한 데이터베이스 액세스를 지원하는 SQLite에 대한 추상화 레이어를 제공합니다. 라이브러리를 사용하면 앱을 실행하는 기기에서 앱 데이터의 캐시를 만들 수 있습니다. 앱의 단일 정보 소스로 제공되는 이 캐시를 통해 사용자는 인터넷 연결 여부와 관계없이 앱에 있는 주요 정보의 일관된 사본을 볼 수 있습니다. (출처 : https://developer.android.com/topic/libraries/ar..
레이팅바 (별점)
레이팅바로 별점을 주고있었는데 뻘건 별들을 주황색으로 바꾸고싶었다 이항목들을 레이팅바 부분에 추가 해주면된다! //xml 파일 android:progressTint="#FE7B05" android:progressBackgroundTint="#FE7B05" android:secondaryProgressTint="#FE7B05" 채워진 별 색상 (progressTint) 채워지지 않은 별 색상 (progressBackgroundTint) 별의 테두리 색상 (secondaryProgressTint) 굳. 오랜쥥! android:isIndicator="true" // 이값을 true로 설정하면 별점을 고정시킨다
이미지 크롭 하기 (Android-Image-Cropper 라이브러리)
ocr을 구현중.. 내가 원하는 부분만 텍스트를 인식하여 가져오게 하고싶어짐 ㅇㅇ 여러가지 라이브러리가 있었는데 그중 cropper 라이브러리를 쓰기로함 ㅇㅇ 이유는 내생각에 매우 심플함!!! 이미지 크롭 라이브러리들 https://ourcodeworld.com/articles/read/930/top-10-best-android-image-cropping-crop-widget-libraries Top 10: Best Android Image Cropping (Crop widget) Libraries See our review from 10 of the Best Android Image Cropping (Crop widget) Libraries. ourcodeworld.com 그래들 추가하고.. imple..
textview 글쓰기 초과 표시
최대 줄수 는 maxLines로 조절해주면되고, 언제 ...을 표시할건지는 ellipsize로 설정해주면된다! 나같은 경우는 맨끝에 표시하게 해놓았는데 ellipsize 옵션은 5개이다. 사실 marquee는 모르겠음 ㅎ 이상!
안드로이드 에러 (계속 추가)
1. android.content.res.Resources$NotFoundException: String resource ID #0x1 분명히 값을 맞게 설정해주었는데 에러가 났다. 찾아보니 이유는 textview 나 edittext에 setText 메소드를 사용할 때 Int 타입의 데이터를 넣어서 발생하는 에러 라고 한다.. 뭐지 여튼 String으로 형변환해서 해결했다. ^_^ 2. Unable to add window -- token null is not valid; is your activity running? 찾아보니 Dialog 생성시 getApplicationContext()를 사용해서 생긴문제라고한다. getApplicationContext() -> 자기클래스이름.this로 바꿔서 해결했다..
Java String 클래스 메서드
1. 문자열 자르기 -substring index 0부터 시작 String string = "abcdefgh"; String sub1 = string.substring(5); //5부터 끝까지 String sub2 = string.substring(1,4); //1~4 까지 결과 sub1 = efgh sub2 = bcd 2. contatins 지정된 문자열이 포함되어있는지를 검사 . String string = "abcdefgh"; boolean b = string.contains("abc"); 결과 b= true 3. trim 문자열 좌우 공백 없애기 String s = " hi "; String trim = s.trim(); 결과 trim = "hi"
Bitmap -> String , String -> Bitmap 변환
public class BitmapConverter { // String -> BitMap public static Bitmap StringToBitmap(String encodedString) { try { byte[] encodeByte = Base64.decode(encodedString, Base64.DEFAULT); Bitmap bitmap = BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length); return bitmap; } catch (Exception e) { e.getMessage(); return null; } //Bitmap -> String public static String BitmapToString(Bitmap bi..
에물레이터 먹통에러;
안드로이드 에물레이터를 통해 개발중.. Session 'app': Installation did not succeed. The application could not be installed.Session 'app': Installation did not succeed. The application could not be installed. 이 뜨면서 에물레이터가 구동되지 않았다! 해결방법. AVD 매니저에 들어가서 제일 오른쪽에 화살표버튼을 누르고 wipe data를 눌러주면된다~ 그리고 다시 에물레이터 키면 잘됨 ㅇㅇ //다만 이 방법을 사용할 경우 에물레이터가 초기화됨 참고할것
서버 통신 에러 (권한 ,https)
1. https 레트로핏 으로 서버 통신중... CLEARTEXT communication to XXXX not permitted by network security policy 에러 가 발생했다 .. 발생이유는 안드로이드가 pie로 넘어오면서 http로 받아오면안되고 https로 바뀌었기 때문이라고한다. 믿에 블로그를 참조해서 해결했다. https://gun0912.tistory.com/80 2. 권한 레트로핏을 이용 서버에 이미지를 올리는 중 내생각에 이쯤이면 무조건 되야되는데 안됨 ㅡㅡ 2시간뻘짓후 aws서버 img폴더안에 이미지를 올리는데 권한문제였다 img폴더에 권한주니까 해결 ^_^ 안드로이드는 권한을 항상고려하자. ....