Reputation: 347
Sir,
Previously when ever I have deployed my android application using xamarin on visual studio 2017 the application would be deployed perfectly. But after watching a video for google Map tutorial as : https://www.youtube.com/watch?v=W6Q0olRPsus
, I am unable to deploy application on android device and on emulator as well.
Now I am getting the following error on deployment : Failure [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED]
.
This is my error log File : https://drive.google.com/open?id=0Bxn7UXgmstmRZzMtLV9nc3M5RlU
Manifest Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="VaishnoDeviTourismApp.VaishnoDeviTourismApp" android:versionCode="1" android:versionName="1.0" android:installLocation="auto">
<uses-sdk android:minSdkVersion="16" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<permission android:name="VaishnoDeviTourismApp.VaishnoDeviTourismApp.permission.MAPS_RECEIVE" android:protectionLevel="signature" />
<uses-permission android:name="VaishnoDeviTourismApp.VaishnoDeviTourismApp.permission.MAPS_RECEIVE" />
<uses-features android:glEsVersion="0x00020000" android:required="true" />
<application android:label="VaishnoDeviTourismApp" android:icon="@drawable/logo">
<meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyBRVXFw2TXfTLDr1Dzu8-HDiv-FQJdEZ3E" />
<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
</application>
</manifest>
Upvotes: 0
Views: 60
Reputation: 16652
After testing your manifest, we found that the error occurred with your permission <permission android:name="VaishnoDeviTourismApp.VaishnoDeviTourismApp.permission.MAPS_RECEIVE" android:protectionLevel="signature" />
.
The VaishnoDeviTourismApp.VaishnoDeviTourismApp...
should be your package name, the first letter is upper case in your scenario, we may need to change it to lowercase. Like this vaishnoDeviTourismApp.VaishnoDeviTourismApp...
. Or you may try to change it like this <uses-permission android:name="${applicationId}.permission.MAPS_RECEIVE" android:protectionLevel="signature">
I didn't find any document point out this rule, actually, on the contrary, the the document says:
The name may contain uppercase or lowercase letters ('A' through 'Z'), numbers, and underscores ('_'). However, individual package name parts may only start with letters.
So, I can only consider it as a bug for now, and I found this report in Bugzilla.
Upvotes: 0