목록안드로이드 개발 (49)
일모도원(日暮途遠) 개발자
Google Play에 앱을 올리니 아래와 같은 에러가 나왔다. You uploaded an APK or Android App Bundle which has an activity, activity alias, service or broadcast receiver with intent filter, but without 'android:exported' property set. This file can't be installed on Android 12 or higher. See: developer.android.com/about/versions/12/behavior-changes-12#exported 에러 메시지를 읽어보면 intent filter를 쓰는 activity, activity alias, s..
잘되던 소스코드를 조금 수정하고 나니 아래와 같은 에러가 뜬다. 구글링 해보니 엑셀레이터 관련 오류라고 하는데, 난 다른 케이스 였다. A/libc: Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x804 in tid 17153 (msoft.aradiceng), pid 17153 (msoft.aradiceng) 에러가 나는 지점은 이 코드인데, try로 감싼 코드인데도 catch가 잡아내지 못한다. (Speech To Text 오픈소스인 VOSK를 사용하는 코드임) Recognizer rec = new Recognizer(currentModel, 16000.0f); 수정할때 버그로 저 "currentModel"을 초기화를 못해서 null이 되..
기존에는 text에 색상등을 줄려면 HTML을 활용해서 했지만, 요즘은 Span을 사용하여 텍스트에 색상 표시, 텍스트를 클릭 가능하게등을 할수 있다. 스팬을 사용할려면 아래 3개 클래스중 하나를 사용하면 된다. SpannedString 텍스트 또는 마크업이 읽기 전용이면(변경하지 않는다면). 개발자는 이 클래스를 직접 사용하지는 않는거 같다. textview에 setText시 span이 적용된 클래스(SpannableString, SpannableStringBuilder)를 넘겨주면, 이걸 받을때 복사본을 SpannedString으로 만든다고 한다. 그래서 텍스트나 스팬을 업데이트해야 할 경우 SpannedString는 텍스트와 스팬은 변경할 수 없으므로 새로운 Spannable 객체를 만들고 setT..
텍스트의 색상을 변경할때 Span을 사용하는데, setSpan메소드를 보면 flags라는게 있다. public void setSpan(Object what, int start, int end, int flags) { 이 flags에는 많은 값들이 있는데 다음과 같이 비슷하게 생긴것들이 있다. https://developer.android.com/reference/android/text/Spanned?hl=ko Spannable.SPAN_INCLUSIVE_INCLUSIVE Spannable.SPAN_INCLUSIVE_EXCLUSIVE Spannable.SPAN_EXCLUSIVE_EXCLUSIVE Spannable.SPAN_EXCLUSIVE_INCLUSIVE 이 flags들은 span을 적용할 텍스트가 변경..
간만에 소스를 여니 어떤 XML은 아래처럼 뷰가 보이지 않는다. 어떤 뷰는 스패너아이콘을 눌러보니 보이는 경우가 있는데, 어떤 뷰는 스패너도 효과가 없다. 아래가 스패너 아이콘이다. (Toggle tools visibility and position) 우상단에 Design 밑에 있는 느낌표를 클릭해보면 아래처럼 뷰에 대한 워닝과 "Failed to instantiate one or more classes"라는 문구가 나온다. "Failed to instantiate one or more classes"를 눌러보면 아래처럼 메시지를 보여준다. 내 경우는 메시지에 있는 build the project를 클릭하고 다시 refresh the layout를 클릭하니 정상적으로 보였는데, 얼마후 다시 같은 증세가 ..
반투명하게 되는 애니메이션동안은 클릭이 안되는 기존 코드 UIView.animate(withDuration: 1, animations: { //btn.alpha = 0 }, completion: { (_) in }) 투명해지는 동안에도 클릭이 되는 코드 : options:[.allowUserInteraction]를 추가한다. UIView.animate(withDuration: 1, delay: 0, options:[.allowUserInteraction], animations: { //btn.alpha = 0 }, completion: { (_) in }) 아래처럼 UIViewPropertyAnimator를 사용해도 된다. 참고 UIViewPropertyAnimator(duration: 1, curve:..
SVG파일을 import해서 사용할때 아래처럼 보이지 않을때가 있다. 이렇게 정상적으로 보이는 SVG파일이 Vector Asset에서 선택하면 아무것도 안보인다. issues를 눌러서 원인을 보면 아래처럼 나온다. is not supported is not supported 이는 SVG에있는 TEXT의 이슈로, 글자를 그림으로 변경해주면 된다. Sketch app에서 글씨를 선택후 Convert to Outlines를 선택한후 SVG로 만들어서 사용하면 된다. (Adobe XD에서는 Select text후 Go to Object -> Path -> Convert to Path를 하면 된다고 한다.) 그럼 SVG파일을 import할때 정상적으로 보이게 된다.
Glide문서에 있는 기본 예제를 실행해 봤는데 에러가 나고 이미지가 보이지 않는다. ImageView imageView = (ImageView) findViewById(R.id.my_image_view); Glide.with(this).load("http://goo.gl/gEgYUd").into(imageView); 에러 내용 W/Glide: Load failed for http://goo.gl/gEgYUd with size [131x131] class com.bumptech.glide.load.engine.GlideException: Failed to load resource There was 1 root cause: com.bumptech.glide.load.HttpException(Failed t..