Flutter WASM
Flutter가 업데이트 되면서 기존에 쓰던 코드가 동작하지 않는다.
그것은 바로 키체인과 플러터 앱과 통신하는 부분이다.
플러터에서 WASM 빌드를 지원하기 위해서 기존 방식을 싹 바꿔버렸다.
어쩌냐 따라주는 수 밖에.
기존에 만들어 둔 키체인 함수들은 사용이 안돼서, 새로운 방식으로 바꿔야 한다.
그런데 이 새로운 방식에 대한 예가 부족하다. 그래서 좀 고생했다.
extension SteemKeychainGetter on web.Window {
@JS('steem_keychain')
external JSObject? get steemKeychain;
}
extension type SteemKeychain(JSObject _) {
@JS('requestHandshake')
external void requestHandshake(JSFunction callback);
@JS('requestVote')
external void requestVote(JSString username, JSString permlink,
JSString author, JSString weight, JSFunction callback,
[JSAny? rpc]);
}
// call
steemKeychain.requestVote(
'etainclub'.toJS,
'525804-eversteem'.toJS,
'etainclub'.toJS,
'9000'.toJS,
jsCallback,
);
간단해 보이지만, 되는 방법을 찾기 위해 고생했다.
그리고 다른 여러 키체임 함수들도 구현해야 한다.
그래도 포기하지 않고 시도하니 해결할 수 있었다.
Posted through the ECblog app (https://blog.etain.club)