From c1d19fbf6b5004025a9dca78627e06a8bd496157 Mon Sep 17 00:00:00 2001 From: rosen-vladimirov Date: Tue, 13 Oct 2015 10:09:25 +0300 Subject: [PATCH] Use correct .apk name Gradle uses the third part of the identifier for apk name. Currently we are checking for projectName (created from dir name). Check both of them when searching for apk. Fixes https://github.com/NativeScript/nativescript-cli/issues/1041 --- lib/services/android-project-service.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/services/android-project-service.ts b/lib/services/android-project-service.ts index 246f2c7755..b4fd4d05c2 100644 --- a/lib/services/android-project-service.ts +++ b/lib/services/android-project-service.ts @@ -39,7 +39,7 @@ class AndroidProjectService extends projectServiceBaseLib.PlatformProjectService public get platformData(): IPlatformData { if (!this._platformData) { let projectRoot = path.join(this.$projectData.platformsDir, "android"); - + let packageName = this.getProjectNameFromId(); this._platformData = { frameworkPackageName: "tns-android", normalizedPlatformName: "Android", @@ -49,6 +49,8 @@ class AndroidProjectService extends projectServiceBaseLib.PlatformProjectService projectRoot: projectRoot, deviceBuildOutputPath: path.join(projectRoot, "build", "outputs", "apk"), validPackageNamesForDevice: [ + `${packageName}-debug.apk`, + `${packageName}-release.apk`, `${this.$projectData.projectName}-debug.apk`, `${this.$projectData.projectName}-release.apk` ], @@ -143,11 +145,15 @@ class AndroidProjectService extends projectServiceBaseLib.PlatformProjectService shell.sed('-i', /__TITLE_ACTIVITY__/, this.$projectData.projectName, stringsFilePath); let gradleSettingsFilePath = path.join(this.platformData.projectRoot, "settings.gradle"); - shell.sed('-i', /__PROJECT_NAME__/, this.$projectData.projectId.split(".")[2], gradleSettingsFilePath); + shell.sed('-i', /__PROJECT_NAME__/, this.getProjectNameFromId(), gradleSettingsFilePath); shell.sed('-i', /__APILEVEL__/, this.$options.sdk || this.$androidToolsInfo.getToolsInfo().wait().compileSdkVersion.toString(), manifestPath); }).future()(); } + private getProjectNameFromId(): string { + return this.$projectData.projectId.split(".")[2]; + } + public afterCreateProject(projectRoot: string): IFuture { return Future.fromResult(); }