我想在一个项目中创建不同的apk文件。
在android studio中,我重构包路径,并更改清单包。
并更改applicationId,但它仍然存在问题。
当我已经安装了一个并安装另一个更改包名称的apk文件时,它会在一个之前要求卸载。
我不知道如何制作具有另一个包名称的不同apk文件。
我想在一个项目中安装两个apk文件进行测试。
这是我的build.gradle。
// This file includes polyfills needed by Angular 2 and is loaded before
// the app. You can add your own extra polyfills to this file.
import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/set';
import 'core-js/es6/reflect';
import 'core-js/es7/reflect';
import 'zone.js/dist/zone';
这是我的manifest.xml
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.comsol.com_dev.fourslink"
minSdkVersion 19
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile('com.android.support:appcompat-v7:25.+') { exclude module: 'commons-io' }
compile('com.android.support.constraint:constraint-layout:1.0.2') { exclude module: 'commons-io' }
testCompile 'junit:junit:4.12'
compile('com.mobsandgeeks:android-saripaar:2.0.3') { exclude module: 'commons-io' }
compile('com.koushikdutta.ion:ion:2.1.9') { exclude module: 'commons-io' }
compile('gun0912.ted:tedpermission:1.0.2') { exclude module: 'commons-io' }
compile('com.android.support:design:22.+') { exclude module: 'commons-io' }
compile('com.estimote:sdk:0.13.0') { exclude module: 'commons-io' }
compile('jp.wasabeef:glide-transformations:2.0.0') { exclude module: 'commons-io' }
compile('com.afollestad:easyvideoplayer:0.3.0') { exclude module: 'commons-io' }
compile('com.github.jrvansuita:PickImage:v2.0.0') { exclude module: 'commons-io' }
compile('com.amazonaws:aws-android-sdk-s3:2.+') { exclude module: 'commons-io' }
compile('com.mindorks:placeholderview:0.6.0') { exclude module: 'commons-io' }
compile('com.tsengvn:Typekit:1.0.0') { exclude module: 'commons-io' }
compile('com.github.esafirm:RxDownloader:1.0.1') { exclude module: 'commons-io' }
compile('com.mlsdev.rximagepicker:library:1.1.2') { exclude module: 'commons-io' }
compile('io.github.jeancsanchez.photoviewslider:photoviewslider:1.2.0') {
exclude module: 'commons-io'
}
compile('com.nononsenseapps:filepicker:3.1.0') { exclude module: 'commons-io' }
compile('com.gjiazhe:scrollparallaximageview:1.0') { exclude module: 'commons-io' }
compile('com.droidninja:filepicker:1.0.8') { exclude module: 'commons-io' }
compile('com.android.support:multidex:1.0.0') { exclude module: 'commons-io' }
compile 'com.google.guava:guava:19.0'
compile 'com.itextpdf:itextpdf:5.5.11'
compile 'org.altbeacon:android-beacon-library:2.7.1'
compile 'com.squareup:otto:1.3.7'
compile 'net.protyposis.android.mediaplayer:mediaplayer:4.3.0'
compile 'net.protyposis.android.mediaplayer:mediaplayer-dash:4.3.0'
compile 'com.github.rtoshiro.fullscreenvideoview:fullscreenvideoview:1.1.2'
compile 'com.github.halilozercan:BetterVideoPlayer:1.1.0'
}
在那里,我将comsol改为comsec。但是覆盖它。
并在strings.xml中,
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.comsol.com_dev.fourslink">
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.BROADCAST_STICKY"/>
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="false"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:allowBackup"
>
<activity android:name=".Activity.SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
只有这一点,它改变了ThreesLink
如果您对此有任何想法,请帮助我。
我不知道为什么会覆盖它。
包名称不同,它会安装其他。
答案 0 :(得分:0)
在gradle文件中:
android {
productFlavors {
dev {
applicationId "your.com.dev"
}
prod {
applicationId "your.com.prod"
}
}
}
或
右键单击项目并打开项目模块设置 - &gt;应用
在命令提示符下运行此命令:组装所有应用程序和辅助包的所有变体。
gradlew assemble
答案 1 :(得分:0)
您也可以在internal static T DeserializeObject<T>(this JsonSerializer serializer, string value) : where T : new()
app.gradle