반응형

Android 17

[Android/정규식] 특정 양식의 전화번호만 링크로 처리

※ 해당 글은 제가 직접 작성한 글입니다. 정확하지 않은 정보일 수 있으니 정정할 사항이 있으면 알려주시기 바랍니다. ※ 스크랩이나 담아갈시 댓글에 출처를 남겨주세요. 목적 문장에서 전화번호만 추출하여 이벤트를 부여하거나 편집하고 싶을 경우 진행 환경 Macbook Android Studio 용어 정규식(정규표현식) 프로그래밍에서 문자열을 다룰 때, 문자열의 일정한 패턴을 표현하는 일종의 형식 언어를 말한다. 정규식이라고도 부르며,보통 regex 혹은 regexp라 많이 쓴다. (나무위키) 테스트 데이터 010-1234-1234전화번호테스트1234-1234전화번호 테스트1234-1234전화번호 테스트 전화번호 케이스 1 : (1234-1234) 전화번호 케이스 2 : 1234-12341234 전화번호 케..

Android 2023.01.05

[Android/Kotlin] ViewPager 와 비슷한 RecyclerView 만들기

목적 RecyclerView 를 Scroll 이후 ViewPager 처럼 특정 페이지에 걸린것처럼 동작하게 하는 방법을 정리했습니다. 환경 Macbook Android Studio 용어 RecyclerView ViewPager2 구성 코드 1. 현재 위치 계산 함수 코드 2. 현재 위치에서 가변위치까지 에니메이션이 적용된 동작을 하게 하는 함수 fun getCurrentPosition(): Int { return LinearSnapHelper().findSnapView(layoutManager)?.run { layoutManager.getPosition(this) } ?: 0 } fun moveToPosition(offset: Int) { val position = getCurrentPosition() ..

Android 2022.04.04

[Android] 개발시 유용한 Tool 모음

목적 안드로이드 실무 개발시 유용한 Tool 정보를 정리해보았습니다. 환경 Macbook Android Studio 설치 Homebrew 설치 Node.js 설치 종류 scrcpy (무료 Device 미러링 Tool) https://github.com/Genymobile/scrcpy/releases Releases · Genymobile/scrcpy Display and control your Android device. Contribute to Genymobile/scrcpy development by creating an account on GitHub. github.com 디바이스와 단말기를 연결해주는 미들웨어 앱입니다. Git 에 설치 관련 자료가 있으나 별도 자세히 정리한 블로거가 있어 이쪽을 ..

Android 2022.03.30

[Android/NDK] 기존 프로젝트에 .so 파일 연결하는 법

.so 파일은 NDK 의 C/C++ 파일이 컴파일된 파일입니다. NDK 를 사용하기 위해서는 그냥 JNI 로 구성된 C/C++ 파일이 있으면 됩니다. [Android/NDK] 기존 프로젝트에 NDK 설정하는 방법 [Android/NDK] 기존 프로젝트에 NDK 설정하는 방법 NDK 프로젝트를 매번 진행할때마다 설정을 구글에 검색하고 있는 저를 보며 이번 기회에 정리해야겠다 벼루고 있었는데 게을러서 미루기를 수차례 드디어 칼을 뽑아 정리합니다. 기존 프로젝트에 NDK 를 설정하는.. question0.tistory.com 하지만 .so 컴파일된 파일만 있어도 C/C++ 로 구성했었던 기능과 동일하게 사용 가능합니다. 주로 라이브러리 배포시 이런식으로 진행하곤 하죠. 설정 연결을 하는 Java 클래스를 이전..

Android 2019.12.27

[Android/NDK] 기존 프로젝트에 NDK 설정하는 방법

NDK 프로젝트를 매번 진행할때마다 설정을 구글에 검색하고 있는 저를 보며 이번 기회에 정리해야겠다 벼루고 있었는데 게을러서 미루기를 수차례 드디어 칼을 뽑아 정리합니다. 기존 프로젝트에 NDK 를 설정하는 방법을 정리한다고 했으나 내용은 프로젝트 생성부터(Java) 설정으로 정리하려고 노력했습니다. 그리고 정리하다 보니 Mac 과 Window 가 환경이 달라 경로 설정도 다른것을 확인하여 경로는 각각 정리하였습니다. 전반적인 내용은 빌드되는 운영체제 상관없이 같으니 참고해서 봐주세요. .so 파일만 가지고 연결하는 법은 아래에 포스팅에 설명 되어 있습니다. [Android/NDK] 기존 프로젝트에 .so 파일 연결하는 법 [Android/NDK] 기존 프로젝트에 .so 파일 연결하는 법 .so 파일은 ..

Android 2019.12.20

[Android/NDK] warning: passing 'uint8_t [3]' to parameter of type 'const jbyte *'

uint8_t crypto[] = { 0x00, 0x00, 0x00 }; JNIEXPORT jbyteArray JNICALL Java_com_example_ndk_Config_crypto (JNIEnv *env, jobject obj){ jbyteArray ret = (*env)->NewByteArray(env, 8); (*env)->SetByteArrayRegion(env, ret, 0, 8, crypto); return ret; } 오래된 jni 를 실행하려고 하는데 다음과 같은 오류 메세지가 나왔습니다. jni 는 warning 메세지라고 하더라도 so 파일은 생성이 됩니다. 하지만 저런 메세지를 무시하면 빌드된 so 파일이 정상적으로 동작하지 않을수 있기 때문에 수정해주고 넘어가야 합니다. 위의 ..

Android 2019.12.18

[Android/NDK] warning: implicitly declaring library function 'strlen'

NDK 를 이용하여 JNI 코드를 이용하거나 기존의 오래된 코드를 빌드하려고 할때 IDE 에서 위와 같은 오류가 발생한다면 헤더가 제대로 선언이 되지 않았을 확률이 있습니다. 저 같은 경우 다음과 같이 해더 선언했더니 문제가 해결되었습니다. #include 참고 바랍니다. 참고 자료 https://stackoverflow.com/questions/19761104/receiving-warning-implicit-declaration-of-function-strlen/19761118

Android 2019.12.18

[Android/Error] More than one file was found with OS independent path

안드로이드 자체 API 와 설정한 서드파티 라이브러리 API 가 충돌날때 생기는 에러라고 합니다. 에러 메세지가 다음과 같이 났다고 하면 More than one file was found with OS independent path 'META-INF/DEPENDENCIES'다음과 같이 설정하면 해결 됩니다. build.gradle(app) android { defaultConfig { ... } packagingOptions { exclude 'META-INF/DEPENDENCIES' } } 참고하세요.

Android 2019.12.16

[Android/NDK] java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList

위와 같은 에러가 발생할 경우 다음과 같이 작성해주세요. build.gradle(app) ndk 의 so 파일이 위치한 폴더 경로를 설정해줍니다. android { ... defaultConfig { ndk { abiFilters 'armeabi', 'arm64-v7a', 'x86', 'mips' } } } gradle.properties android.useDeprecatedNdk=true 각 폴더 경로에 so 파일의 종류의 갯수는 전부 같아야 하니 참고해주세요.

Android 2019.12.16
반응형