Documentation

Trace:

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
flutterui:build_release [2020/08/04 12:26]
admin
flutterui:build_release [2023/02/22 07:30]
admin
Line 3: Line 3:
 ~~NOPDF~~ ~~NOPDF~~
  
-Currently, beta channel is required for Flutter WEB:+======Build script======
  
-  flutter channel beta +The build script is available in the **creator** directory. The script is [[https://​ant.apache.org/​|Apache ANT]] based and it's a simple XML file. It defines several build commands. The default command (start.complete) creates output for iOS, Android and Web deployment. 
-  ​flutter doctor -v + 
-  ​flutter config --enable-web+The iOS build command requires macOS but won't fail if your system is not macOS. 
 + 
 +=====Requirements===== 
 + 
 +Java Runtime environment > 8.0 
 + 
 +=====Commands===== 
 + 
 +====Complete (start.complete)==== 
 + 
 +  ​cd creator 
 +  ​./build.sh
   ​   ​
-Run the web variant:+or
  
-  ​flutter run -d chrome ​ +  ​cd creator 
 +  build.cmd
   ​   ​
-Build the release:+====iOS (start.ios)==== 
 + 
 +  cd creator 
 +  ./build.sh start.ios 
 + 
 +====Android (start.android)==== 
 + 
 +  cd creator 
 +  ./build.sh start.android 
 +   
 +For app signing, a keystore will be used. Our build process needs a file with the name **key.properties**. Put this file in the folder ​  
 +//<​project>/​creator/​android//,​ together with your keystore. It's also possible to put the file in your android project folder. We support both locations. 
 + 
 +The **key.properties** will be used to read all relevant information and should contain: 
 + 
 +<code properties>​ 
 +keyAlias=<​alias>​ 
 +keyPassword=<​keypassword>​ 
 + 
 +storeFile=<​keystore_filename>​ 
 +storePassword=<​storepassword>​ 
 +</​code>​ 
 + 
 +To support signing, it's important to change your gradle build in folder //<​project>/​android/​app/​build.gradle//​. We need following changes: 
 + 
 +<code gradle>​ 
 +def keystoreProperties = new Properties() 
 +def keystorePropertiesFile = rootProject.file('​key.properties'​) 
 + 
 +if (keystorePropertiesFile.exists()) { 
 +    keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) 
 +} else { 
 +    keystorePropertiesFile = rootProject.file('​../​creator/​android/​key.properties'​) 
 + 
 +    if (keystorePropertiesFile.exists()) { 
 +        keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) 
 +    } else { 
 +        keystorePropertiesFile = rootProject.file('​../​../​../​android/​key.properties'​) 
 + 
 +        if (keystorePropertiesFile.exists()) { 
 +            keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) 
 +        } 
 +    } 
 +
 +</​code>​ 
 + 
 +and 
 + 
 +<code gradle>​ 
 +signingConfigs { 
 +    ​release ​
 +        keyAlias keystoreProperties['​keyAlias'​] 
 +        keyPassword keystoreProperties['​keyPassword'​] 
 +        storeFile keystoreProperties['​storeFile'​] ? rootProject.file(keystorePropertiesFile.getParent() + '/'​ + keystoreProperties['​storeFile'​]) ​null 
 +        storePassword keystoreProperties['​storePassword'​] 
 +    } 
 +
 + 
 +buildTypes { 
 +    release { 
 +        signingConfig signingConfigs.release 
 +    } 
 +
 +</​code>​ 
 + 
 +A [[https://​github.com/​sibvisions/​flutter_jvx/​blob/​main/​android/​app/​build.gradle|complete build file]] is available in our project. 
 + 
 +====Web (start.web)==== 
 + 
 +  cd creator 
 +  ./build.sh start.web 
 + 
 +The results will be available in  
 + 
 +  creator/​build/​install 
 +   
 +directory. 
 + 
 +=====Updates===== 
 + 
 +To get the latest build script, simply call
  
-  ​flutter build web+  ​cd creator 
 +  ./update.sh
   ​   ​
-The result can be found in **build/​web** ​directory.+The latest [[https://​raw.githubusercontent.com/​sibvisions/​flutterclient/​main/​creator/​build.xml|build.xml]] will be saved in the creator ​directory.
This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information