개요 ‘Google Play 스토어'를 통해 설치된 앱이 있는 경우에도 APK파일을 통해 업데이트를 하려고 했지만 ‘패키지가 기존 패키지와 충돌하여 앱이 설치되지 않았습니다’ 라며 설치가 정상적으로 되지 않는 증상 과정 # adb install -r [apk파일 이름] 명령어를 통해서 연결 된 디바이스에 앱을 설치할 수 있다. 기존 설치된 패키지의 versionCode가 동일하거나 versionName이 동일한 경우 발생한다는 얘기가 있어서 버전을 모두 올린 후에 시도 → 해결 안 됨 Google Console에서 기존 배포된 APK(배포 APK와 원본 APK 중 배포 APK 선택)를 다운로드 받아서 먼저 설치 후 새로운 APK 설치 시도 → 해결 안 됨 Google Console에서 기존 배포된 원본 ..
대기업에서 제조한 일반 스마트폰 단말기에서는 좀 처럼 발생하지 않지만 마이너한 제조사의 일부 키오스크나 단말기 등에서는 위 처럼 'Unknown Device'라고 뜨는 경우가 있다. 저렇게 뜨더라도 UI 자체가 빌드 & 실행이 가능해 보인다. 그래서 Run App(^R)을 해보면? 이렇게 실패가 되는 경우가 있다. 이럴 때 ADB에 무선으로 디버깅 설정을 하게 되면 정상적으로 빌드 & 실행을 할수 있게 된다. ADB 무선 디버깅 설정 방법 1. $cd ~/Library/Android/sdk/platform-tools 2. $./adb devices (현재 연결된 디바이스 리스트 확인) 3. $./adb tcpip 5555 ( 무선으로 디버깅을 하기 위한 5555번 포트를 오픈 / 정확한 원인은 모르겠지만..
다른 프로젝트(A)에서 사용하던 것을 가져다가 작업중인 프로젝트(B)에서 사용하려고 하였지만, native 함수를 호출 할때마다 UnsatisfiedLinkError가 발생하였다. 호출하는 패키지명이 달라서 발생하는 문제인데, 다른 프로젝트(A)의 '현재 파일의 패키지 명 + 메소드명'으로 호출하기 때문에 native파일 내에서는 존재하지 않는 함수가 되어버린다. 그래서 패키지명을 동일하게 변경해주면 오류가 발생하지 않는다.( A / [PackageName] / [Filename].so = B / [PackageName] / [Filename].so)
ANR 및 비정상 종료 보고서를 통해 버그들을 수정하던 중 이런 경고가 뜨길래 프로가드에 대해 알아보았다.난독화 되어있는 프로젝트가 아니라서 난독해제 파일을 따로 업로드할 필요는 없어 보인다. ProGuard- 코드 난독화를 위한 소프트웨어- 사용하지 않는, 불필요한 메소드는 제거하여 최대한 단일덱스로 동작할 수 있도록 도움을 줌.- 제거 후 남은 코드를 난독화하여 APK파일의 리버스 엔지니어링(역공학)을 어렵게 할 수 있다.- 보안에 민감한 앱의 경우 유용함. 단일덱스 파일(DEX)- Dalvik Executable의 약자로 실행 가능한 바이트코드 파일- 메소드의 최대 개수가 65,536개( 라이브러리 메소드 + 사용자 작성 메소드 )로 제한 (= 64K 참조제한)- 메소드의 개수가 많아 사양을 초과할..
- Total
- Today
- Yesterday
- zip
- Monterey
- png
- 12.5
- env: python
- multiple commands produce
- multidex
- ReactNative 한글
- WKwebview
- DEX
- jpeg
- Podfile
- local
- TextInput 한글
- mac command
- 프로가드
- proguard
- Gif
- F
- idea
- HTML
- uicollecionview
- idea command
- cocoapods
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |