Skip to content

Commit

Permalink
* modified bintray credential input to come from environment vars ins…
Browse files Browse the repository at this point in the history
…tead of local.properties (for CI purposes)

* added jcenter deploy support into gradle builds.  [
* Uprev of android build tools version
* Updated targetSdk version for lib and demo app
* Updated compileSdk version for lib and demo app
* More gradle project cleanup
* Added android-sdk-manager plugin to manage android sdk in CI environment
* Uprev'd gradle dependency.
* More gradle project cleanup
* Moved DemoApp submodule to the top level (previously was located under Examples).
* Removed Examples submodule.
* Refactored DemoApp project structure to be in line with current android gradle project best practices.
* Removed maven build scripts.
  • Loading branch information
halfhp committed Dec 3, 2015
1 parent 4ab3a9f commit d360e1e
Show file tree
Hide file tree
Showing 10 changed files with 149 additions and 64 deletions.
9 changes: 5 additions & 4 deletions .gitignore
Expand Up @@ -8,9 +8,10 @@ build
.metadata
AndroidPlot-Core/target
AndroidPlot-Core/.settings
Examples/DemoApp/.settings
Examples/DemoApp/bin
/Examples/DemoApp/gen
Examples/DemoApp/target
DemoApp/.settings
DemoApp/bin
DemoApp/gen
DemoApp/target
.idea/libraries
.idea/*.xml
**/R.java
112 changes: 98 additions & 14 deletions AndroidPlot-Core/build.gradle
@@ -1,22 +1,18 @@
buildscript {
repositories {
jcenter()
}
}

apply plugin: 'android-sdk-manager'
apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: 'com.jfrog.bintray'

android {
compileSdkVersion 21
buildToolsVersion '21.1.2'
compileSdkVersion theCompileSdkVersion
buildToolsVersion theBuildToolsVersion

defaultConfig {
versionCode 1
versionName "6.2"
minSdkVersion 4
targetSdkVersion 19
versionCode theVersionCode
versionName theVersionName
minSdkVersion theMinSdkVersion
targetSdkVersion theTargetSdkVersion
testApplicationId "com.androidplot.test"
//testInstrumentationRunner "android.test.InstrumentationTestRunner"
}

/**
Expand All @@ -27,8 +23,96 @@ android {
}
}

group = 'com.androidplot'
version = theVersionName

def siteUrl = 'http://androidplot.com'
def gitUrl = 'https://bitbucket.org/androidplot/androidplot.git'

dependencies {
testCompile group: 'org.jmockit', name: 'jmockit', version: '1.20'
testCompile group: 'junit', name: 'junit', version: '4.8.1'
testCompile "org.robolectric:robolectric:3.0"
}
}

task javadoc(type: Javadoc) {
source = android.sourceSets.main.java.srcDirs
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
failOnError false
options {
links "http://docs.oracle.com/javase/7/docs/api/"
linksOffline "http://d.android.com/reference","${android.sdkDirectory}/docs/reference"
}
exclude '**/BuildConfig.java'
exclude '**/R.java'
}

task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}

task sourcesJar(type: Jar) {
classifier = 'sources'
from android.sourceSets.main.java.srcDirs
}

install {
repositories.mavenInstaller {
pom {
project {
packaging 'aar'
name 'Androidplot Core Library'
description = "Androidplot is a library for creating dynamic and static charts within your Android application."
url siteUrl
licenses {
license {
name 'The Apache Software License, Version 2.0'
url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
}
}
developers {
developer {
id 'halfhp'
name 'Nick Fellows'
email 'halfhp@gmail.com'
}
}
scm {
connection gitUrl
developerConnection gitUrl
url siteUrl

}
}
}
}
}

bintray {

// these environment vars must be set when deploying to bintray.
// note: BINTRAY_PASSWORD is actually the api key, but naming it 'password'
// tells the CI environment to obfuscate the value in public logs.
user = System.getenv('BINTRAY_USER')
key = System.getenv('BINTRAY_PASSWORD')


configurations = ['archives']
pkg {
version {
name = theVersionName
}
repo = "maven"
name = "androidplot"
issueTrackerUrl = "https://androidplot.jira.com"
websiteUrl = siteUrl
vcsUrl = gitUrl
licenses = ["Apache-2.0"]
}
}

artifacts {
archives javadocJar
archives sourcesJar
}
3 changes: 2 additions & 1 deletion AndroidPlot-Core/src/main/java/com/androidplot/Plot.java
Expand Up @@ -40,7 +40,7 @@
import java.util.*;

/**
* Base class for all other Plot implementations..
* Base class for all Plot implementations.
*/
public abstract class Plot<SeriesType extends Series, FormatterType extends Formatter, RendererType extends SeriesRenderer>
extends View implements Resizable{
Expand Down Expand Up @@ -689,6 +689,7 @@ public synchronized void layout(final DisplayDimensions dims) {

@Override
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
synchronized(renderSynch) {
keepRunning = false;
renderSynch.notify();
Expand Down
Expand Up @@ -634,7 +634,7 @@ protected void drawGrid(Canvas canvas) {
}

Paint olp = domainTickLabelPaintMap != null ?
domainTickLabelPaintMap.get(plot.getDomainOrigin()) : domainTickLabelPaint;
domainTickLabelPaintMap.get(plot.getDomainOrigin()) : domainOriginTickLabelPaint;
if(olp == null) {
olp = domainTickLabelPaint;
}
Expand Down Expand Up @@ -722,7 +722,7 @@ protected void drawGrid(Canvas canvas) {
}

Paint olp = rangeTickLabelPaintMap != null ?
rangeTickLabelPaintMap.get(plot.getRangeOrigin()) : rangeTickLabelPaint;
rangeTickLabelPaintMap.get(plot.getRangeOrigin()) : rangeOriginTickLabelPaint;
if(olp == null) {
olp = rangeTickLabelPaint;
}
Expand Down Expand Up @@ -940,8 +940,13 @@ protected void drawData(Canvas canvas) throws PlotRenderException {
try {
canvas.save(Canvas.ALL_SAVE_FLAG);
canvas.clipRect(gridRect, android.graphics.Region.Op.INTERSECT);
for (XYSeriesRenderer renderer : plot.getRendererList()) {
renderer.render(canvas, paddedGridRect);
renderStack.sync();

for(RenderStack.StackElement thisElement : renderStack.getElements()) {
if(thisElement.isEnabled()) {
plot.getRenderer(thisElement.getPair().getFormatter().getRendererClass()).
render(canvas, paddedGridRect, thisElement.getPair(), renderStack);
}
}

} finally {
Expand Down
37 changes: 11 additions & 26 deletions DemoApp/build.gradle
@@ -1,27 +1,21 @@
apply plugin: 'android-sdk-manager'
apply plugin: 'android'

dependencies {
compile project(':AndroidPlot-Core')
// compile "com.android.support:support-v4:${theSupportLibraryVersion}"
}

android {
compileSdkVersion 21
buildToolsVersion '21.1.2'

/*sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
*//*renderscript.srcDirs = ['src']*//*
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
instrumentTest.setRoot('test')
}*/
compileSdkVersion theCompileSdkVersion
buildToolsVersion theBuildToolsVersion

defaultConfig {
versionCode theVersionCode
versionName theVersionName
minSdkVersion theMinSdkVersion
targetSdkVersion theTargetSdkVersion
applicationId "com.androidplot.demos"
}

/**
* TODO: uncomment this and address all the lint issues.
Expand All @@ -30,12 +24,3 @@ android {
abortOnError false
}
}

buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
6 changes: 1 addition & 5 deletions DemoApp/src/main/AndroidManifest.xml
@@ -1,9 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.androidplot.demos"
android:versionCode="8"
android:versionName="0.6.0.1">
<uses-sdk android:minSdkVersion="6" android:targetSdkVersion="16"/>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.androidplot.demos">

<!-- We must disable hardware acceleration otherwise some lines will not appear in our plots. -->
<application android:label="AndroidPlot API DemoApp"
Expand Down
27 changes: 20 additions & 7 deletions build.gradle
@@ -1,25 +1,30 @@
apply plugin: 'java'

sourceCompatibility = 1.6
version = '1.0'

repositories {
mavenCentral()
jcenter()
}

ext {
theBuildToolsVersion = '19.0.0'
theSupportLibraryVersion = '19.0.0'
theCompileSdkVersion = 19
theBuildToolsVersion = '21.1.2'
theCompileSdkVersion = 23
theTargetSdkVersion = 23
theMinSdkVersion = 4
theVersionName = '0.9.2'
theVersionCode = 1
}

buildscript {
repositories {
mavenCentral()
jcenter()
}

dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.12.+'
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3'
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.4'
}
}

Expand All @@ -29,6 +34,14 @@ allprojects {
}
}

/*subprojects {
// for now can't do this one here because it has to
// be loaded *before* any other plugin in each submodule
// and unless its listed at the top of the submodule plugin list,
// that doesnt seem to happen.
apply plugin: 'android-sdk-manager'
}*/

task wrapper(type: Wrapper) {
gradleVersion = '1.10'
gradleVersion = '2.9'
}
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
#Wed Dec 02 08:41:47 CST 2015
#Wed Dec 02 22:16:29 CST 2015
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-2.9-all.zip
2 changes: 1 addition & 1 deletion settings.gradle
@@ -1,3 +1,3 @@
rootProject.name = 'androidplot'
include 'AndroidPlot-Core'
include ':Examples:DemoApp'
include 'DemoApp'

0 comments on commit d360e1e

Please sign in to comment.