Android "mainMergedManifest" does not exist - android

I am having a build issue with the following error code:
A problem was found with the configuration of task ':app:processDebugManifest' (type 'ProcessMultiApkApplicationManifest').
File 'E:\DK\app\build\intermediates\merged_manifest\debug\out\AndroidManifest.xml' specified for property 'mainMergedManifest' does not exist.
build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.example.sample"
minSdkVersion 21
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:26.1.0')
// Declare the dependency for the Firebase Authentication library
// When using the BoM, you don't specify versions in Firebase library dependencies
implementation 'com.google.firebase:firebase-auth'
implementation 'com.google.android.material:material:1.2.1'
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'com.google.firebase:firebase-auth:16.0.5'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
implementation 'com.google.firebase:firebase-database:19.5.1'
implementation 'com.google.firebase:firebase-storage:19.2.0'
implementation 'com.github.bumptech.glide:glide:4.11.0'
implementation 'com.google.gms:google-services:4.3.4'
implementation 'androidx.browser:browser:1.2.0'
}
apply plugin: 'com.google.gms.google-services'
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.sample">
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
android:allowBackup="true"
android:icon="#drawable/logo"
android:label="#string/app_name"
android:roundIcon="#mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="#style/AppTheme">
<activity
android:name=".Activities.SplashActivity"
android:theme="#style/AppTheme.Launcher"
android:windowSoftInputMode="adjustPan"
android:screenOrientation="portrait"
android:configChanges="orientation">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Activities.LoginActivity"
android:screenOrientation="portrait"
android:configChanges="orientation"/>
<activity android:name=".Activities.MainActivity"
android:windowSoftInputMode="adjustPan"
android:screenOrientation="portrait"
android:configChanges="orientation"/>
<activity android:name=".Activities.SignUpActivity"
android:screenOrientation="portrait"
android:configChanges="orientation"/>
<activity android:name=".Activities.DebugActivity"
android:screenOrientation="portrait"
android:configChanges="orientation"/>
</application>
I am new to this and I can't seem to figure out what the issue may be.
We are working on an application together and noone seems to know the issue.
We are beginners, with little to no experience.

In your build.gradle, you have these 2 lines:
compileSdkVersion 29
and
targetSdkVersion 29
The error you have shown occurs when that sdk version is not installed or does not match that of the API version on the virtual device (assuming you are using the emulator).
There are 2 things to check:
In Tools->SDK Manager, check what SDK version is installed. Your project is compiling for SDK version 29, so if you don't have 29 installed and want to use that, install it. Or if you have version 30 installed, simply change those 2 lines in your build.gradle from "29" to "30".
In Tools->AVD Manager, check the API level of your virtual device. Does it match? If not, create a new device that matches, or just simply install the matching API or change the 2 lines of code as described above.
Also, for this line:
minSdkVersion 21
Make sure SDK version 21 is installed too.

I was getting same error :
"app\build\intermediates\merged_manifest\debug\out\AndroidManifest.xml' specified for property 'mainMergedManifest' does not exist."
Solution:
Update Project Structure
Update in the Project Structure->Module->Properties
Compile SDK Version= 30 (API 30 Android 11.0(R))
Build tools verision= 30 .0.2
Update in the Project Structure->Module->Default Config
Target SDK Version = 30 (API 30 Android 11.0(R))
Update 2 files as the next:
file: build.gradle
classpath "com.android.tools.build:gradle:4.0.2"
file: gradle-wrapper.properties
Line:
distributionUrl=https://services.gradle.org/distributions/gradle-6.4.1-bin.zip
here are the video with the solution Step 2
https://www.youtube.com/watch?v=U420dx6C60I

SPANISH: ¿Problema con React Native?
Resolví el error moviendo el proyecto al disco C: y además usar el mismo SDK que recomiendan en la documentación de React Native.
ENGLISH: From React Native?
I solved this, moving my project to local disk C:, make sure you have the same SDK that de documentation recommends.

Related

Android plugin in Unity

i am trying to add a local .aar from an android library in Unity. Currently it is a very basic project, in unity there is just one script that opens the activity from android library on a button click.
I manually added the .aar in the /plugins/android folder (I am using 2019.4 version), and on build I keep getting the error that a resource is not found (Theme.AppCompat.Light.NoActionBar' not found in AndroidManifest)
.
This are my graddle config & AndroidManifest:
plugins {
id 'com.android.library'
}
android {
compileSdk 31
defaultConfig {
minSdk 21
targetSdk 31
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation "com.facebook.react:react-native:+"
implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
implementation 'com.google.android.material:material:1.4.0'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
//(MainApplication) Manual ReactPackage Setup here...
apply from: file("../../node_modules/#react-native-community/cli-platform-android/native_modules.gradle");
applyNativeModulesAppBuildGradle(project)
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:name=".MainApplication"
android:allowBackup="true"
android:usesCleartextTraffic="true"
android:supportsRtl="true"
>
<activity android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
<activity
android:name=".ReactNativeActivity"
android:theme="#style/Theme.AppCompat.Light.NoActionBar"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="adjustResize" />
</application>
</manifest>
I am a newbie when it comes to mobile development, but I think the issue is that the dependencies from build.graddle are not included in the .aar.
I think my options are to either create a fat .aar , manually download dependencies .aar's or to publish .aar to a central repository. Am I on the right track?
Any help is more than appriciated
I manage to get over the error by adding a custom graddle template to the unity project.

Google Play: Can't install app, error 504 (INSTALL_PARSE_FAILED_MANIFEST_MALFORMED)

I have an app that was uploaded to Google Play. The problem is: it does not want to install on some devices, for example a Samsung J7. The other thing is that, I have two same devices (Gionee S Plus), one has Android 7.0 rooted, on which the app is working fine, and the other one is on Android 6.0, but the app does not want to install. When I try to install the app on the second device directly with the apk, I get:
Parse error
There was a problem parsing the package
And when I try to install it from the Store, I get:
Can't install the app
With no other clear message.
After searching for this problem, I found that I needed to do somethings:
Clear Google Play & services data and cache: did not work
Restart phone: did not work
Uninstall Google Play updates: when trying to install with the old version, I get the same error message but this time I got the error message 504. When I searched for this error, I read that I should completely delete all my google accounts, which I did but still the same problem.
I doubted it was the manifest problem, and I decompiled the apk but it looks fine.
Manifest.xml on Android Studio:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myapp">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<application
android:name="com.myapp.MainApplication"
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:roundIcon="#mipmap/ic_launcher"
android:supportsRtl="true"
android:theme="#style/PurpeTheme">
<meta-data
android:name="com.onesignal.NotificationOpened.DEFAULT"
android:value="DISABLE" />
<activity android:name="com.myapp.ActivitySplash">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.myapp.ActivityHome" />
<activity android:name="com.myapp.ActivityTrack"/>
<activity android:name="com.myapp.ActivityEqualizer" />
<activity android:name="com.myapp.ActivityAboutUs" />
<activity android:name="com.myapp.ActivitySettings" />
<service android:name="com.myapp.services.ServicePlayer" />
<service android:name="com.myapp.services.DownloadService" />
<activity android:name="com.myapp.ActivityFavorites" />
<activity android:name="com.myapp.ActivityPrivacyPolicy" />
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="#string/admob_app_id" />
<meta-data
android:name="firebase_crashlytics_collection_enabled"
android:value="${crashlyticsEnabled}" />
</application>
</manifest>
build.gradle app level
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.android.application'
apply plugin: 'io.objectbox'
apply plugin: 'io.fabric'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.myapp"
minSdkVersion 16
targetSdkVersion 28
versionCode 3
versionName "1.2"
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled false
signingConfig signingConfigs.config
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
manifestPlaceholders = [crashlyticsEnabled: true]
}
debug {
manifestPlaceholders = [crashlyticsEnabled: false]
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.appcompat:appcompat:1.1.0-alpha03'
implementation 'com.google.android.material:material:1.1.0-alpha04'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'com.google.android.gms:play-services-ads:17.2.0'
implementation 'de.hdodenhof:circleimageview:2.1.0'
implementation 'jp.wasabeef:blurry:2.1.1'
implementation 'com.sothree.slidinguppanel:library:3.3.0'
implementation 'com.nabinbhandari.android:permissions:3.5'
implementation 'com.orhanobut:dialogplus:1.11#aar'
implementation 'com.diogobernardino:williamchart:2.5.0'
implementation 'com.h6ah4i.android.widget.verticalseekbar:verticalseekbar:0.7.2'
implementation 'com.sdsmdg.harjot:croller:1.0.7'
implementation 'com.ToxicBakery.viewpager.transforms:view-pager-transforms:1.2.32#aar'
implementation 'com.google.code.gson:gson:2.8.2'
implementation 'com.squareup.retrofit2:retrofit:2.3.0'
implementation 'com.squareup.retrofit2:converter-gson:2.0.2'
implementation 'com.github.bumptech.glide:glide:4.7.1'
implementation 'com.wang.avi:library:2.1.3'
implementation 'androidx.multidex:multidex:2.0.1'
implementation 'jp.wasabeef:glide-transformations:3.3.0'
implementation 'com.codemybrainsout.rating:ratingdialog:1.0.8'
implementation 'com.github.varunest:sparkbutton:1.0.5'
implementation 'com.onesignal:OneSignal:[3.9.1, 3.99.99]'
implementation 'com.google.android.gms:play-services-analytics:16.0.8'
testImplementation 'junit:junit:4.12'
implementation 'com.google.firebase:firebase-core:16.0.8'
implementation 'com.crashlytics.sdk.android:crashlytics:2.9.9'
}
apply plugin: 'com.google.gms.google-services'
Update:
I get INSTALL_PARSE_FAILED_MANIFEST_MALFORMED when trying to install the app from Android Studio to some devices. I found the solution, and it detailed in my answer below.
Actually, the problem was in the package name, apparently some devices and some android versions (Android 6.0) does not accept a capital lettre as the beginning of a package name. And by package name I mean your project file structure, not the application id.
Here is what I did get when I tried the app with the emulator, and what did help me find the problem:

Having compatibility issues on Google Play with some devices

I've recently just launched my app, and it's going really well! I am having issues with some users, though. Users on older devices such as the Nexus 5X, Huawei P10 Lite, and Meizu M2 Note are saying they are unable to download the app on Google Play because it says it is incompatible with their device. I've already checked the Developer Console and it says the app should support these devices (except the Meizu that one doesn't even show up in the catalog). I've also already run emulators mimicking the devices and everything works fine. All of them are running Android 8.0 which I know for sure is supported by my app.
I've been looking all over google for a way to solve this, but honestly I have no idea what to do anymore. This is my first real app and I can't help but get the feeling that I'm missing some crucial step for widespread release.
Here's my Manifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.balanstudios.einar.workouttimer">
<uses-permission android:name="android.permission.VIBRATE" />
<uses-feature android:name="android.hardware.vibrate" android:required="false"></uses-feature>
<application
android:name=".BaseApp"
android:allowBackup="true"
android:icon="#mipmap/ic_work_icon_small"
android:label="Robota"
android:roundIcon="#mipmap/ic_work_icon_small_round"
android:supportsRtl="true"
android:theme="#style/WorkoutTimerLight">
<activity
android:name=".MainActivity"
android:screenOrientation="portrait"
android:theme="#style/WorkoutTimerLight"
android:windowSoftInputMode="adjustPan">
</activity>
<meta-data
android:name="preloaded_fonts"
android:resource="#array/preloaded_fonts" />
<activity android:name=".SplashScreen"
android:screenOrientation="portrait"
android:theme="#style/WorkoutTimerLight"
android:windowSoftInputMode="adjustPan">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER"></category>
</intent-filter>
</activity>
</application>
</manifest>
Here's my gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.balanstudios.einar.workouttimer"
minSdkVersion 23
targetSdkVersion 28
versionCode 7
versionName "1.0.2"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
sourceSets { main { assets.srcDirs = ['src/main/assets', 'src/main/assets/'] } }
lintOptions {
abortOnError false
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'
implementation 'com.android.support:support-media-compat:28.0.0-alpha3'
implementation 'com.android.support:design:28.0.0-alpha3'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
implementation 'com.android.support:support-v4:28.0.0-alpha3'
implementation 'com.google.code.gson:gson:2.8.2'
implementation 'com.anjlab.android.iab.v3:library:1.0.44'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
Does anyone have any ideas? I would really appreciate any help!
Play Store Link
Your app has min Sdk = 23 (this gradle line)
minSdkVersion 23
The complaints are probably from users on older versions of Android.

Why does Android Studio throw errors in the manifest file when we change the compileSdkVersion and targetSdkVersion from 26 to 23?

I have searched SO thoroughly and couldn't find the reason for the error that I am facing.
Things I did:
I changed the compileSdkVersion & targetSdkVersions in app gradle file from 26 to 23.
I clicked sync now.
It resulted in 7 error messages making my manifest file go haywire.
Snippets:
My App Gradle file after changing the compile,target sdk versions to 23 from 26
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.airtelanalytics"
minSdkVersion 14
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support:recyclerview-v7:26.1.+'
compile 'com.jaredrummler:android-processes:1.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}
Android SDK Platform 23 is installed already
Error Messages (affecting Manifest file) due to change of SDK version from 26 to 23
Manifest file
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="23" />
<application
android:allowBackup="true"
android:debuggable="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:roundIcon="#mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="#style/AppTheme" >
<activity android:name="com.analyticsdemo.MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
How to fix this ?
I changed the compileSdkVersion & targetSdkVersions in app gradle file from 26 to 23.
That is not a good plan, particularly if you plan to ship via the Play Store, as you will have to raise the values again shortly.
How to fix this ?
The best solution is to move your compileSdkVersion and targetSdkVersion back to 26.
Otherwise, fix the errors reported by the compiler.
In this case, your manifest has android:roundIcon on <application>, and android:roundIcon did not exist back with API Level 23. You are saying, via compileSdkVersion 23, that you want to compile using the rules that existed for API Level 23, and that includes not using things that did not exist back then. So, get rid of android:roundIcon from your actual manifest.

Application not able to debugging android

Android Studio can't start debug my app. It's outputs message
My AndroidManifest.xml file
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.xxx" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:debuggable="true"
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:supportsRtl="true"
android:theme="#style/AppTheme"
tools:ignore="HardcodedDebugMode">
<activity android:name="com.xxx.MainContentActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.xxx.ViewerActivity" />
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
</application>
My Gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.xxx"
minSdkVersion 14
targetSdkVersion 23
versionCode 2
versionName "1.0"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:design:23.3.0'
compile 'com.android.support:recyclerview-v7:23.3.0'
compile 'com.android.support:cardview-v7:23.3.0'
compile 'com.google.android.gms:play-services:8.4.0'
}
I try clean/rebuild gradle project, Restart Android Studio, Invalidate cache, and rebbot ADB Integration (Tools -> Android -> Disable ADB Integration -> Enable ADB Integration)
Any ideas?
P.S. Before this I changed the name of the application package
P.S.{2} Android Studio can't debug other projects.
Do following steps:
Navigate to Tools --> android --> disable adb integration and again enable it
after that unpluged USB from device and again plugged.
Debug again.
checkout this link
hope this helps.
After two days, I found the only way out of my situation.Android Studio debugging only new projects. Therefore it was necessary to remove the old project with the modified package name (code stored), create a new project with the desired package name and restore code. Thank you all for your answers and help.

Categories

Resources