List
학습 타겟 지우는 방법 재 질문
Posted Date: 2024-07-16 0:33     Edited Date: 2024-07-19 20:02     Writer: system

이전에 다른 질문 글에서 답변 주신 것과 다른 개발자가 작성한 질문에 보면

Stop() -> Destroy() -> Start() -> Add() -> Load() 순서로 진행하면 학습 타겟을 지울 수 있다고 답변을 주셨는데요.

해당 답변에 맞춰서 아래와 같이 코드를 작성했습니다.

```

private async UniTaskVoid ResetTrackerTask()
{
    TrackerManager.Instance.StopTracker();
    TrackerManager.Instance.DestroyTracker();

    await UniTask.Delay(TimeSpan.FromSeconds(1));
    
    // 다시 시작!
    TrackerManager.Instance.StartTracker(TrackerManager.TRACKER_TYPE_CLOUD_RECOGNIZER);
}

```
에디터에서는 정상적으로 나오는데 안드로이드 및 IOS에서는 Invalid Signature가 화면에 표시됩니다.

유니티만 그런건가? 싶어서 IOS 네이티브로 테스트를 해봤는데도 동일하게 Destory()가 호출되면 Invalid Signature가 화면에 표시되더군요.

혹시 잘못된 방법으로 코드를 작성했다면... 확실하고 재대로된 리셋 방법을 알 수 있을까요? Add() 및 Load()는 클라우드 이미지 인식을 사용할 거라서 생략했습니다. 클라우드 이미지 인식-> 클라우드 이미지 인식 형태로 다른 인식으로 변경하지 않고 클라우드 이미지 인식만 사용하며 단순히 이미지 맵을 리셋하는 것이 목적입니다.


1. SDK Version:
2. Development Environment: (eg. Unity-Android, Unity-iOS, Native Android, Native iOS)
3. Tracker/Scanner:
4. License Type(Free / Pro-One Time Fee / Pro-Subscription / Enterprise):
5. Target Device(Optional):

We can assist better if you attach screenshots of issues.

Posted Date: 2024-07-16 6:40     Edited Date: 2024-07-16 6:40     Writer: sejin

MAXST AR SDK를 사용해 주셔서 감사합니다.

Destroy 하지 않고 캐시를 클리어하는 방법에 대해서 알려드리겠습니다.

 

1. RemoveTrackerData() 를 호출하고, LoadTrackerData()를 호출합니다.

2. CloudRecognizerCache를 CLEAR합니다.

 

자세한 코드를 원하시는 경우 메일 주소를 남겨주세요.

메일로 관련 코드 전달해드리도록 하겠습니다.

 

참고로 이전 답변 관련해서 말씀드리면

Destory() 호출 후 다시 Tracker를 시작하기 위해서는 라이선스 등록하는 부분을 추가해줘야합니다.

 

감사합니다.

 

Shelden

MAXST Support Team

Posted Date: 2024-07-16 8:29     Edited Date: 2024-07-16 8:29     Writer: system

답글 감사드립니다. 혹시 그러면 bnm000215@naver.com으로 자세한 코드 전달해주시면 감사드리겠습니다!

Posted Date: 2024-07-16 23:29     Edited Date: 2024-07-16 23:29     Writer: sejin

메일로 관련 코드 전달해드렸습니다.

감사합니다.

 

Shelden

MAXST Support Team

Posted Date: 2024-07-19 19:58     Edited Date: 2024-07-19 20:02     Writer: system

혹시 다른 개발자 분들도 전달 받은 이메일 내용이 궁금할 수 있으니 복붙해서 남깁니다.

------

안녕하세요? 맥스트 지원팀입니다.

요청하신 코드 전달해드립니다


1. CloudTrackerSample.cs에 다음 내용을 추가합니다.

```
public void Clear()
{
TrackerManager.GetInstance().RemoveTracker();
TrackerManager.GetInstance().LoadTracerData();

CloudRecognizerCache.GetInstance().Clear();
}

```

2. CloudRecognizerCache.cs에 다음 코드를 추가합니다.
```
public void Clear()
{
cloud.Clear();
}

```