ImageSender is a React Native app designed to upload images from smartphones to SORACOM Harvest Files. This app supports authentication for both root users and SAM users, allowing images to be selected and uploaded from the camera or photo library.
- Authentication for root and SAM users
- Image selection from camera or photo library
- Upload images to SORACOM Harvest Files
- Manage authentication information and log out
- Node.js
- npm or yarn
- Xcode (for iOS development)
- Android Studio (for Android development)
git clone https://github.com/your-username/ImageSender.git
cd ImageSenderyarn install
# or
npm install- Install CocoaPods:
cd ios
pod install
cd ..- Add the following permissions to Info.plist:
<key>NSCameraUsageDescription</key>
<string>We need access to your camera to take pictures.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>We need access to your photo library to select pictures.</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>We need access to your photo library to save pictures.</string>- Add the following permissions to AndroidManifest.xml:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />- Create a Keystore (for release build)
keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias- Configure gradle.properties Create a gradle.properties file in the root directory of the project and add the following:
MYAPP_RELEASE_STORE_FILE=my-release-key.jks
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=your_store_password
MYAPP_RELEASE_KEY_PASSWORD=your_key_passwordnpx react-native run-iosnpx react-native run-androidOpen Xcode and load ImageSender.xcworkspace. Then select your build target and build the project.
cd android
./gradlew assembleRelease- Launch the app and enter your authentication information to sign in.
- Upon successful authentication, proceed to the image selection screen.
- Press the Select Image button to choose an image from the camera or photo library.
- Enter the file path for the upload destination and press the Upload Image button to upload the image.
- Press the Sign out button to log out if needed.









