naver / nam-sdk-ios

Other
4 stars 3 forks source link

광고 refresh 관련 문의 #15

Closed leejj121 closed 1 year ago

leejj121 commented 1 year ago

안녕하세요. 티맵 홈에서 네이버 광고가 추가하였는데요. 내부 시나리오중 다른 화면전환후 복귀 시 새로운 광고를 노출하는 시나리오가 있습니다.

관련해서 초기 광고 load 후 화면 재 진입시,, GFPAdLoader 의 loadAD() 를 호출해서 새로운 광고를 노출하고 있는데요.

관련 방식으로 처리시,, 메모리 릭이 발생하고 있습니다. loadAD()가 1번 이상 호출시, 메모리 릭이 발생하는데, 확인 부탁드립니다.

NAMSDK v 4.4.0

shhan-sys commented 1 year ago

@leejj121 님, 안녕하세요 유닛 id 어떤걸 사용하고 계실까요? GFPAdLoader 는 일회용 객체입니다. 혹시 한 객체에 두번 이상 loadAd()를 호출하고 계신가요?

leejj121 commented 1 year ago

아래와 같은 ID 를 사용하고 있습니다. "Tmap_AdUnit_main_ios-N774476171" "Tmap_AdUnit_top_ios-N774476171"

그럼, 광고 재로드를 하려면, GFPAdLoader 인스턴스부터 새로 생성하면 될까요? 그리고 loadAD() 재호출에 대한 메모리 릭은 수정이 되어야 할것 같습니다.

shhan-sys commented 1 year ago

네, 광고 재로드를 하려면 GFPAdLoader 인스턴스부터 새로 생성해주시면 될 것 같습니다. 메모리 릭 시나리오가 혹시 광고 호출 후 짧은 시간 ( 1초 안쪽 ) 에 재호출하는 케이스일까요? 해당 케이스라면 수정된 버전이 있는데 NAM쪽에는 아직 배포가 되지 않아서요, 배포 이후에 말씀 드리겠습니다.

shhan-sys commented 1 year ago

@leejj121 님, 4.3.5 배포된 버전으로 확인 부탁드리겠습니다

leejj121 commented 1 year ago
func requestAD() -> Bool {
    guard let vc = rootViewController else { return false }
    let adParam = GFPAdParam()
    self.adLoader = GFPAdLoader(unitID: config.type.unitID(), rootViewController: vc, adParam: adParam)

    let nativeSimpleOption = GFPAdNativeSimpleOptions()
    let simpleRenderingSetting = GFPNativeSimpleAdRenderingSetting()
    nativeSimpleOption.simpleAdRenderingSetting = simpleRenderingSetting

    self.adLoader?.setNativeSimpleDelegate(self, nativeSimpleOptions: nativeSimpleOption)
    self.adLoader?.delegate = self
    self.adLoader?.loadAd()
    return true
}

광고 재로드 처리를 위처럼 변경하였는데요, 동일하게 메모리릭이 나오는것으로 보입니다. 그리고 재 요청 시간은,,화면 전환시간이라 1초 이상의 시간에서 나타납니다.

현재 사용 버전이 4.4.0 인데, 4.3.5로 내려서 확인해보면 될까요?

shhan-sys commented 1 year ago

아, 죄송합니다 @leejj121 님 버전을 오기재했네요 4.5.3 버전으로 테스트 부탁드리겠습니다

leejj121 commented 1 year ago

네. 4.5.3에서는 발생안하는것 확인했습니다. 관련해서 버전 릴리즈 노트 페이지가 있을까요?

shhan-sys commented 1 year ago

네, 확인 감사합니다. 해당 페이지에서 확인해주시면 될 듯 합니다. https://naver.github.io/nam-sdk-guide/ios/common/release_note/#453