[안드로이드 공부]/안드로이드 공부 33

Missing type, Progard, Generic 문제

java.lang.RuntimeException: Missing type parameter. at cohttp://m.google.gson.reflect.TypeToken.getSuperclassTypeParameter(Unknown Source:26) at cohttp://m.google.gson.reflect.TypeToken.(SourceFile:1) at U2.e$a.(SourceFile:1) at U2.e.a(SourceFile:8) 1. 위와 같은 문제 발생시 위치를 알기 어렵다. --> Release, Debug 모두 확인 시 Release 에서만 발생 확인 2. Release 에서만 발생 --> 의심; minify, progard --> 소스를 제대로 읽지 못해 발생 할 수 있으므로 2. ..

[안드로이드] do not match the previously installed version

do not match the previously installed version 에러가 난다면? signature가 맞지 않으므로 uninstall을 하고 다시 설치 하면 된다? 그런데 업데이트 테스트를 하는 경우라면, 재 설치를 하면 안되니 난감하다. 그럼, 왜 signature가 맞지 않는 것일까.... 1. 키가 다른가? 2. 권한이 다른가? 3. 모드가 다른가? --> 아무리 해도 안되면 3번일 가능성이 제일 크다. 이전 버전이 1.2 이고 디버그 모드라면, 새 버전 1.3 버전도 디버그 모드로 빌드 해야 정상적인 업데이트 테스트가 완료 된다. 참으로 기본적인 내용이지만... 늘.. 까묵는다...

안드로이드 상태바, 히스토리 앱바 색깔 바꾸기

안드로이드 상태바, 히스토리 제목의 색깔 바꾸기 롤리팝, 누가등 버전에 따라 다르다. Window window = mActivity.getWindow(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); } TypedValue typedValue =..

[안드로이드]패키지 설치, 제거, 업데이트 정보를 알고 싶다면

앱 설치 시 메인 Activity나 화면 실행전에 할일이 있다면 package 관련 브로드캐스트을 받으면 된다. @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (action.equals(Intent.ACTION_PACKAGE_REPLACED)) { } else if (action.equals(Intent.ACTION_PACKAGE_REMOVED)) { } else if (action.equals(Intent.ACTION_PACKAGE_ADDED) { } 업데이트 받은 사용자(PACKAGE_REPLACE)와 처음 설치한 사용자(PACKAGE_ADDED)의 설정을 다르..

[안드로이드]날짜를 시스템 언어에 따라 표시하기

날짜를 시스템 언어대로 표시할 수 있는 코드입니다. 예) 한국어: 2016년 4월 8일 금요일 English(US) : Friday April 8 2016English(UK) : Friday 8 April 2016 FORMAT_NUMERIC_DATE 플래그 적용시: 4/8/2016 Calendar c = Calendar.getInstance(); int flags = 0; if(formatdate != 0){ flags |= DateUtils.FORMAT_NUMERIC_DATE; } if(year) flags |= android.text.format.DateUtils.FORMAT_SHOW_YEAR; if(day) flags |= android.text.format.DateUtils.FORMAT_SHOW_..