Documentation by "WRTeam "

eShop - Flutter Multi Vendor eCommerce 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 latest Java jdk on windows

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

  4. Please prefer video tutorials, we recommend this playlist for set environment variable for java in Windows 10 - https://www.youtube.com/watch?v=zzfHPGyjoWw


  5. Please prefer video tutorials, we recommend this playlist for set environment variable for java in Windows 11 - https://www.youtube.com/watch?v=zAyIqbBAUxQ

How to Setup Flutter

  1. Visit flutter official website : https://docs.flutter.dev/get-started/install for full install guide.
  2. If you prefer video tutorials, we recommend this playlist for the full installation process https://www.youtube.com/playlist?list=PLSzsOkUDsvdtl3Pw48-R8lcK2oYkk40cm

Flutter Doctor Output Error

  1. If you have run flutter doctor. and in flutter doctor if you see below error like licence status unknown.

  2. eShop

  3. 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.

  4. eShop

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

How to first run project



  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.

  2. eshop
  3. also you can open your IDE terminal then execute command
    1. flutter clean
    2. flutter pub get
    3. flutter run

  4. eshop
  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 Clean.
  8. go to file > invalidate cache/ restart

How to change AppName

(Check Video)

    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

(Check Video)

  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

(Check Video)

  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 Animation color

Note : We are only responsible for exist animation, If you can change whole animation we can not help for it. we can only help if any issue occures by changing color of animation.
  • You can change animation color by follow steps:
    1. Open Browser and Goto website https://lottiefiles.com and login or create account and login.
    2. Goto https://lottiefiles.com/editor


    3. Select assets/animation/promocode.json file and open


    4. Follow below image


    5. Do the same with celebrate.json

    How to change Animation

    Note : We are only responsible for exist animation, If you change whole animation we can not help for it.
  • You can change animation by follow steps:
    1. Open Browser and Goto website https://lottiefiles.com and login or create account and login.
    2. Search animation only in lottiefiles modify acording your requirement and download that json file rename that file as per exist file in assest/animation folder.
    3. You can do the same with all exist animation files in the assets/animation folder.
    4. Note : You need to set file name same as per exist files in android code, if file name will be changes even caps and small also then it will not works and it will throws error and that will be not part of support you need to handle it from your side.

    How to change package name

    (Check Video)

    1. Press ctrl + shift + F and enter existing package name and change all result which show in search, else you have change it manually buy replace package name in below files.

    2. eShop

    3. android\app\src\debug\AndroidManifest.xml

    4. eShop

    5. android\app\src\main\kotlin\eShop\multivendor\customer\eshop_multivendor\MainActivity.kt

    6. eShop

    7. When You are changing package name the you also need change name of folders according to your package name in (android\app\src\main\kotlin\) location in project. For Example if PAckage name is "eShop.multivendor.customer" Then inside kotlin folder folder stucture are eshop\multivendor\customer. now this folder structure will change as per your package name if your package name is "wrteam.eShop.customer" then new folder structure is wrteam\eShop\customer. for change name of this folders just open your project folder navigate inside the kotlin folder just rename the folders according to your package name . Note : (Sometime you got issue dou to this reason.)

    8. eShop

      eShop

    9. Some Doubt regarding package name change
      1. what if my package name is like this eShop.wrteam.multivendor.customer, so how can i make folder structure ?
      Ans. => in this situation you have to add one folder according to your package name , now you have 4 folder insode the kotline folder like this \eShop\wrteam\multivendor\customer\

    10. android\app\src\main\AndroidManifest.xml

    11. eShop

    12. android\app\src\profile\AndroidManifest.xml

    13. eShop

    14. android\app\build.gradle

    15. eShop

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

    17. eShop

    18. lib\Helper\Constant.dart

    19. eShop

    How to Change Images in app

    (Check Video)

    1. Go to Assets > images folder. here you have 2 folders 1.png 2.svg. you can change your image to exist image with same name.

    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

    (Check Video)

    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

    (Check Video)

    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 > appConstants.dart inside that defaultLanguage variable is availble. 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 _getDrawer() 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 > appConstants.dart. here you have to change your API server url.
    4. don't forget to add slash after api keyword
      eShop


    How to Create firebase project

    (Check Video)

    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).

    (Check Video)


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



  • Now, we have to add sha1 and sha256 key in firebase, for that perform below given step
      • Go to the android folder. Right click gradlew file and select Open in Terminal as shown in below image.



      • else may you just open terminal in android module.



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


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




    2. Remember:

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


    5. or another way you can also get release sha from below given command in cmd
    6. go to run and type cmd
    7. here first go to java jdk bin path
    8. 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
    9. then it will ask for password.enter and then it will show your release sha


    10. for ios you need to set following.
    11. 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. goto System > Store Setting .



    Steps to Authenticate firebase using Google


    1. Open your firebase console.
    2. Go to Sign-in method in Authentication.
    3. Go to the Google and enable the google sign_in automatically.



    Steps to Authenticate firebase using Apple


    1. Open your firebase console.
    2. Go to Sign-in method in Authentication.
    3. Go to the Apple and enable apple sign in.
    4. In Xcode, select the Signing & Capabilities tab, and add "Sign In With Apple" as a new Capability then select a team on the Code Signing section.
    5. This will generate and configure an App ID in the "Certificates, Identifiers & Profiles" section of the Apple Developer portal.

    How to set Notification

    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

    (Check Video)

    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 Map SDK From Cloud Plateform.

    1. Open your firebase project.
    2. Go to Project Setting and follow below steps :





    3. if you want in both platform then you have to enable it for both android and ios otherwise only one





    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.


    < /ol>

    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

    (Check Video)

    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



    How to solve Data Safety issue in Play Store?

    Please refer this video link for solve this issue.


    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 : Ashish Gusai
    Skype: Ashish Gusai

    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: Rilpa Vadhadiya

    Mail Us : support@wrteam.in

    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.