如何从android studio安装两个独立版本的应用程序?

时间:2018-06-08 04:00:05

标签: android android-studio

我正在使用github上的Firebase聊天项目。 我正在尝试制作2个应用程序,一个是客户端,另一个是管理员端。 我有两个项目副本,具有不同的项目名称和不同的应用程序名称。 不过,我无法在Android studio的同一台设备上运行。运行一个需要卸载另一个。 我明白这可能是一个非常基本的事情,但有什么建议吗? 感谢

2 个答案:

答案 0 :(得分:2)

您需要做的是更改应用Build.Gradle上的包名称,找到applicationId并更改您的一个项目包名称

希望它有效

答案 1 :(得分:1)

build.gradle标记下的应用级android文件中,为不同的应用定义不同的产品风格。 请查找以下代码并根据您的项目进行更改。

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    flavorDimensions "default"
    project.archivesBaseName = "Visualogyx";
    signingConfigs {
        release {
            storeFile file(System.getenv('KEYSTOREPATH'))
            storePassword System.getenv("VISUALOGYX_KEYSTORE_PASSWORD")
            keyAlias System.getenv("VISUALOGYX_KEYALIAS_NAME")
            keyPassword System.getenv("VISUALOGYX_KEYALIAS_PASSWORD")
        }
    }

    defaultConfig {
        applicationId "com.visualogyx.app"
        minSdkVersion 16
        targetSdkVersion 26
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
        signingConfig signingConfigs.release

        ndk {
            abiFilters "armeabi-v7a"
        }
    }
    lintOptions {
        // Or, if you prefer, you can continue to check for errors in release builds,
        // but continue the build even when errors are found:
        abortOnError false
    }
    dexOptions {
        javaMaxHeapSize "4g"
        jumboMode true
    }
    productFlavors {
        dev {
            versionCode 778899
            versionName "v.1.1.BUILD_NUM"
            applicationIdSuffix ".dev"
            resValue "string", "app_name", "VisualogyxDEV"
            buildConfigField "String", "HOST", System.getenv("VISUALOGYX_HOST_DEV") 
        }
        qa {
            versionCode 778899
            versionName "v.1.0.BUILD_NUM"
            applicationIdSuffix ".qa"
            resValue "string", "app_name", "VisualogyxQA"
            buildConfigField "String", "HOST", System.getenv("VISUALOGYX_HOST_QA") 
        }
        pro {
            versionCode 778899
            versionName "v.1.0.BUILD_NUM"
            resValue "string", "app_name", "Visualogyx"
            buildConfigField "String", "HOST", System.getenv("VISUALOGYX_HOST_PRO")
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

            applicationVariants.all { variant ->
                variant.outputs.all {
                    outputFileName = "Visualogyx-${variant.baseName}-${variant.versionName}.apk"
                }
            }
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    packagingOptions {
        exclude 'META-INF/XXX'
    }
} 

希望它有效。谢谢。