Skip to content

Commit e7263cc

Browse files
author
BryanSharp
authored
Merge pull request #13 from BryanSharp/support_library_ext
support for library
2 parents 1904968 + 09286fd commit e7263cc

File tree

5 files changed

+20
-3
lines changed

5 files changed

+20
-3
lines changed

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ Beaver,即河狸,是一种日日忙碌于在自己栖息河流上修建和
1212

1313
该插件已经上传到Jcenter,可直接引用最新版本如下:
1414

15-
classpath 'com.bryansharp:hibeaver:1.2.5'
15+
classpath 'com.bryansharp:hibeaver:1.2.6'
16+
1617

1718
[Link to Jcenter](https://bintray.com/bsp0911932/maven/HiBeaver)
1819

@@ -97,7 +98,7 @@ Basically, HiBeaver is an Android plugin for modifying your java byte code durin
9798

9899
This plugin has been uploaded to jcenter. You can use this by adding the following code to your buildScripts:
99100

100-
classpath 'com.bryansharp:HiBeaver:1.2.5'
101+
classpath 'com.bryansharp:HiBeaver:1.2.6'
101102

102103
[Link to Jcenter](https://bintray.com/bsp0911932/maven/HiBeaver)
103104

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ repositories {
2424
mavenCentral()
2525
}
2626
group = 'com.bryansharp'
27-
version = '1.2.5'
27+
version = '1.2.6'
2828
uploadArchives {
2929
// version = version + '-SNAPSHOT'//if you are testing the demo I provide locally, you can uncomment this.
3030
repositories {

src/main/groovy/com/bryansharp/gradle/hibeaver/HiBeaverPluginImpl.groovy

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.bryansharp.gradle.hibeaver
22

3+
import com.android.build.gradle.AppExtension
34
import com.android.build.gradle.BaseExtension
5+
import com.android.build.gradle.LibraryExtension
46
import com.bryansharp.gradle.hibeaver.utils.DataHelper
57
import com.bryansharp.gradle.hibeaver.utils.Log
68
import com.bryansharp.gradle.hibeaver.utils.ModifyFiles
@@ -36,6 +38,13 @@ class HiBeaverPluginImpl implements Plugin<Project> {
3638
def static registerTransform(Project project) {
3739
// def isApp = project.plugins.hasPlugin("com.android.application")
3840
BaseExtension android = project.extensions.getByType(BaseExtension)
41+
if (android instanceof LibraryExtension){
42+
DataHelper.ext.projectType = DataHelper.TYPE_LIB;
43+
} else if(android instanceof AppExtension){
44+
DataHelper.ext.projectType = DataHelper.TYPE_APP;
45+
} else {
46+
DataHelper.ext.projectType = -1
47+
}
3948
InjectTransform transform = new InjectTransform()
4049
android.registerTransform(transform)
4150
}

src/main/groovy/com/bryansharp/gradle/hibeaver/InjectTransform.groovy

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ public class InjectTransform extends Transform {
3434

3535
@Override
3636
Set<QualifiedContent.Scope> getScopes() {
37+
if(DataHelper.ext.projectType == DataHelper.TYPE_APP){
38+
return TransformManager.SCOPE_FULL_PROJECT
39+
}else if (DataHelper.ext.projectType == DataHelper.TYPE_LIB){
40+
return TransformManager.SCOPE_FULL_LIBRARY
41+
}
3742
return TransformManager.SCOPE_FULL_PROJECT
3843
}
3944

src/main/groovy/com/bryansharp/gradle/hibeaver/utils/DataHelper.groovy

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.bryansharp.gradle.hibeaver.utils
22

33
public class DataHelper {
4+
public static final int TYPE_APP = 1;
5+
public static final int TYPE_LIB = 2;
46
static Map getExt() {
57
return objMap
68
}

0 commit comments

Comments
 (0)