Documentation by "WRTeam "

eShop - Flutter E-commerce Full App


Author: WRTeam
Contact: CodeCanyon Profile

Thank you for purchasing the code. If you have any questions that are beyond the scope of this help file, please feel free to message me via my user page contact form here. Thanks so much!


How to Setup Java jdk-11 on windows

  1. If your System already have Java jdk-8 installed then you can skip this step.
  2. Download Java-11 jdk by clicking below link.
    (JAVA jdk-11)
  3. Download Java-11 JDK for your version 32 bit or JDK download 64 bit.

  4. Flutter UI Component

  5. When you click on the Installation link the popup will be open. Click on I reviewed and accept the Oracle Technology Network License Agreement for Oracle Java SE development kit and you will be redirected to the login page. If you don’t have an oracle account you can easily sign up by adding basics details of yours.


  6. Flutter UI Component

  7. Once the Java JDK 11 download is complete, run the exe for install JDK. Click Next

  8. Flutter UI Component

  9. Select the PATH to install Java in Windows… You can leave it Default. Click next.

  10. Flutter UI Component

  11. Once you install Java in windows, click Close

  12. Flutter UI Component

  13. Now set your enviournment variable
  14. From the Start search bar in , type ‘env’ and select Edit environment variables for your account

  15. Flutter UI Component

  16. Under User variables check if there is an entry called Path:
  17. Click on Edit. then Dialog will open from it, now click on new and Copy the path of bin folder which is installed in JDK folder. then Paste Path of bin folder in Variable value. Click on OK Button.
  18. Flutter UI Component

  19. Repeat above process but this time set variable name JAVA_HOME instead of "path/PATH", and set JDK bin folder path in the variable value.
  20. Now Restart your pc for changes to take effect

  21. Now check everything is ok or not
  22. Go to command prompt and type javac commands.
    If you see a screen like below, Java is installed.

  23. Flutter UI Component


How to Setup Flutter in Android Studio

  1. Download Lastest Flutter SDK from below link.in that click on flutter_window_xxx.zip button.
  2. Flutter sdk Here

  3. Flutter UI Component

  4. Extract the zip file and copy flutter folder into your desired installation location for the Flutter SDK (eg. C:\src\flutter; do not install Flutter in a directory like C:\Program Files\).

  5. Inside Flutter folder find flutter_console.bat. Start it by double-clicking. <\li>

    Flutter UI Component
  6. Now set your enviournment variable
  7. From the Start search bar in , type ‘env’ and select Edit environment variables for your account

  8. Flutter UI Component

  9. Under User variables check if there is an entry called Path:
  10. Click on Edit.new Dialog open from it click on new and copy full path to flutter\bin as its value
  11. Now Restart your pc for changes to take effect
  12. Flutter UI Component

  13. Now check everything is ok or not
  14. open cmd and do following shown in below picture

  15. Flutter UI Component

  16. Now open Android Studio and create new flutter project then select your flutter sdk file to the location where we have downloaded earlier and that's it

  17. Flutter UI Component


Upgrade to flutter 2.x error

  1. for upgrade go to terminal in android studio and type flutter upgrade it will automatically pick latest version with stable channel
  2. If you have updated flutter 2.x after upgrade run flutter doctor. and in flutter doctor if you see below error like licence status unknown.

  3. eShop

  4. then go to sdk manager from upar right corner then go to android sdk inside that sdk tools and then uncheck hide obsolute package then check android sdk command line tool latest then apply and then ok. it will download latest version as shown in below fig.

  5. eShop

  6. now run flutter doctor again your error will be removed

How to first run project

    eshop

  1. Go to file > open > then choose your downloaded project location then your project will open.and if you see upar right part 'enable dart support' then click that and go to pubspec.yaml file and in uper right part click pub get or package get and then press run button.

  1. If your are getting error then you can perform below hack
  2. if in your system firewall is on, then you can temporary disable firewall and then try to run project
  3. if your flutter channel is not stable then you need to change it to stable. you can check your flutter channel by terminal.
  4. go to android studio in bottom line click on terminal, in terminal write flutter channel.as shown below.

  5. eshop

  6. if your are not in stable then write flutter channel stable
  7. go to Tools > Flutter > Flutter Clen.
  8. go to file > invalidate cache/ restart

How to change AppName

    eshop

  1. For Android, to change label that is shown below android app icon, open android > app > src > main > open mainfest.xml and inside that label change that string as shown in below fig.

  2. eShop

  3. For iOS, to change label that is shown below ios app icon, open ios > Runner > Info.plist inside that CFBundleName change that string as shown in below fig.

  4. eShop

How to change App Version

  1. go to pubspec.yaml
  2. EX.Update version:A.B.C+X in pubspec.yaml.
  3. For Android:
  4. A.B.C represents the versionName such as 1.0.0. X (the number after the +) represents the versionCode such as 1, 2, 3, etc.
  5. Do not forget to execute flutter packages get, flutter build or flutter run after this step


  6. eshop

  7. For iOS
  8. A.B.C represents the CFBundleShortVersionString such as 1.0.0. X (the number after the +) represents the CFBundleVersion such as 1, 2, 3, etc.
  9. Do not forget to execute flutter packages get, flutter build or flutter run after this step

How to Change app color

  1. To change app color, your need to add your color code in lib > helper> color.dart
  2. In flutter color code start from 0xff so your have to add your color hex after this 4 digit.your can change primary,second,fontcolor as shown in below image.

  3. eShop


How to change package name

  1. In the Android pane, click on the little gear icon.Uncheck/Deselect the Compact Empty Middle Packages option.

  2. eShop

  3. Your package directory will now be broken up in individual directories.

  4. eShop

  5. Individually select each directory you want to rename, and: Right-click it Select Refactor Click on Rename current In the Pop-up dialog.

  6. eShop

  7. Enter the new name and hit Refactor.Allow a minute to let Android Studio update all changes.

  8. eShop

  9. Now press ctrl + shift + R and replace old packagename with your new packagename

  10. eShop

  11. For ios open ios > Runner > info.plist > there is the key CFBundleIdentifier change the string value for that as shown in below

  12. eShop

    eShop

How to Change Images in app

  1. Go to Assets > images folder. here you have to change all image to your app image according to diffrent folder diffrent dimension images is used

  2. eShop


How to Fit xy(fill) product image in box

  1. There is two possibility either you can show image as you upload in panel without stretch in app.or you can fill product image in box with stretch
  2. it depend on you, if you upload image with background then it is preferrable to fill image
  3. and if you upload project with all same background then you can set fill image false

  4. eShop


How to Change language String value

  1. Go to lib > Language > go to your language code.here you can change any string as you want

  2. eShop


How to Add/Remove language

  1. To Add New Languge
    • If you want to Add new language then copy one json file from language folder and add it to languge folder then rename it to language code of your new language
    • now open that json file and change value of string to your language string. remember here you need to add all string in file if any one string is missing in any file then when you change that language then it will give you error. so add all string in all json file.

    • eShop

    • now search in whole project "en", by pressing ctrl shift f. now where you see languge code in list add your new lanaguge code there.

    • eShop

    • now go to MyProfile.dart file inside that go to initState method inside that in languageList add your new languge string name here as shown in below image.now add this new language string to all json file here you have to use same string name as you have specified in language list in left side.in right side give language name

    • eShop

    • Add your language name in each and every language file

    • eShop

  2. To remove language
    • now search in whole project "en", by pressing ctrl shift f. now where you see languge code in list remove lanaguge code that you don't want.

    • eShop


How to change default language of app

  1. Go to lib > Helper > session.dart inside that go to getLocale() method. here you have to change default language code "en" to your language code.

  2. eShop


How to Remove Dark Theme

  1. Go to lib > MyProfile.dart inside that go to _getDrawerFirst() method. here you have to comment change theme by doing double slash before change theme tile as shown in below image

  2. eShop

  3. now go to main.dart here in void main() method above runapp you have to add one line and comment above code as shown in below image

  4. eShop


How to Change App font

  1. Go to Assets > font folder .here you have to copy your font.now go to pubspec.yaml in font section change your font name as shown in below image.

  2. eShop


How to Change server url

  1. go to your admin panel in that go to system and inside that client api key, here you have to copy API link as shown in below fig and paste it in app baseURL.
  2. eShop

  3. Go to lib > helper > constant.dart. here you have to change your API server url.
  4. don't forget to add slash after api keyword
    eShop


How to Change JWT Key

  1. go to your admin panel in that go to system and inside that client api key, here you have to copy secret key as shown in below fig and paste it in app jwt key.
  2. eShop

  3. Go to lib > helper > constant.dart. here you have to change your JWT Key.

  4. eShop


How to Create firebase project

  1. Go to firebase console.and then click on add project.

  2. eShop

  3. after that below given step will come. here you have to enter your project details.Enter your project name and then press on continue.then select email and then press continue.
  4. >
    eShop

  5. after that your project is created

  6. eShop

  7. For android,now first click on android

  8. eShop

  9. after that below given screen will appear, in that you have to enter your packagename and appname.and then click register app.

  10. eShop

  11. after that below given screen will appear, now click on download google-services.json.after that open the file and copy content of file and replace in android > app > google-service.son.

  12. eShop
    eShop

  13. now click on next next and in last step press continue to the console button.
  14. for ios,perform below step. now click on add app.

  15. eShop

  16. and then click on ios button.in this same as android step will be come here you have to enter your appname.then next and on next screen download google service info.plist file.
  17. eShop

  18. now copy the content of that file and replace in ios > Runner > GoogleServie-info.plist

  19. eShop

  20. now press next next on firebase console and that's it your project is created on ios.

How to enable Firebase Phone Authentication(OTP).

  1. Open your firebase console.
  2. Go to Authentication and open Sign-in method.
  3. Enable Phone Sign-in method and save.



  4. Now, we have to add sha1 and sha256 key in firebase, for that perform below given step for that you can do one of the below method
    1. From terminal
      • Go to the android folder. Right click gradlew file and select Open in Terminal as shown in below image.



      • Go to the terminal view and paste- gradlew signingReport as shown in below
      • for mac it should be ./gradlew signingReport


    2. From gradle
      • click on android > app > build.gradle. in upar right corner there is option open for editing in android studio.



      • then dialog come here choose new window.in new window wait until gradle build finish after that in right side open gradle panel.in that go to android > app > signingReport.



  5. now take debug sha and sha256 will print copy that and add it in firebase console.and also add sha-256 to firebase console.




  6. now enable SafetyNet for use with Firebase Authentication.In the Google Cloud Console, enable the Android DeviceCheck API for your project.first make sure your correct project is selected then press enable button.



  7. Remember:

  8. When we are releasing apk then we need to add release sha in firebase panel otherwise otp will not work.
  9. after release you can get sha from play console here


  10. or another way you can also get release sha from below given command in cmd
  11. go to run and type cmd
  12. here first go to java jdk bin path
  13. then here edit this command and replace your keystore path and alias in this command keytool -list -v -keystore "D:\keystore\eShop.jks" -alias eShop
  14. then it will ask for password.enter and then it will show your release sha


  15. for ios you need to set following.
  16. Add custom URL schemes to your Xcode project:
    • Open your project configuration: double-click the project name in the left tree view. Select your app from the TARGETS section, then select the Info tab, and expand the URL Types section.
    • Click the + button, and add a URL scheme for your reversed client ID. To find this value, open theGoogleService-Info.plist configuration file, and look for the REVERSED_CLIENT_ID key. Copy the value of that key, and paste it into the URL Schemes box on the configuration page. Leave the other fields blank.
    • When completed, your config should look something similar to the following (but with your application-specific values):


How to Change default country code for OTP.


  1. go to sentOtp.dart file inside that go to setCountryCode() method here you have to change country code to your language code.



How to set Notification

  1. Get server key from your firebase project and set in panel.



  2. now add in admin panel>



  1. for ios your need to perform below given step
  2. In Xcode, open the project.
  3. In the Project Navigator (the left-hand menu), select the project icon that represents your app.
  4. In the top-left corner of the right-hand pane in Xcode, select your app's target.
  5. Navigate to the Capabilities tab.
  6. Enable Push Notifications.
  7. Check Remote Notifications and Background Fetch from Enabling Background Modes.



  8. APNs (Apple's Push Notification service) currently supports two types of connections: token-based (.p8) and certificate-based (.p12).you can follow either one of them

  9. For Token-based (.p8).

  10. Log in to the Apple Developer Portal.
  11. Navigate to Certificates, IDs & Profiles > Identifiers > App IDs and click the App ID associated with your app.
  12. On the screen for your App ID, check Capabilities > Push Notifications.





  13. Select App ID in next page & click continue.
  14. And then create Development SSL Certificate & Production SSL Certificate by adding CSR certificate. follow Apple's Create a certificate signing request instructions.
  15. Navigate to Certificates, IDs & Profiles > Keys Section and add a Universal key for Notifications,which you can use for more than one apps as well.
  16. >


  17. Just save and Download & keep it safe, as it will be downloaded only once.



  18. Then go to Firebase and add this .p8 file along with Your Key ID and Team ID.



  19. FOR certificate-based (.p12) :


  20. Log in to the Apple Developer Portal.
  21. Navigate to Certificates, IDs & Profiles > Identifiers > App IDs and click the App ID associated with your app.
  22. On the screen for your App ID, check Capabilities > Push Notifications.
  23. Click Save and respond to the Modify App Capabilities dialog box that appears.
  24. To create the certificate, we will use to communicate with Apple when sending push notifications:
    • In a new browser tab, follow Apple's Create a certificate signing request instructions.
    • In the Apple Developer Portal, navigate back to your App ID.
    • Click Capabilities > Push Notifications > Configure.
    • Click one of the following buttons:
      • Development SSL Certificate > Create Certificate (for testing push notifications while developing an iOS app)
      • Production SSL Certificate > Create Certificate (for sending push notifications in production)
    • Click Choose File and select the certificate signing request you created above.
    • Click Continue.
    • Click Download to download the certificate.
    • Use this file to export a .p12 file in the next step.
  25. Navigate in the Apple Developer Portal to Certificates, IDs & Profiles > Provisioning Profiles.
  26. Click the provisioning profile you'd like to edit.
  27. Edit the provisioning profile as necessary, and click Save.
  28. Click Download, and double-click the downloaded provisioning profile to install it.
  29. Make sure your Xcode project is configured to use the provisioning profile as necessary.Next, export the downloaded certificate (.cer file) as a .p12 file that can be uploaded to firebase:
    • On your Mac, double-click the .cer file to open it in Keychain Access.
    • In Keychain Access, in the lower-left corner, select Category > Certificates.
    • Select the certificate to export.
    • Choose File > Export Items.
    • Enter a name in the Save As field.
    • Accept the default .p12 file format and click Save. Respond to the prompts, and enter a password for the file if necessary.
    • Keep track of this file, since you'll upload it to firebase in a later step.






How to Add Map API key for Address

  1. Go to Google Cloud Platform. Click here
  2. Click on console. eShop

  3. Select your Firebase Project eShop

  4. Search for APIs, which are shown in below image. eShop

  5. Click on Enable to, enable that APIs eShop

  6. Do above steps for below listed API. (enable all below APIs one by one by searching) eShop

  7. Go to Credential Tab. you will find your Androiod and iOS API keys. eShop

  8. You have to setup those above API keys for both Platform.
    1. Android Setup
      • Next, open android ‣ app ‣ src ‣ main ‣ AndroidManifest.xml and paste the Google Maps meta data tag into your application tag before the activity tag, placing the API key you copied before to replace {{YOUR_API_KEY_HERE}}.
      • <meta-data android:name="com.google.android.geo.API_KEY" android:value="{{YOUR_API_KEY_HERE}}" />
    2. Note: For the value field, please paste in your API Key from the Google Maps API registration process.

      eShop

    3. iOS Setup
      • Next, open the ios ‣ Runner ‣ AppDelegate.swift file and paste the following code at shown in image.

        GMSServices.provideAPIKey("YOUR KEY HERE")
    4. Note: Again, for the value field please paste in your API Key from the registration process.

      eShop

How to manage payment gatway and add Credential in admin panel


  1. go to the panel, in that system > payment mehod. for any payment method you have to add just key id and secrect key.and if you don't wanat to use then disable from here.



Enable cloud kit in ios for multiple file upload

  1. This step is only needed in ios for multiple file select because in ios Any iOS version below 11.0, will require an Apple Developer Program account to enable CloudKit
  2. This feature we are using for image upload in my orders for review product image upload

  3. step to perform here.


How to manage preferred delivery date/time

  1. First login to admin panel.
  2. Go to System > TimeSlot



How to set Currency code for Application

  1. Select your Country supported Locale value from here
  2. Go to System > Store setting



How to Increase Product Load Limit

  1. you can chnage at a time when request send to server how many item will fetch.go to lib > helper > Constant.dart
  2. Please check below given image.

Get Privacy-Policy URL for PlayStore.

  1. First login to admin panel.
  2. System > Privacy Policy



Change Api Parameter

  1. You can change or add api parameter from lib > Helper > String.dart. here all list of api and api paramater is listed that is used in app.

  2. eShop

How to generate release apks

  1. Create an upload keystore
    Running the following at the command line:
    • On Mac/Linux, use the following command:

      keytool -genkey -v -keystore ~/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload

    • On Windows, use the following command:

      keytool -genkey -v -keystore c:\Users\USER_NAME\upload-keystore.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload

    eShop

    eShop

    eShop

  2. Reference the keystore from the app

    Create a file named [project]/android/key.properties that contains a reference to your keystore:

    eShop

    Copy below code, Paste in to key.propertirs file and change as per shown in image.

    storePassword=
    keyPassword=
    keyAlias=upload
    storeFile=location of the key store file, such as /Users/user name/upload-keystore.jks

    eShop

  3. Configure signing in gradle

    Configure gradle to use your upload key when building your app in release mode by editing the [project]/android/app/build.gradle file.
    • Add the below keystore information from your properties file before the android block:


      def keystoreProperties = new Properties()
      def keystorePropertiesFile = rootProject.file('key.properties')
      if (keystorePropertiesFile.exists()) {
      keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
      }

      eShop

    • Find the buildTypes block:
      And replace it with the following signing configuration info:

      signingConfigs {
      release {
      keyAlias keystoreProperties['keyAlias']
      keyPassword keystoreProperties['keyPassword']
      storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
      storePassword keystoreProperties['storePassword']
      }
      }
      buildTypes {
      release {
      signingConfig signingConfigs.release
      }
      }

      eShop


  4. Run following commands in Terminal as per your need:
    • To generate an APK
      flutter build apk
    • To generate an App Bundle
      flutter build appbundle

    • eShop


Steps to Publish iOS App to App Store

  1. Open your Project's Runner.xcworkspace file in Xcode, and Add your Team [Your Apple Developer ID] and also Insert GoogleService-Info.plist file [Downloaded From Firebase Project] inside folder named Runner.

  2. eShop

  3. and then Select Any iOS Device (armv7,arm64) as shown in image below.

  4. eShop

  5. After that Select Archive From Product Menu of Xcode as shown below.

  6. eShop

  7. Once Build / Archive Generated, pop up window will be shown. Validate app First, and After Successfull Validation of App, You Can Distribute App to AppStore.
  8. eShop

  9. After SuccessFull Submission of Build File, it will be Reflected to your Apple Developer Account in which we have created app with same Bundle ID.
  10. Click here for Detailed Help


Need Support?

Its our pleasure to serve our service and support. please contact our support team.

Head of Customer Support : Nikita Bhanderi
Skype: Nikita Bhanderi

To help our customers, we constantly be in touch with every customer if they need any assistance regarding our product. We offer our customers a support from Mon – Fri 9.00am to 6.00pm IST (GMT +5.30) – We are a Team located in India – Asia.

Typically we reply our customers for all the questions and queries within 24 hours of time via comments, support forum or emails.


Your Feedback

Dear valuable customer, Thank you very much for choosing our product. It's our pleasure to serve top-notch service to you. Please give us your honest feedback that will help us to make a more strong and reliable product by click here Rate Us. Thank you very much.


Contact Us

WRTeam has creative and dedicated group of developers who are mastered in Apps Developments and Web Application Development with a niche in delivering quality solutions to customers across the globe. Contact us today to find out how we can help you or for freelance work.

Visit Us : https://wrteam.in

Skype: Nikita Bhanderi

Mail Us : support@wrteam.in

Call Us : +91 9797945459

Thank you very much.


Rating

If you like our app, we will highly appreciate if you can provide us a rating of 5. You can rate us from your CodeCanyon Menu > Download page.