본문으로 건너뛰기
버전: 4.6.2-saas

Android 에이전트 FAQ

Q. 난독화로 인해 오류가 발생해요.

A. 앱 배포 시 코드 축소, 난독화, 최적화 를 하는 경우, NetFUNNEL Android 에이전트는 제외되어야 합니다. 이를 위해 proguard-rules.pro 프로가드 규칙 파일에 아래 내용을 포함시켜 난독화에서 제외시킬 수 있습니다.

# NetFUNNEL Android 에이전트의 주요 패키지 및 클래스 보호
-keep class com.nf4.** { *; }

# NetFUNNEL Android 에이전트 내부에서 사용하는 리플렉션 관련 클래스 및 멤버 유지
-keepclassmembers class com.nf4.** { *; }

Q. 디버깅용 로그 메시지를 확인하고 싶어요.

A. 디버깅을 위해 NetFUNNEL Android 에이전트에서 발생하는 로그 메시지를 확인하는 방법은 다음과 같습니다:

  1. 초기화 함수의 printLog=true 설정

  2. Android Studio > Logcat > package:mine NetFUNNEL 확인

정보

빌드 환경별 NetFUNNEL Android 에이전트 로그 사용 가이드

디버깅 시에는 printLog 값을 true로 사용하길 권장하나, 앱 배포 시 false 사용을 권장합니다.

Q. 콜백 함수에서 UI 업데이트하고 싶어요.

A. 콜백 함수 사용 중 UI 업데이트가 필요할 때에는 주의가 필요합니다. 비동기로 동작하는 NetFUNNEL 콜백 함수 내에서 Toast 등의 UI 요소를 직접 호출하면 java.lang.NullPointerException 오류가 발생할 수 있습니다.

따라서, 넷퍼넷 콜백 함수를 사용할 때에는 Activity.runOnUiThread(Runnable) 메소드를 사용하여 UI를 업데이트를 비동기 스레드에서 메인 스레드로 전환하여 사용해야 합니다.

예를 들어, 아래와 같은 방식으로 모든 UI 관련 작업을 메인 스레드에서 안전하게 실행할 수 있습니다.

activity.runOnUiThread {
Toast.makeText(activity, "성공적으로 진입하였습니다.", Toast.LENGTH_SHORT).show()
}

Q. HTTP 통신 시 오류가 발생해요.

A. NetFUNNEL Android 에이전트는 기본적으로 HTTPS 통신을 권장하며, HTTP 통신을 사용할 경우 Android 보안 정책에 따라 오류가 발생합니다. 그러나 network_security_config.xml 설정 파일 생성을 통해 HTTP 통신을 허용할 수 있습니다.

  1. res/xml/network_security_config.xml 파일 생성
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">{{DOMAIN_URL}}</domain>
</domain-config>
</network-security-config>
  1. AndroidManifest.xml 설정 확인
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
android:networkSecurityConfig="@xml/network_security_config"
... >
</manifest>

Q. 에이전트 버전을 확인하고 싶어요.

A. 에이전트의 버전을 확인하기 위해 getVersion() 함수를 사용할 수 있습니다.

함수명파라미터반환 값설명
getVersionN/AStringNetFUNNEL 에이전트의 버전을 반환(확인)하는 함수