提交 043c549e 编写于 作者: S superq_sky

Optimized some log.

上级 0c42de6c
......@@ -185,7 +185,7 @@ class VAPlugin extends BasePlugin {
File hostLocalDir = new File(targetHost)
if (!hostLocalDir.exists()) {
def err = "The directory of host application doesn't exist! Dir: ${hostLocalDir.absolutePath}"
def err = "The directory of host application doesn't exist! Dir: ${hostLocalDir.canonicalPath}"
throw new InvalidUserDataException(err)
}
......@@ -196,7 +196,7 @@ class VAPlugin extends BasePlugin {
dst << hostR
}
} else {
def err = new StringBuilder("Can't find ${hostR.absolutePath}, please check up your host application\n")
def err = new StringBuilder("Can't find ${hostR.canonicalPath}, please check up your host application\n")
err.append(" need apply com.didi.virtualapk.host in build.gradle of host application\n ")
throw new InvalidUserDataException(err.toString())
}
......@@ -208,7 +208,7 @@ class VAPlugin extends BasePlugin {
dst << hostVersions
}
} else {
def err = new StringBuilder("Can't find ${hostVersions.absolutePath}, please check up your host application\n")
def err = new StringBuilder("Can't find ${hostVersions.canonicalPath}, please check up your host application\n")
err.append(" need apply com.didi.virtualapk.host in build.gradle of host application \n")
throw new InvalidUserDataException(err.toString())
}
......
package com.didi.virtualapk.tasks
import com.android.annotations.NonNull
import com.android.build.gradle.api.ApkVariant
import com.android.build.gradle.internal.api.ApplicationVariantImpl
import com.didi.virtualapk.VAExtention
import com.didi.virtualapk.utils.Log
import com.didi.virtualapk.utils.TaskUtil
import com.sun.istack.internal.NotNull
import org.gradle.api.Action
import org.gradle.api.DefaultTask
import org.gradle.api.Project
import org.gradle.api.Task
import org.gradle.api.tasks.Input
import org.gradle.api.tasks.OutputDirectory
import org.gradle.api.tasks.TaskAction
import java.util.concurrent.Callable
/**
* Gradle task for assemble plugin apk
* @author zhengtao
......@@ -36,6 +32,8 @@ public class AssemblePlugin extends DefaultTask {
String variantName
String buildDir
/**
* Copy the plugin apk to out/plugin directory and rename to
* the format required for the backend system
......@@ -55,6 +53,8 @@ public class AssemblePlugin extends DefaultTask {
Log.i name, tip.toString()
}
Log.i name, "More building infomation could be found in the dir: ${buildDir}."
getProject().copy {
from originApkFile
into pluginApkDir
......@@ -68,7 +68,7 @@ public class AssemblePlugin extends DefaultTask {
@NotNull
Project project
@NotNull
ApkVariant variant
ApplicationVariantImpl variant
ConfigAction(@NotNull Project project, @NotNull ApkVariant variant) {
this.project = project
......@@ -77,35 +77,19 @@ public class AssemblePlugin extends DefaultTask {
@Override
void execute(AssemblePlugin assemblePluginTask) {
VAExtention virtualApk = project.virtualApk
map(assemblePluginTask, "appPackageName") {
variant.applicationId
}
map(assemblePluginTask, "apkTimestamp", {
new Date().format("yyyyMMddHHmmss")
})
map(assemblePluginTask, "originApkFile") {
variant.outputs[0].outputFile
}
map(assemblePluginTask, "pluginApkDir") {
new File(project.buildDir, "/outputs/plugin/${variant.name}")
}
map(assemblePluginTask, "variantName") {
variant.name
}
assemblePluginTask.appPackageName = variant.applicationId
assemblePluginTask.apkTimestamp = new Date().format("yyyyMMddHHmmss")
assemblePluginTask.originApkFile = variant.outputs[0].outputFile
assemblePluginTask.pluginApkDir = new File(project.buildDir, "/outputs/plugin/${variant.name}")
assemblePluginTask.variantName = variant.name
assemblePluginTask.buildDir = virtualApk.getVaContext(variant.name).getBuildDir(variant.variantData.scope).canonicalPath
assemblePluginTask.setGroup("build")
assemblePluginTask.setDescription("Build ${variant.name.capitalize()} plugin apk")
assemblePluginTask.dependsOn(variant.assemble.name)
}
static void map(@NonNull Task task, @NonNull String key, @NonNull Callable<?> value) {
TaskUtil.map(task, key, value)
}
}
}
package com.didi.virtualapk.utils
import com.android.annotations.NonNull
import org.gradle.api.Task
import org.gradle.api.internal.ConventionMapping
import java.util.concurrent.Callable
/**
* Created by qiaopu on 2018/3/19.
*/
public class TaskUtil {
public static void map(@NonNull Task task, @NonNull String key, @NonNull Callable<?> value) {
if (task instanceof GroovyObject) {
ConventionMapping conventionMapping =
(ConventionMapping) ((GroovyObject) task).getProperty("conventionMapping");
conventionMapping.map(key, value);
} else {
throw new IllegalArgumentException(
"Don't know how to apply convention mapping to task of type " + task.getClass().getName());
}
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册