diff --git a/java/app.go b/java/app.go index 2fd397ae5..d535c5a67 100755 --- a/java/app.go +++ b/java/app.go @@ -580,28 +580,14 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) { // Build a final signed app package. packageFile := android.PathForModuleOut(ctx, a.installApkName+".apk") - v4SigningRequested := Bool(a.Module.deviceProperties.V4_signature) - var v4SignatureFile android.WritablePath = nil - if v4SigningRequested { - v4SignatureFile = android.PathForModuleOut(ctx, a.installApkName+".apk.idsig") - } - CreateAndSignAppPackage(ctx, packageFile, a.exportPackage, jniJarFile, dexJarFile, certificates, apkDeps, v4SignatureFile) + CreateAndSignAppPackage(ctx, packageFile, a.exportPackage, jniJarFile, dexJarFile, certificates, apkDeps) a.outputFile = packageFile - if v4SigningRequested { - a.extraOutputFiles = append(a.extraOutputFiles, v4SignatureFile) - } for _, split := range a.aapt.splits { // Sign the split APKs packageFile := android.PathForModuleOut(ctx, a.installApkName+"_"+split.suffix+".apk") - if v4SigningRequested { - v4SignatureFile = android.PathForModuleOut(ctx, a.installApkName+"_"+split.suffix+".apk.idsig") - } - CreateAndSignAppPackage(ctx, packageFile, split.path, nil, nil, certificates, apkDeps, v4SignatureFile) + CreateAndSignAppPackage(ctx, packageFile, split.path, nil, nil, certificates, apkDeps) a.extraOutputFiles = append(a.extraOutputFiles, packageFile) - if v4SigningRequested { - a.extraOutputFiles = append(a.extraOutputFiles, v4SignatureFile) - } } // Build an app bundle. @@ -1250,7 +1236,7 @@ func (a *AndroidAppImport) generateAndroidBuildActions(ctx android.ModuleContext } a.certificate = certificates[0] signed := android.PathForModuleOut(ctx, "signed", apkFilename) - SignAppPackage(ctx, signed, dexOutput, certificates, nil) + SignAppPackage(ctx, signed, dexOutput, certificates) a.outputFile = signed } else { alignedApk := android.PathForModuleOut(ctx, "zip-aligned", apkFilename) @@ -1506,7 +1492,7 @@ func (r *RuntimeResourceOverlay) GenerateAndroidBuildActions(ctx android.ModuleC _, certificates := collectAppDeps(ctx, false, false) certificates = processMainCert(r.ModuleBase, String(r.properties.Certificate), certificates, ctx) signed := android.PathForModuleOut(ctx, "signed", r.Name()+".apk") - SignAppPackage(ctx, signed, r.aapt.exportPackage, certificates, nil) + SignAppPackage(ctx, signed, r.aapt.exportPackage, certificates) r.certificate = certificates[0] r.outputFile = signed diff --git a/java/app_builder.go b/java/app_builder.go index b2780bc90..5e7fbe6de 100644 --- a/java/app_builder.go +++ b/java/app_builder.go @@ -45,7 +45,7 @@ var combineApk = pctx.AndroidStaticRule("combineApk", }) func CreateAndSignAppPackage(ctx android.ModuleContext, outputFile android.WritablePath, - packageFile, jniJarFile, dexJarFile android.Path, certificates []Certificate, deps android.Paths, v4SignatureFile android.WritablePath) { + packageFile, jniJarFile, dexJarFile android.Path, certificates []Certificate, deps android.Paths) { unsignedApkName := strings.TrimSuffix(outputFile.Base(), ".apk") + "-unsigned.apk" unsignedApk := android.PathForModuleOut(ctx, unsignedApkName) @@ -66,10 +66,10 @@ func CreateAndSignAppPackage(ctx android.ModuleContext, outputFile android.Writa Implicits: deps, }) - SignAppPackage(ctx, outputFile, unsignedApk, certificates, v4SignatureFile) + SignAppPackage(ctx, outputFile, unsignedApk, certificates) } -func SignAppPackage(ctx android.ModuleContext, signedApk android.WritablePath, unsignedApk android.Path, certificates []Certificate, v4SignatureFile android.WritablePath) { +func SignAppPackage(ctx android.ModuleContext, signedApk android.WritablePath, unsignedApk android.Path, certificates []Certificate) { var certificateArgs []string var deps android.Paths @@ -78,22 +78,14 @@ func SignAppPackage(ctx android.ModuleContext, signedApk android.WritablePath, u deps = append(deps, c.Pem, c.Key) } - outputFiles := android.WritablePaths{signedApk} - var flag string = "" - if v4SignatureFile != nil { - outputFiles = append(outputFiles, v4SignatureFile) - flag = "--enable-v4" - } - ctx.Build(pctx, android.BuildParams{ Rule: Signapk, Description: "signapk", - Outputs: outputFiles, + Output: signedApk, Input: unsignedApk, Implicits: deps, Args: map[string]string{ "certificates": strings.Join(certificateArgs, " "), - "flags": flag, }, }) } diff --git a/java/app_test.go b/java/app_test.go index 336051095..998c76a32 100644 --- a/java/app_test.go +++ b/java/app_test.go @@ -1200,66 +1200,6 @@ func TestCertificates(t *testing.T) { } } -func TestRequestV4SigningFlag(t *testing.T) { - testCases := []struct { - name string - bp string - expected string - }{ - { - name: "default", - bp: ` - android_app { - name: "foo", - srcs: ["a.java"], - sdk_version: "current", - } - `, - expected: "", - }, - { - name: "default", - bp: ` - android_app { - name: "foo", - srcs: ["a.java"], - sdk_version: "current", - v4_signature: false, - } - `, - expected: "", - }, - { - name: "module certificate property", - bp: ` - android_app { - name: "foo", - srcs: ["a.java"], - sdk_version: "current", - v4_signature: true, - } - `, - expected: "--enable-v4", - }, - } - - for _, test := range testCases { - t.Run(test.name, func(t *testing.T) { - config := testAppConfig(nil, test.bp, nil) - ctx := testContext() - - run(t, ctx, config) - foo := ctx.ModuleForTests("foo", "android_common") - - signapk := foo.Output("foo.apk") - signFlags := signapk.Args["flags"] - if test.expected != signFlags { - t.Errorf("Incorrect signing flags, expected: %q, got: %q", test.expected, signFlags) - } - }) - } -} - func TestPackageNameOverride(t *testing.T) { testCases := []struct { name string diff --git a/java/java.go b/java/java.go index f6fe76e18..7f3ba981f 100644 --- a/java/java.go +++ b/java/java.go @@ -337,10 +337,6 @@ type CompilerDeviceProperties struct { UncompressDex bool `blueprint:"mutated"` IsSDKLibrary bool `blueprint:"mutated"` - - // If true, generate the signature file of APK Signing Scheme V4, along side the signed APK file. - // Defaults to false. - V4_signature *bool } func (me *CompilerDeviceProperties) EffectiveOptimizeEnabled() bool {