@@ -1517,39 +1517,58 @@ public void cleanup() {
1517
1517
1518
1518
1519
1519
protected void createGradleProject (File projectFolder , File exportFolder ) throws IOException , SketchException {
1520
- // Upacking gradlew
1520
+ installGradlew (exportFolder );
1521
+ if (appComponent == WATCHFACE ) {
1522
+ createTopModule (projectFolder , exportFolder , "':mobile', ':wear'" );
1523
+ createMobileModule (projectFolder , exportFolder , "24.0.1" );
1524
+ createWearModule (projectFolder , exportFolder , "24.0.1" );
1525
+ } else {
1526
+ createTopModule (projectFolder , exportFolder , "':app'" );
1527
+ createAppModule (projectFolder , exportFolder , "24.0.1" );
1528
+ }
1529
+ }
1530
+
1531
+ private void installGradlew (File exportFolder ) throws IOException {
1521
1532
File gradlewFile = mode .getContentFile ("mode/gradlew.zip" );
1522
- AndroidMode .extractFolder (gradlewFile , exportFolder , true , true );
1523
-
1524
-
1533
+ AndroidMode .extractFolder (gradlewFile , exportFolder , true , true );
1534
+ }
1535
+
1536
+ private void createTopModule (File projectFolder , File exportFolder ,
1537
+ String projectModules ) throws IOException {
1525
1538
// Top level gradle files
1526
1539
File buildTemplate = mode .getContentFile ("templates/" + TOP_GRADLE_BUILD_TEMPLATE );
1527
1540
File buildlFile = new File (exportFolder , "build.gradle" );
1528
1541
Util .copyFile (buildTemplate , buildlFile );
1529
1542
1530
1543
writeLocalProps (new File (exportFolder , "local.properties" ));
1531
- writeFile (new File (exportFolder , "gradle.properties" ), new String []{"org.gradle.jvmargs=-Xmx1536m" });
1544
+ writeFile (new File (exportFolder , "gradle.properties" ),
1545
+ new String []{"org.gradle.jvmargs=-Xmx1536m" });
1532
1546
1533
1547
File settingsTemplate = mode .getContentFile ("templates/" + GRADLE_SETTINGS_TEMPLATE );
1534
1548
File settingsFile = new File (exportFolder , "settings.gradle" );
1535
1549
HashMap <String , String > replaceMap = new HashMap <String , String >();
1536
- replaceMap .put ("@@project_modules@@" , "':app'" );
1550
+ replaceMap .put ("@@project_modules@@" , projectModules );
1537
1551
AndroidMode .createFileFromTemplate (settingsTemplate , settingsFile , replaceMap );
1538
-
1539
- // Creating app module
1552
+ }
1553
+
1554
+ private void createAppModule (File projectFolder , File exportFolder , String buildToolsVer )
1555
+ throws SketchException , IOException {
1540
1556
File appFolder = mkdirs (exportFolder , "app" );
1541
1557
1542
1558
File appBuildTemplate = mode .getContentFile ("templates/" + FRAGMENT_GRADLE_BUILD_TEMPLATE );
1543
1559
File appBuildFile = new File (appFolder , "build.gradle" );
1544
- replaceMap = new HashMap <String , String >();
1560
+ HashMap <String , String > replaceMap = new HashMap <String , String >();
1561
+
1562
+ replaceMap .put ("@@build_tools@@" , buildToolsVer );
1545
1563
replaceMap .put ("@@package_name@@" , getPackageName ());
1546
1564
replaceMap .put ("@@min_sdk@@" , AndroidBuild .min_sdk_fragment );
1547
1565
replaceMap .put ("@@target_sdk@@" , AndroidBuild .target_sdk );
1548
1566
replaceMap .put ("@@version_code@@" , manifest .getVersionCode ());
1549
1567
replaceMap .put ("@@version_name@@" , manifest .getVersionName ());
1550
1568
AndroidMode .createFileFromTemplate (appBuildTemplate , appBuildFile , replaceMap );
1551
1569
1552
- writeFile (new File (appFolder , "proguard-rules.pro" ), new String []{"# Add project specific ProGuard rules here." });
1570
+ writeFile (new File (appFolder , "proguard-rules.pro" ),
1571
+ new String []{"# Add project specific ProGuard rules here." });
1553
1572
1554
1573
File coreFile = new File (projectFolder , "libs/processing-core.jar" );
1555
1574
File libsFolder = mkdirs (appFolder , "libs" );
@@ -1559,11 +1578,22 @@ protected void createGradleProject(File projectFolder, File exportFolder) throws
1559
1578
File javaFolder = mkdirs (mainFolder , "java" );
1560
1579
File resFolder = mkdirs (mainFolder , "res" );
1561
1580
1562
- Util .copyFile (new File (projectFolder , "AndroidManifest.xml" ), new File (mainFolder , "AndroidManifest.xml" ));
1581
+ Util .copyFile (new File (projectFolder , "AndroidManifest.xml" ),
1582
+ new File (mainFolder , "AndroidManifest.xml" ));
1563
1583
Util .copyDir (new File (projectFolder , "res" ), resFolder );
1564
- Util .copyDir (new File (projectFolder , "src" ), javaFolder );
1584
+ Util .copyDir (new File (projectFolder , "src" ), javaFolder );
1585
+ }
1586
+
1587
+ private void createMobileModule (File projectFolder , File exportFolder , String buildToolsVer )
1588
+ throws SketchException , IOException {
1589
+
1565
1590
}
1566
1591
1592
+ private void createWearModule (File projectFolder , File exportFolder , String buildToolsVer )
1593
+ throws SketchException , IOException {
1594
+
1595
+ }
1596
+
1567
1597
private void writeFile (final File file , String [] lines ) {
1568
1598
final PrintWriter writer = PApplet .createWriter (file );
1569
1599
for (String line : lines ) writer .println (line );
0 commit comments