calces-gradle-plugin

Android构建工具集:包含快速实现组件化构建脚本,快速实现屏幕最小宽度适配脚本

Stars
382

wow Android

Android

  • Gradle : componentcalces.appconfigcalces.modules : GradleAppApp

: screen,calces.screen : smallestWidth

GradleAndroid

SW UI

  • GradleAndroidapplication or library
  • App
  • AndroidManifestActivity

  • GradlesmallestWidth

  1. Gradle 2.1 build.gradle

    buildscript {
        ...
    }
    plugins {
      id "calces.appconfig" version "3.3.0-alpha01"
    }
    

    Gradle

       buildscript {
         repositories {
           maven {
             url "https://plugins.gradle.org/m2/"
           }
         }
         dependencies {
           classpath "gradle.plugin.com.tangpj.tools:component:3.3.0-alpha01"
         }
       }
       
       apply plugin: "calces.appconfig"
    
  2. build.gradleAppConfig

    appConfig {
        debugEnable true
        apps {
            app1 {
                mainActivity "com.xxx.MainActivity1"
                modules ':modules1',
                        ':modules2'
            }
    
              app2 {
                mainActivity "com.xxx.MainActivity2"
                modules ':modules1'
            }
        }
    
        modules {
            modules1 {
                applicationId "com.xxxx.modules1"
                mainActivity ".Modules1Activity"
                isRunAlone true
            }
    
             modules2 {
                applicationId "com.xxxx.modules2"
                mainActivity ".Modules2Activity"
                isRunAlone true
            }
        }
    } 
    
    
    
  3. modules (com.android.librarycom.android.application)

    apply plugin: 'calces.modules'
    

  1. Gradle 2.1 build.gradle

    buildscript {
        ...
    }
    plugins {
      id "calces.screen" version "1.3.4-alpha01"
    }
    

    Gradle

       buildscript {
         repositories {
           maven {
             url "https://plugins.gradle.org/m2/"
           }
         }
         dependencies {
           classpath "gradle.plugin.com.tangpj.tools:screen:1.3.4-alpha01"
         }
       }
       
       apply plugin: "calces.screen"
    
  2. build.gradleScreen

screen{
    auto true
    dimens{
        designPx 375
        smallesWidths 360,480
        scale 3            //2
        scaleMode BigDecimal.ROUND_HALF_UP  //
    }
}

auto swvaluesfalse gradlesw

Android-advanced-blueprint

AndroidTodoCalcesDemo

AppConfig

  • debugEnable, debugdebugEnbaletruemodulesisRunAlonemodoulesdebug

  • apps, String appdebugfalseapp

  • modules, String

Appapps

  • name, String appappname:namesetting.gradleinclude

  • modules, String

  • dependMethod, String implementation

  • applicationId, String applicationId

  • applicationName, String Applicationmanifestapplication name

  • mainActivity, String ActivityAndroidManifestActivity

Modulesmodules

  • name, String appname

  • isRunAlone,

  • applicationId, String applicationId

  • applicationName, String Applicationmanifestapplication name

  • mainActivity, String Activity

dimens( Sw )

  • dimensFileName, String
    dimensionsdimens(/res/values/dimens.xml)
  • designPx, int
    widthpx375width
  • scale, int
    , scaleMode
  • scaleMode, int
    BigDecimalSaclescaleModescale
    ****dpint
  • auto,
    false
    falsedimensCovert
    ./gradlew dimensCovert
  • smallestWidths, int
    sw

mipmap( )

  • folder, String
    mipmapdrawable-xxxdrawable
  • designDensity, String
    xxxhdpifolderdesignDensityxxxdpi, foldermipmapmipmap-xxxhdpi
  • convertDensity, String
    xxhdpixhdpixxxhdpi
  • auto,
    dimensauto

UPDATE

Version 1.1.0

  • applicationNameapplication
  • AndroidManifestAndroidManifest/app/calces
    calces

Version 1.2.0

  • ScreenPlugin
  • widthwidth
  • smallestWidth

Version 1.2.3

  • ScreenPlugin

Version 1.2.31

  • ModulesPluginManifest BUG

Version 1.2.42

  • screen
    dimensdimensFileName( dimensions)
    mipmapfolder( drawable)
  • com.android.tools.build:gradle3.2.1

Version 1.2.52

  • screendimens
  • dimens
    saclescaleMode

calcescalces.componentcalces.screen

calces.component version 3.3.0-alpha01

Android Build Plugin3.3.0Android Build Pluginalpha01calces.component

calces.screen version 1.3.4-alpha02

1.2.52calces.screencalces

TODO

  • ...

License

Copyright 2018 Tang.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Related Projects