77 lines
2.3 KiB
Markdown
77 lines
2.3 KiB
Markdown
|
|
# デバッグ手順
|
|||
|
|
|
|||
|
|
## エラーが発生した場合
|
|||
|
|
|
|||
|
|
### 1. フィルタリングされたログを取得
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Gemini APIのエラーのみ表示
|
|||
|
|
flutter logs | findstr /i "gemini api error"
|
|||
|
|
|
|||
|
|
# または、すべてのエラーを表示
|
|||
|
|
flutter logs | findstr /i "error exception"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2. 詳細ログを取得
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Flutter Inspectorを有効化してログを詳細表示
|
|||
|
|
flutter run --verbose > debug_log.txt 2>&1
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3. APIキーの確認
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# secrets.local.dart の内容を確認(APIキーは表示されません)
|
|||
|
|
type lib\secrets.local.dart | findstr /i "geminiApiKey"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 4. キャッシュのクリア
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Hiveキャッシュをクリア(アプリ内の開発者メニューから)
|
|||
|
|
# または、アプリをアンインストールして再インストール
|
|||
|
|
flutter clean
|
|||
|
|
flutter pub get
|
|||
|
|
flutter run
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## よくあるエラーと解決策
|
|||
|
|
|
|||
|
|
### Error 1: "API key not valid"
|
|||
|
|
**原因**: APIキーが無効、または設定されていない
|
|||
|
|
**解決策**:
|
|||
|
|
1. Google AI Studioで新しいキーを発行
|
|||
|
|
2. lib/secrets.local.dart に正しく設定されているか確認
|
|||
|
|
3. `flutter run` を再実行
|
|||
|
|
|
|||
|
|
### Error 2: "Rate limit exceeded"
|
|||
|
|
**原因**: 1日の制限(20回)に達した
|
|||
|
|
**解決策**:
|
|||
|
|
1. 開発者メニューでキャッシュサイズを確認
|
|||
|
|
2. 同じ画像を再度選択(キャッシュヒットするはず)
|
|||
|
|
3. 明日まで待つ、またはOllama統合を実装
|
|||
|
|
|
|||
|
|
### Error 3: "Empty response from Gemini"
|
|||
|
|
**原因**: Gemini APIが応答を返さなかった
|
|||
|
|
**解決策**:
|
|||
|
|
1. ネットワーク接続を確認
|
|||
|
|
2. 画像サイズを確認(圧縮後100KB前後が推奨)
|
|||
|
|
3. 再試行ボタンをタップ
|
|||
|
|
|
|||
|
|
### Error 4: "Lost connection to device"
|
|||
|
|
**原因**: USBケーブルの物理的な切断、またはデバイスのスリープ
|
|||
|
|
**解決策**:
|
|||
|
|
1. USBケーブルを再接続
|
|||
|
|
2. デバイスのスリープ設定を「なし」に変更
|
|||
|
|
3. `flutter devices` でデバイスが認識されているか確認
|
|||
|
|
4. `flutter run` を再実行
|
|||
|
|
|
|||
|
|
## 問題が解決しない場合
|
|||
|
|
|
|||
|
|
以下の情報を提供してください:
|
|||
|
|
1. `flutter doctor -v` の出力
|
|||
|
|
2. `flutter logs` の最後の100行
|
|||
|
|
3. エラーメッセージのスクリーンショット
|
|||
|
|
4. 実行した操作の詳細(どの画面で、何をした時にエラーが出たか)
|