programing/Mobile
-
[Android] camera2 API - 검은 사진이 찍히는 현상 해결 방법programing/Mobile 2019. 8. 23. 15:48
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 증상 camera2 API를 사용하는 프로젝트가 있는데, 테스트 기기를 LG G5로 바꿔서 테스트해보니 검은 사진이 촬영되는 현상을 발견했습니다. 위 사진이 그 예시인데, 허여멀건 자국들은 다 조명이고, 그 외엔 엄청나게 까맣습니다. 이전 테스트 기기에선 다 정상적으로 작동하여 특정 기종문제인 줄 알았는데, 찾아보니 그런 것 같지는 않았습니다. 심지어 제가 담당한 기능도 아니라서 구글링하고 이해하는데 어려웠습니다. (사실 이해한 건 거의 없지만..) 해결 방법 어찌됫건, 제가 해결한 방법은 fps를 설정하는 법입니다. // 필드 선언 private Range fpsRange; fpsRange 필드를 선언해줍니다. // fpsRa..
-
[Android] background theme를 이용한 splash screenprograming/Mobile 2019. 5. 12. 17:07
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 android에서 background theme를 이용한 로딩 화면(splash screen)을 구현해보록 하겠습니다. splash_background.xml res/drawable/splash_background.xml 위와 같이 코드를 작성합니다. 두번째 item태그의 drawable속성의 속성값을 jpg, png등의 비트맵 파일로 설정하시면 됩니다. 당연히 res/drawable에 해당 파일도 추가해야 합니다. 간혹 의 자식으로 을 사용하는 코드가 있는데, 해당 코드는 ResourceNotFoundException을 발생시키는 경우가 있다고 합니다. 위의 코드대로 하면 해결된다고 하며, 갤s7기준으로 잘 작동하는 것..
-
[Android] Base64를 이용한 encoding시 주의점programing/Mobile 2019. 4. 1. 17:36
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 Android Studio에서 Base64를 이용하여 인코딩을 할 때 주의사항에 대해 알아보겠습니다. Base64 Base64을 사용하여 인코딩시, 인코딩 된 문자열의 한 line을 표시하기 위한 flag bit로서 LF(\n)를 삽입한다고 합니다. 정확히는 76글자가 넘는다면, 해당 위치에 개행문자(LF)를 삽입합니다. encodeToString public static String encodeToString (byte[] input, int flags) 보통 Base64를 이용하여 인코딩 하는 경우, 결과물로서 String을 사용하는 경우가 많기 때문에 위 함수를 사용하는 경우가 많습니다. Android Develop..
-
[Android Studio] 협업과 Instant Run 관련 에러 해결 방법programing/Mobile 2019. 3. 30. 16:23
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 Android Studio에서 협업을 하는 과정에서, Instant run과 관련된 에러를 해결하는 방법에 대해 알아보겠습니다. Github을 이용한 협업 현재 저는 산학연계 프로젝트의 협업툴로 Git과 Github을 이용하고 있습니다. github에 코드를 푸쉬할 때, 민감한 개인정보라던지 환경변수, 경로명 같은 경우엔 주의가 필요합니다. 지금 포스팅을 하게 된 계기인 sdk의 경로인 sdk.dir이 대표적인 경우입니다. 위와 같이 협업을 하는 과정에서는 경로명(User)이 각자 다르기 때문에, 이와 같이 기본값으로 설정하는 것이 좋습니다. 하지만, 저같은 경우엔 사용자명이 "User"가 아니기 때문에, sdk를 찾는 ..
-
[Android] dp를 px로 변환하는 법programing/Mobile 2019. 3. 18. 20:22
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 안드로이드에서 dp를 px로 변환하는 코드에 대해 알아보겠습니다. Code public int dpToPx(int dp) { float density = getResources().getDisplayMetrics().density; return Math.round((float) dp * density); } 위 코드를 사용하면 쉽게 변환할 수 있습니다.
-
[Android] ImageView gray scale filter 적용 및 해제 방법programing/Mobile 2019. 3. 14. 13:13
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) ImageView에서, 클릭시 회색빛으로 바꿧다가 다시 클릭하면 원상복구시켜야 할 때가 있습니다. 즉, gray scale filter를 toggle하는 방법을 알아보도록 하겠습니다. code myImageView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ImageView iv_tmp = (ImageView)v; if(iv_tmp.getColorFilter() == null){ // make gray scale matrix ColorMatrix matrix = new ColorMatrix(); matrix.setS..
-
[Android] google play service 문제 해결 방법programing/Mobile 2019. 3. 10. 17:04
안녕하세요, Einere입니다. (ADBlock을 꺼주시면 감사하겠습니다.) 구글 지도 api를 사용하면서, Android Studio Emulator (Android Virtual Device)에서 정상작동하지 않는 현상을 발견했습니다. 자세한 스샷과 함께 해결방법을 알아보도록 하겠습니다. 증상 위 스크린샷과 같이, "앱이름 is having trouble with Google Play services. Please try again." 이라는 문구가 뜹니다. 해당 영역은 Google Map api를 사용하는 Relative Layout영역입니다. 해결 방법 해결방법은 간단합니다. Play Store를 지원하는 가상기기를 사용하면 됩니다. 지원하는 기기를 만들기 위해서는, 새로운 기기를 만들 때, Re..
-
[Android] PhotoView 사용시 tools:replace문제 해결법programing/Mobile 2019. 2. 24. 14:41
안녕하세요, Einere입니다. (ADblock을 꺼주시면 감사하겠습니다.) 오늘은 Android에서 사용 가능한, chrisbanes의 PhotoView library를 사용할 때 suggestion: add 'tools:replace="android:appcomponentfactory"' 에러가 발생하는 경우 해결 방법을 포스팅하도록 하겠습니다. app:build.gradle PhotoView의 README를 보면, 위와 같이 dependencies에 implementation 'com.github.chrisbanes:PhotoView:latest.release.here'를 추가하라고 되어 있습니다. 여기서 보통 latest.release.here에 2.3.0 을 쓰시는 분이 많을 것입니다. 왜냐하면..