Experimental Android/IOS apps based on ringcentral-embeddable and cordova
- Running in Android
- Running in IOS
- Use web worker
- Deploy to github pages
- Install Nodejs and npm(recommend using nvm).
- Install cordova:
npm i -g cordova - Android: Follow the cordova guide to prepare for Android development: https://cordova.apache.org/docs/en/latest/guide/platforms/android/index.html
- IOS: Follow the cordova guide to prepare for ISO development: https://cordova.apache.org/docs/en/latest/guide/platforms/ios/index.html, also requires paid apple developer account.
- ImageMagick installed (Mac:
brew install imagemagick, Debian/Ubuntu:sudo apt-get install imagemagick, Windows: See here, install "Legacy tools") - cordova-splash:
npm install cordova-splash -g - cordova-icon:
npm install cordova-icon -g - A developer account in developer.ringcentral.com(free to register)
- Create an app in developer.ringcentral.com, Create a RingCentral app with platform type - "Browser Based", and add permissions
Edit Message,Edit Presence,Internal Messages,Read Accounts,Read Call Log,Read Contacts,Read Messages,Read Presence,RingOut,SMS,Call ControlandVoIP Callingto your app.
# clone project
git clone [email protected]:ringcentral/ringcentral-embeddable-mobile.git
cd ringcentral-embeddable-mobile
# install dependencies
npm run pre && npm i
# start proxy server
npm run proxy
# will get https://xxxx.ngrok.io -> localhost:6066
# Remember https://xxxx.ngrok.io as serverUrl
# create env file, then fill .env with https://xxxx.ngrok.io as RINGCENTRAL_APP_SERVER and RINGCENTRAL_CLIENT_ID and RINGCENTRAL_CLIENT_SECRET from your app credentials,
# set https://xxxx.ngrok.io/rc-oauth as callback url in app setting
cp sample.env .env
# start server
npm start
# start client
npm run c
# prepare cordova
npm run prepare
# run Android app, make sure you have simulator or real android device ready
npm run a
# run IOS app, make sure you have real IOS device and paid developer ID ready,
# and open platforms/ios with xcode and config build an debug env, may need set workspace validate to yes
npm run i# build for github pages, remember to push to github
npm run gh
# build for android
npm run build-android
# check platforms/android/app/build/outputs/apk/debug/app-debug.apk
# Build with online resources for IOS App
npm run build-ios
- Edit icon/splash: Just replace src/app/icon.png or src/app/splash.png
- Edit config/plugin: Edit src/app/config.xml
- Add more server side function: Edit src/server/app/app.js
- **Add more front end functions: Edit src/client/extra/index.js
MIT