문의 시 사용하시는 SDK 버전 정보와 플랫폼(Android / iOS)를 알려주세요.
sdk : 1.4.2 , ios
플러터에서 메세지, 나에게 보내기를 하려고합니다.
main() 에 다음과 같이 초기화를 하였고
KakaoSdk.init(nativeAppKey: ‘${YOUR_NATIVE_APP_KEY}’);
var defaultText = TextTemplate(text: """
카카오톡 공유는 카카오톡을 실행하여
사용자가 선택한 채팅방으로 메시지를 전송합니다.
""", link: Link(webUrl: Uri.parse("https://developers.kakao.com"), mobileWebUrl: Uri.parse("https://developers.kakao.com")));
try {
await TalkApi.instance.sendDefaultMemo(defaultText);
print('나에게 보내기 성공');
} catch (error) {
print('나에게 보내기 실패 $error');
}
}
나에게 보내기 실패 KakaoClientException: authentication tokens don’t exist.
다음과 같은 에러가 나옵니다.
무엇을 더 해야 할까요?
안녕하세요.
로그인 이후 사용하신걸까요?
해당 메시지는 사용자의 유효한 접근토큰을 SDK가 갖고 있지 못할 때 발생합니다.
1개의 좋아요
저도 같은 오류가 나는데 어떻게 해결해야 하나요?
import 'package:flutter/material.dart';
import 'package:kakao_flutter_sdk/kakao_flutter_sdk.dart';
class KakaoTest extends StatefulWidget {
@override
State<KakaoTest> createState() => _KakaoTestState();
}
class _KakaoTestState extends State<KakaoTest> {
@override
void initState() {
// TODO: implement initState
super.initState();
KakaoSdk.init(nativeAppKey: '내 키');
// init 체크
}
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'KakaoTalk Demo',
home: Scaffold(
appBar: AppBar(
title: Text('KakaoTalk Demo'),
),
body: Center(
child: ElevatedButton(
child: Text('Send Message'),
onPressed: () async {
var params = TextTemplate(
text: "Hello, World!",
link: Link(
webUrl: Uri.parse("https://www.naver.com"),
mobileWebUrl: Uri.parse("https://m.naver.com")),
);
try {
await TalkApi.instance.sendDefaultMemo(params);
} catch (e) {
print(e.toString());
}
},
),
),
),
);
}
}
이렇게 했는데 뭐가 문제일까요?
안녕하세요.
사용자가 로그인하지 않은 상태(접근토큰을 받지 못한 상태)에서 공유하기 기능 (나에게 보내기) 사용 시, 오류가 발생하게 됩니다.
1개의 좋아요