이 글의 성격은 무엇인가요?
질문 / 문제 해결
내용을 설명해주세요
안녕하세요. Apps in Toss 미니앱에서 getTossShareLink()를 이용해 커스텀 OG 이미지를 적용하려고 하는데, 전달한 이미지 대신 기본 Apps in Toss 공유 이미지가 표시되어 문의드립니다.
현재 @apps-in-toss/framework 버전은 2.10.10이며, 아래와 같은 방식으로 호출하고 있습니다.
const shareLink = await getTossShareLink(
intoss-private://appsintoss?_deploymentId=${encodeURIComponent(deploymentId)},
OG_IMAGE_URL,
);
await share({ message: shareLink });
deploymentId는 공식 getSchemeUri()를 통해 최초 진입 스킴의 _deploymentId 값을 가져와 사용하고 있습니다.
OG_IMAGE_URL에는 외부에서 접근 가능한 Firebase Storage HTTPS 이미지 URL을 사용하고 있으며, 이미지는 공식 OG 가이드에 맞춰 1200×600px로 제작했습니다.
SDK 내부 구현도 확인해보았습니다. Sandbox 환경에서는 isMinVersionSupported()가 true를 반환하기 때문에 getTossShareLinkV1() fallback이 아닌 V2 경로를 사용하며, 아래와 같이 ogImageUrl이 Native bridge에 전달되는 것을 확인했습니다.
const { shareLink } = await safePostMessage(‘getTossShareLink’, {
url: path,
ogImageUrl,
});
또한 처음에는 intoss://realtime-weather를 사용해 테스트했으나, 공식 문서의 출시 전 테스트 방법을 확인한 뒤 현재는 QR 테스트로 진입한 스킴의 _deploymentId를 이용하여
intoss-private://appsintoss?_deploymentId=…
형식으로 변경해서 다시 테스트했습니다.
하지만 두 방식 모두 전달한 커스텀 OG 이미지가 표시되지 않고 미니앱의 기본 공유 이미지(앱 아이콘)가 표시됩니다.
최근 테스트에서 생성된 공유 링크:
확인 부탁드리고 싶은 부분은 다음과 같습니다.
Sandbox/콘솔 테스트 환경에서도 getTossShareLink(path, ogImageUrl)의 커스텀 OG 이미지 기능을 지원하는 것이 맞는지
intoss-private://appsintoss?_deploymentId=…를 사용하는 현재 테스트 방식이 올바른지
ogImageUrl에 Firebase Storage의 공개 HTTPS URL을 사용할 수 있는지
현재와 같이 ogImageUrl을 전달했음에도 기본 OG 이미지로 생성되는 경우 추가로 필요한 설정이나 확인해야 할 조건이 있는지
확인 부탁드립니다. 감사합니다.

