2021-02-17
画像のトリミング
ivpusic/react-native-image-crop-picker を使って実装した。
openPicker()
が iOS と Android で返却値が異なることがあるのでアップロードする際には注意が必要。
具体的には iOS ではfilename
というプロパティが存在するが、Android では存在しない。(他にもいくつかあった)
画像のアップロード
Content-Type
を変更する必要があった。
今回はmultipart/form-data
を設定して API を実行した。
以下のリンクを参考にした。
- WebAPI でファイルをアップロードする方法アレコレ - Qiita
- Upload to server · Issue #38 · ivpusic/react-native-image-crop-picker
TouchableOpacity
特定の要素をタッチ可能にしてくれるコンポーネント。 画像タップ時にイベント発火させるために使用した。
TouchableOpacity · React Native を参考にした。
画面全体にオーバーレイ
ローディングのオーバーレイがステータスバー・ナビゲーションバーに適用されていなかったので修正した。 joinspontaneous/react-native-loading-spinner-overlay の実装を参考にして、画面全体にオーバーレイがかかるようにした。
unexpected element <queries> found in <manifest>
Android 向けにビルド実行したときに発生したエラー。 gradle のバージョンが適切でないことが原因だった。
画像のトリミング用に追加したライブラリの readme に利用可能なバージョンがちゃんと書かれていた。 ドキュメントは読もう。
android - How to fix "unexpected element <queries> found in <manifest>" error? - Stack Overflow を参考にした。