본문 바로가기
[android 10] Q target 하는 앱의 동작 변화 [android Q] Q target 하는 앱의 동작 변화 https://developer.android.com/about/versions/10/behavior-changes-10 non-SDK interface 제한 업데이트 -앱의 안정성과 호환성 문제 해결을 위해 non-SDK interface 제약이 Pie 에서 도입되었다.Q 에서는 관련 list 가 업데이트 되었다. 앱이 Q 를 target 하지 않으면, 이 변화는 바로 영향을 미치지 않겠지만 결국 high risk 로 다가올 것이다. 공유 메모리 -ashmem 이 dalvik map (/proc//maps) 형태로 변화되었다. 앱이 dalvik map format 에 의존하고 있었다면, 앱 개발자는 새로운 /proc/maps 포맷을 단말에서 테.. 2020. 3. 15.
[android] Pie 에서 앱 잘 작동하는지 확인하기 [android] Pie 에서 앱 잘 작동하는지 확인하기 https://developer.android.com/about/versions/pie/android-9.0-migration#ct -targetSdkVersion 을 올리지 않아도 pie(android 9) 에서 제대로 작동하지 않는 경우가 있다.그래서 아래의 것들을 확인해봐야한다. * non-SDK interface 에 대한 제약 -특정 non-SDK interface 에 대한 접근이 막힌다. 이것이 직접적 사용이던, JNI 를 통하던 reflection 을 통하던 말이다.제한된 interface 에 접근하는 것은 NoSuchFieldException 또는 NoSuchMethodException 을 발생시킨다.이에 대한 자세한 내용은.. htt.. 2019. 7. 30.
[android] CONNECTIVITY_ACTION deprecated 에 대한 이야기 - Connectivity 가 변경되었을 때 받을 수 있는 broadcast 는 ConnectivityManager.CONNECTIVITY_ACTION 가 있었다. 그러나 이 녀석은 API 28 (POS) 부터 deprecated 되었다. - 사실 이 녀석은 이미 deprecated 의 징조를 띄고 있었다. targetSdk 24 (NOS) 부터 static receiver 로 받을 수 없게 되었고, targetSdk 26 (OOS) 부터는 background restriction 정책으로 이 녀석을 포함한 다른 녀석들도 static receiver 로 받을 수 없게 되었다. 그리고 결국 API 28 (POS) 부터는 deprecated 된 것이다. deprecated 가 되었기 때문에 사실 target.. 2019. 4. 9.
[android] NoClassDefFoundError for SafeBrowsingResponse [android] NoClassDefFoundError for SafeBrowsingResponse -아래와 같은 로그를 보았다. (@ 26(8.0 OOS) device, targetSDK 23(6.0 MOS) )그래서 research 를 해보았다.I/zygote64: Rejecting re-init on previously-failed class java.lang.Class: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/webkit/SafeBrowsingResponse; at void com.android.webview.chromium.WebViewChromium.init(java.util.Map, boolean) (PG:53) at .. 2018. 11. 30.
[android 보안] 권한 #2 [android 보안] 권한 #2 2.7. 시스템 권한 -프레임워크 클래스는 /system/framework/ 폴더에 JAR 파일로 패키지되어 있다. -프레임워크에는 JAR 라이브러리 외에도 framework-res.apk 라는 APK 파일이 있는데, 이름에서 알 수 있듯이 코드 없이 애니메이션, 그림 파일(Drawable), 레이아웃 등 패키지 프레임워크 리소스가 들어 있으며, android 패키지와 시스템 권한처럼 중요한 정보도 정의되어 있다. framework-res.apk 도 APK 파일이므로 AndroidManifest.xml 이 들어 있는데, 여기에서는 권한 그룹과 권한이 선언되어 있다. -권한 그룹은 시스템 UI 에서 관련된 권한을 출력하기 위해 사용될 뿐이며, 권한은 개별적으로 요청해야 한.. 2018. 4. 17.
Android O Background 실행 제한 Android O Background 실행 제한 https://developer.android.com/about/versions/oreo/background.html#services -앱이 Background 로 돌 때는 디바이스의 리소스를 사용한다. 예를 들면 RAM, CPU.이런것들이 리소스를 많이 사용하는 게임이나 비디오 시청 등에 방해가 된다.이를 개선하기 위해 Android 8.0 ( API 26 ) 부터는 background 작업에 대한 제한이 추가되었다. Overview -많은 안드로이드 앱과 서비스는 동시에 돌 수 있다.예를 들면 게임을 한 윈도우에서 하면서 다른 윈도우에서는 브라우징을 하고, 백그라운드에서는 음악도 재생할 수 있다.더 많은 앱들이 한번에 돌면서 시스템에 더 많은 부하가 생.. 2017. 10. 20.
[android] Android 6.0(MOS) SDK 에서 바뀐 것들!! [android] Android 6.0(MOS) SDK 에서 바뀐 것들!! https://commonsware.com/blog/2015/08/17/random-musings-android-6p0-sdk.html -ACTION_INSTALL_PACKAGE 를 사용하면서 targetSdkVersion 이 22 이상이면 REQUEST_INSTALL_PACKAGE permission 이 반드시 있어야 한다. -PendingIntent 는 FLAG_IMMUTABLE 이라는 option 이 있다.이것은 PendingIntent 를 invoke 할 때 변형되지 않게 하는 것으로 security 측면에서 좋다. -새로운 Setting screen 들을 Settings 의 action string 을 통해 접근할 수 있.. 2017. 9. 18.
[android] compileSdk 를 올린 후에 provider permission denied 에러가 나면..? [android] compileSdk 를 올린 후에 provider permission denied 에러가 나면..? Jelly Bean 미만 버전을 사용하다가 Jelly Bean 이상으로 올렸는지 먼저 확인해봐야 한다.위의 상황이라면 manifest 의 provider 정의에 exported=“true” 로 적혀있는지 봐야 한다.젤리빈 미만 버전에서는 exported=“true” 값이 default 였지만, Jelly Bean 부터는 그렇지 않아서 이걸 적어줘야 한다.저걸 적어주는 순간 매직! 해결! compilesdk, default, exported, exported true, jelly bean, manifest, Provider, provider permission denied, targetsd.. 2017. 8. 29.
[android] targetSdk, compileSdk 수정 후 - :app:dexDebug ExecException finished with non-zero exit value 1 에러가 나면.. [android] targetSdk, compileSdk 수정 후 - :app:dexDebug ExecException finished with non-zero exit value 1 에러가 나면.. http://stackoverflow.com/questions/30001051/appdexdebug-execexception-finished-with-non-zero-exit-value-2 Clean build 한번 하고 다시 compile 해보시길.. 왠만한 에러는 clean build 하면 대충 해결되는듯... 그래서 앞으로는 Compile 이 갑자기 안 되면 Clean build 하고 컴파일 해보고.. 그래도 안 되면 검색해봐야겠다.. appdexdebug, Clean, clean build, Comp.. 2017. 8. 28.
반응형