Skip to Content
トラブルシューティング

トラブルシューティング

まず、OneKey ウォレットプロバイダー、ハードウェアトランスポート、QR のエンコード/デコードのどこで失敗しているかを特定します。メソッド、エラーコード、SDK/ウォレットのバージョン、失敗した手順を記録してください。

dApp が OneKey を見つけられない

  • テスト中のブラウザープロファイルで、OneKey がインストール済みかつ有効であることを確認します。インストール後は dApp を再読み込みしてください。
  • ページが利用可能になってから、ブラウザー側のコードでプロバイダーを検出します。サーバーレンダリング中に window にアクセスしないでください。
  • 対象チェーンのプロバイダーを使用します。別のウォレットが注入したプロバイダーを OneKey のものと仮定しないでください。
  • dApp クイックスタートまたは使用中のウォレット UI ライブラリのガイドに従ってください。

アカウントへのアクセスや署名が拒否される

拒否は正当なユーザーの選択です。保留状態を解除し、ユーザーが明示的に再試行できるようにしてください。許可や署名のプロンプトを繰り返し開かないでください。

アカウントやネットワークが変わった場合は、次のリクエストを作る前にアプリの状態を更新してください。Ethereum では次を参照: アカウントへのアクセス および プロバイダー API.

USB デバイスが一覧に表示されない

  1. ブラウザーが WebUSB に対応し、ページが安全なコンテキストで配信されているか確認してください。
  2. 接続ボタンなどのユーザー操作から USB 選択画面を開き、目的のデバイスを選択します。
  3. ケーブルを確認し、デバイスを使っている可能性のある別のアプリやブラウザータブを閉じます。
  4. 検出を再実行し、デバイスメソッドを呼ぶ前に空の結果を処理します。

WebUSB ガイドに従ってください。ネイティブモバイルと React Native BLE では要件が異なり、ブラウザーの USB 手順がすべてのトランスポートに適用されるわけではありません。

リクエストが無期限に待機する

SDK が PIN/パスフレーズの選択などの UI 応答や、デバイス上の確認を待っていないか確認します。呼び出し前にハンドラーを登録し、次の説明に従って個別のリクエストに応答してください: Core API ガイド.

デバイス操作を直列化してください。キャンセルや切断時には保留中の UI 状態を消去し、結果を報告します。結果が不確かな後に、署名やデバイス変更操作を自動再実行しないでください。

メソッドが未対応

デバイスとチェーンの対応リファレンスでメソッドを確認し、SDK とファームウェアのバージョンも確認します。あるチェーン、デバイス、トランスポートへの対応が、すべてのメソッドの対応を意味するわけではありません。

QR レスポンスをデコードできない

想定するレジストリタイプを使い、複数部分の QR レスポンスの全フラグメントを受信したか確認します。形式がリクエスト識別子を提供する場合は、返された応答を元のリクエストと照合してください。参照: Ethereum と EVM の QR ガイド.

問題を報告

失敗した統合を管理するリポジトリを選びます:

問題報告先
Hardware SDK、トランスポート、この開発者ポータルHardware SDK の Issue 
注入型ウォレットプロバイダーCross-inpage provider の Issue 
OneKey アプリまたはブラウザー拡張機能の動作アプリの Issue 
OneKey 製品の使い方に関するヘルプOneKey ヘルプセンター 

含める情報:

  • 期待する動作と実際の動作。
  • テストデータを使った最小限の再現例と、正確な手順。
  • SDK/パッケージのバージョン、実行環境、OS、トランスポート、および関連するデバイスモデル/ファームウェア。
  • メソッド名、エラーコード、機密情報を除いたエラーメッセージ。

リカバリーフレーズ、秘密鍵、PIN、パスフレーズ、認証情報、セッション識別子、未編集のウォレットログを投稿しないでください。脆弱性が疑われる場合は、公開 Issue に悪用方法を記載せず、対象リポジトリのセキュリティポリシーに従ってください。

最終更新日