Created
January 9, 2014 10:50
-
-
Save scruffyfox/8332390 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.util.regex.Pattern | |
buildscript { | |
repositories { | |
mavenCentral() | |
} | |
dependencies { | |
classpath 'com.android.tools.build:gradle:0.6.+' | |
} | |
} | |
apply plugin: 'android' | |
repositories { | |
mavenCentral() | |
} | |
android { | |
compileSdkVersion 19 | |
buildToolsVersion "19.0.0" | |
defaultConfig { | |
minSdkVersion 10 | |
targetSdkVersion 19 | |
} | |
sourceSets { | |
main { | |
manifest.srcFile 'AndroidManifest.xml' | |
java.srcDirs = ['src'] | |
resources.srcDirs = ['res'] | |
aidl.srcDirs = ['src'] | |
renderscript.srcDirs = ['src'] | |
res.srcDirs = ['res'] | |
assets.srcDirs = ['assets'] | |
} | |
} | |
productFlavors { | |
google { | |
//buildConfigField "boolean", "IS_GOOGLE_PLAY", "true" | |
//buildConfigField "boolean", "IS_AMAZON", "true" | |
buildConfig "private final static boolean IS_GOOGLE_PLAY = true;", \ | |
"private final static boolean IS_AMAZON = false;" | |
} | |
amazon { | |
//buildConfigField "boolean", "IS_GOOGLE_PLAY", "true" | |
//buildConfigField "boolean", "IS_AMAZON", "true" | |
buildConfig "private final static boolean IS_GOOGLE_PLAY = false;", \ | |
"private final static boolean IS_AMAZON = true;" | |
} | |
} | |
signingConfigs { | |
release { | |
def taskName = project.getGradle().startParameter.taskNames.get(0); | |
def console = System.console(); | |
if (console != null && taskName.contains("Release")) | |
{ | |
storeFile file(console.readLine("\nEnter keystore path: ").trim()) | |
storePassword console.readLine("Enter keystore password: ").trim() | |
keyAlias console.readLine("Enter key alias: ").trim() | |
keyPassword console.readLine("Enter key password: ").trim() | |
} | |
} | |
} | |
buildTypes { | |
release { | |
signingConfig signingConfigs.release | |
} | |
} | |
} | |
dependencies { | |
compile project(':Libraries:Storm-Library') | |
compile project(':Libraries:Storm-Library:Modules:StormViewBuilder') | |
compile project(':Libraries:Storm-Library:Modules:StormCrashReporter') | |
compile project(':Libraries:Storm-Library:Modules:StormStats') | |
compile project(':Libraries:Storm-Library:Modules:StormLanguage') | |
compile project(':Libraries:Storm-Library:Modules:StormPushNotifications') | |
} | |
task cleanXML(type: Exec) { | |
commandLine './whitespace.rb' | |
} | |
task getBundle(type: Exec) { | |
commandLine './get-bundle.py' | |
ignoreExitValue = true | |
} | |
task('increaseVersionCode') << { | |
def taskName = project.getGradle().startParameter.taskNames.get(0); | |
def f = new File("buildnumber") | |
f.createNewFile() | |
def buildNumberFile = file(f) | |
int versionCode = 0 | |
if (buildNumberFile.exists()) | |
{ | |
def versionText = buildNumberFile.getText() | |
versionCode = Integer.parseInt(versionText) + 1 | |
} | |
if (taskName.contains("Debug")) | |
{ | |
buildNumberFile.write(String.valueOf(versionCode)) | |
} | |
else if (taskName.contains("Release")) | |
{ | |
def manifestFile = file("AndroidManifest.xml") | |
def pattern = Pattern.compile("versionCode=\"(\\d+)\"") | |
def manifestText = manifestFile.getText() | |
def matcher = pattern.matcher(manifestText) | |
matcher.find() | |
def oldVersionCode = Integer.parseInt(matcher.group(1)) | |
def manifestContent = matcher.replaceAll("versionCode=\"" + (oldVersionCode + versionCode) + "\"") | |
manifestFile.write(manifestContent) | |
buildNumberFile.write("0") | |
} | |
} | |
tasks.preBuild.dependsOn cleanXML | |
tasks.preBuild.dependsOn increaseVersionCode | |
tasks.whenTaskAdded { task -> | |
def taskName = project.getGradle().startParameter.taskNames.get(0); | |
if (taskName.contains("Release")) | |
{ | |
task.dependsOn getBundle | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/ruby | |
# Based on the script from http://www.splinter.com.au/ruby-script-to-increment-a-build-number/ | |
@path = File.dirname(__FILE__) | |
res = "/res/" | |
def strip(filename) | |
# Read it | |
file_str = '' | |
if File.exists?(filename) | |
file_str = File.open(filename, 'r') {|file| file.read } | |
end | |
file_str = file_str.gsub(/ /, "\t") | |
file_str = file_str.gsub(/\"^[ \t]+|[ \t]+$/, "") | |
# Write | |
File.open(filename, 'w') {|file| file.write(file_str) } | |
puts "Removing trailing whitespace and converting spaces to tabs in #{filename}" | |
end | |
Dir.entries(@path + res).each {|entry| | |
if (!File.basename(@path + res + entry).start_with?(".")) | |
Dir.entries(@path + res + entry).each {|file| | |
if (!File.basename(@path + res + entry + "/" + file).start_with?(".") and File.basename(@path + res + entry + "/" + file).end_with?("xml")) | |
strip(@path + res + entry + "/" + file) | |
end | |
} | |
end | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment