I am a game designer and unity developer, i rarely do any android native development and i was hoping that you guys can help me with this, in this manifest, what is the main Activity?
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal" android:theme="#android:style/Theme.NoTitleBar" package="com.juiceglobal.lines" android:versionName="1.0" android:versionCode="1">
<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" android:anyDensity="true" />
<application android:icon="#drawable/app_icon" android:label="#string/app_name" android:debuggable="true" android:name="com.soomla.SoomlaApp">
<activity android:name="com.unity3d.player.UnityPlayerActivity" android:launchMode="singleTask" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:screenOrientation="portrait">
</activity>
<activity android:name="com.unity3d.player.UnityPlayerNativeActivity" android:launchMode="singleTask" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:screenOrientation="portrait">
<meta-data android:name="android.app.lib_name" android:value="unity" />
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
</activity>
<activity android:name=".Main" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:label="#string/app_name">
</activity>
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
<activity android:name="com.unity3d.player.UnityPlayerProxyActivity" android:launchMode="singleTask" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
</activity>
<!-- Google Play -->
<!-- -->
<!-- -->
<meta-data android:name="billing.service" android:value="google.GooglePlayIabService" />
<meta-data android:name="com.google.android.gms.version" android:value="#integer/google_play_services_version" />
<!-- End Google Play -->
<!-- -->
<!-- -->
<!-- -->
<!-- -->
<!-- voluum -->
<receiver android:exported="true" android:name="com.voluum.sdk.VoluumForwardingBroadcastReceiver">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<!-- End voluum -->
<!-- -->
<!-- -->
<!-- HeyZap -->
<activity android:name="com.heyzap.sdk.ads.HeyzapInterstitialActivity" android:configChanges="keyboardHidden|orientation|screenSize|smallestScreenSize" />
<activity android:name="com.heyzap.sdk.ads.HeyzapVideoActivity" android:configChanges="keyboardHidden|orientation|screenSize|smallestScreenSize" />
<activity android:name="com.heyzap.sdk.ads.HeyzapProxyActivity" />
<!--<activity android:name="com.heyzap.sdk.ads.VASTActivity" />-->
<receiver android:name="com.heyzap.sdk.ads.PackageAddedReceiver">
<intent-filter>
<data android:scheme="package" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
</intent-filter>
</receiver>
<!-- End HeyZap -->
<!-- -->
<!-- -->
<!-- Others -->
<activity android:name="com.mobilefuel.sdk.AdInterstitialActivity" android:configChanges="orientation|keyboardHidden|screenSize" android:label="AD" android:exported="false" />
<activity android:name="com.soomla.store.billing.google.GooglePlayIabService$IabActivity" android:theme="#android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
<activity android:name="com.facebook.unity.FBUnityLoginActivity" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:theme="#android:style/Theme.Translucent.NoTitleBar.Fullscreen">
</activity>
<activity android:name="com.facebook.unity.FBUnityDialogsActivity" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" android:theme="#android:style/Theme.Translucent.NoTitleBar.Fullscreen">
</activity>
<activity android:name="com.facebook.LoginActivity" android:configChanges="keyboardHidden|orientation" android:theme="#android:style/Theme.Translucent.NoTitleBar.Fullscreen">
</activity>
<activity android:name="com.facebook.unity.FBUnityDeepLinkingActivity" android:exported="true">
</activity>
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="\ 503591776472556" />
<!--End Others -->
<!-- TrialPay activities -->
<activity android:name="com.trialpay.android.views.webcontainer.WebContainerActivity" android:hardwareAccelerated="true" android:launchMode="singleTop" android:windowSoftInputMode="adjustResize" android:theme="#android:style/Theme.NoTitleBar" android:screenOrientation="fullSensor" android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|fontScale">
<meta-data android:name="android.app.lib_name" android:value="unity" />
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
</activity>
<activity android:name="com.trialpay.android.views.webcontainer.WebContainerPopupActivity" android:hardwareAccelerated="true" android:launchMode="singleTop" android:windowSoftInputMode="adjustResize" android:theme="#android:style/Theme.Translucent.NoTitleBar" android:screenOrientation="fullSensor" android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|fontScale">
<meta-data android:name="android.app.lib_name" android:value="unity" />
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
</activity>
<activity android:name="com.trialpay.android.views.videocontainer.VideoContainerActivity" android:hardwareAccelerated="true" android:theme="#android:style/Theme.NoTitleBar.Fullscreen" android:screenOrientation="fullSensor" android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|fontScale">
<meta-data android:name="android.app.lib_name" android:value="unity" />
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
</activity>
<!--End TrialPay activities -->
</application>
<uses-feature android:glEsVersion="0x00020000" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.android.vending.BILLING" />
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="21" />
</manifest>
i need it in the initialization of another "plugin", i tried :
com.unity3d.player.UnityPlayer
com.unity3d.player.UnityPlayerActivity
com.unity3d.player.UnityPlayerProxyActivity
com.soomla.SoomlaApp
And i always get the same error :
AndroidJavaException: java.lang.NoSuchFieldError: no static field with name='one.of.the.package.above' signature='Ljava/lang/Object;' in class Lcom/unity3d/player/UnityPlayer;
EDIT
i can't share the entire class because it's not mine but this is the initialization that gives the error :
private const string MainActivityName = "com.unity3d.player.UnityPlayerProxyActivity";
public void ReportConversion(string payload)
{
using (AndroidJavaClass cls_UnityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
{
using (AndroidJavaObject obj_Activity = cls_UnityPlayer.GetStatic<AndroidJavaObject>(MainActivityName))
{
AndroidJavaClass cls_MainActivity = new AndroidJavaClass("com.companyName.voluum.Main");
cls_MainActivity.CallStatic("ReportConversion", obj_Activity, payload);
}
}
}
Thank you
com.unity3d.player.UnityPlayerProxyActivity is the main Activity in your app. The activity with the android.intent.category.LAUNCHER in the manifest file is always the main activity (starting activity).
Using currentActivity fixed the problem (literally typing currentActivity) when I do this call
private const string MainActivityName = "currentActivity";
using (AndroidJavaObject obj_Activity = cls_UnityPlayer.GetStatic<AndroidJavaObject>(MainActivityName)) ;
Related
You uploaded an APK or Android App Bundle which has an activity, activity alias, service or broadcast receiver with intent filter, but without the android:exported property set. This file can't be installed on Android 12 or higher. I add android:exported on LAUNCHER too but still getting same warning while uploading app on playstore.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.skdevs.status">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<application
android:name="com.skdevs.status.util.YouApplication"
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:largeHeap="true"
android:requestLegacyExternalStorage="true"
android:roundIcon="#mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="#style/AppTheme"
android:usesCleartextTraffic="true">
<activity
android:name="com.skdevs.status.activity.WelcomeActivity"
android:label="#string/app_name"
android:theme="#style/AppTheme.NoActionBar"
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.skdevs.status.activity.SplashScreen" />
<activity
android:name="com.skdevs.status.activity.MainActivity"
android:configChanges="orientation|screenLayout|screenSize"
android:screenOrientation="portrait"
android:exported="false"
tools:ignore="LockedOrientationActivity" />
<activity android:name="com.skdevs.status.activity.AboutUs" />
<activity android:name="com.skdevs.status.activity.PrivacyPolice" />
<activity android:name="com.skdevs.status.activity.Login" />
<activity android:name="com.skdevs.status.activity.Register" />
<activity android:name="com.skdevs.status.activity.ForgetPassword" />
<activity android:name="com.skdevs.status.activity.EnterReferenceCode"/>
<activity android:name="com.skdevs.status.activity.DeleteAccount" />
<activity android:name="com.skdevs.status.activity.RewardPointClaim" />
<activity android:name="com.skdevs.status.activity.Verification" />
<activity android:name="com.skdevs.status.activity.ContactUs" />
<activity android:name="com.skdevs.status.activity.Faq" />
<activity android:name="com.skdevs.status.activity.EarnPoint" />
<activity android:name="com.skdevs.status.activity.StatusDetail" />
<activity android:name="com.skdevs.status.activity.StatusSaver" />
<activity android:name="com.skdevs.status.activity.DownloadStatusDetail" />
<activity android:name="com.skdevs.status.activity.ViewImage" />
<activity
android:name="com.skdevs.status.activity.ImageUpload"
android:screenOrientation="portrait"
android:exported="false"
tools:ignore="LockedOrientationActivity" />
<activity
android:name="com.skdevs.status.activity.GIFUpload"
android:screenOrientation="portrait"
android:exported="false"
tools:ignore="LockedOrientationActivity" />
<activity
android:name="com.skdevs.status.activity.QuotesUpload"
android:screenOrientation="portrait"
android:exported="false"
tools:ignore="LockedOrientationActivity" />
<activity android:name="com.skdevs.status.activity.Language" />
<activity android:name="com.skdevs.status.activity.UploadStatus" />
<activity
android:name="com.skdevs.status.activity.VideoPlayer"
android:configChanges="orientation|screenLayout|screenSize"
android:screenOrientation="portrait"
android:exported="false"
tools:ignore="LockedOrientationActivity" />
<activity
android:name="com.skdevs.status.activity.VideoUpload"
android:screenOrientation="portrait"
android:exported="false"
tools:ignore="LockedOrientationActivity" />
<activity
android:name="com.skdevs.status.activity.AllComment"
android:screenOrientation="portrait"
android:exported="false"
tools:ignore="LockedOrientationActivity" />
<activity android:name="com.skdevs.status.activity.AVStatus" />
<activity android:name="com.skdevs.status.activity.Suspend" />
<activity android:name="com.skdevs.status.activity.AccountVerification" />
<activity android:name="com.skdevs.status.activity.Spinner" />
<activity android:name="com.skdevs.status.activity.TDView" />
<activity
android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
android:exported="false"
android:theme="#style/Base.Theme.AppCompat" /> <!-- Include the AdActivity configChanges and theme. -->
<activity
android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:exported="false"
android:theme="#android:style/Theme.Translucent" />
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="#string/admob_id" />
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="#string/facebook_app_id" />
<activity
android:name="com.facebook.FacebookActivity"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:exported="false"
android:label="#string/app_name" />
<activity
android:name="com.facebook.CustomTabActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="#string/fb_login_protocol_scheme" />
</intent-filter>
</activity>
<service
android:name="com.skdevs.status.util.NotificationExtenderExample"
android:exported="false"
android:permission="android.permission.BIND_JOB_SERVICE">
<intent-filter>
<action android:name="com.onesignal.NotificationExtender" />
</intent-filter>
</service>
<service
android:name="com.skdevs.status.service.VideoUploadService"
android:exported="false" />
<service
android:name="com.skdevs.status.service.DownloadVideoService"
android:exported="false" />
<service
android:name="com.skdevs.status.service.DownloadIGService"
android:exported="false" />
<service
android:name="com.skdevs.status.service.UIGService"
android:exported="false" />
</application>
</manifest>
you need to set android:exported="true" in your Launcher activity itself.
From Developer Guide:
so there must be android:exported="false" in your CustomTabActivity
add this line in your application tag; tools:replace="android:exported"
<application
tools:replace="android:exported" >
</application>
I get the following error when I run the application on my phone via Android Studio.
I have checked, there is no version of this app installed on any of the user accounts on my phone. My build.gradle file contains defaultConfig.applicationId = "com.fyp.agripoint"
Here is the AndroidManifest.xml file
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.fyp.agripoint">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="AgriPointApp"
android:supportsRtl="true">
<activity
android:name=".MainActivity"
android:theme="#style/AppChildTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".buysell.MainActivityMap"
android:theme="#style/AppChildTheme">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
</activity>
<activity
android:name=".calendar.MainActivityCalendar"
android:theme="#style/AppChildTheme">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
</activity>
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="#string/google_maps_key" />
<service
android:name=".location.LocationService"
android:enabled="true"
android:exported="true" />
<service
android:name=".location.test"
android:enabled="true"
android:exported="true" />
<activity
android:name=".mandi.MandiRateActivity"
android:theme="#style/AppChildTheme" />
<meta-data
android:name="io.fabric.ApiKey"
android:value="my_key" />
<activity
android:name=".profile.ProfileActivity"
android:theme="#style/AppChildTheme" />
<activity
android:name=".profile.PrefsActivity"
android:theme="#style/AppChildTheme" />
<activity
android:name=".profile.EditProfileActivity"
android:theme="#style/AppChildTheme" />
<activity
android:name=".events.MainActivityEvent"
android:theme="#style/AppChildTheme" />
<receiver
android:name=".events.AlarmReceiver"
android:process="remote" />
<service
android:name=".events.NotificationService"
android:enabled="true"
android:exported="true" />
<activity
android:name=".articles.MainActivityArticles"
android:theme="#style/AppChildTheme" />
<activity
android:name=".articles.ArticleDetail"
android:theme="#style/AppChildTheme" />
</application>
</manifest>
Specify complete activity name in manifest.
Always use:
www.yourcompany.com.MainActivity
instead of :
.MainActivity
Hi I made an android game which uses googleadmob. I have decided to port it to amazon app store as well and use game circle. They both have their own android manifests so this creates an error when building. How can I combine the abmob manifest into the game circle one. Please advise as i do not know xml!
Admob Manifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:installLocation="preferExternal" package="com.example.admobtest" android:versionName="1.0" android:versionCode="1">
<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" android:anyDensity="true" />
<!-- Google Mobile Ads Permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application android:icon="#drawable/app_icon" android:label="#string/app_name" android:debuggable="false">
<!-- meta-data tag for Google Play services -->
<meta-data android:name="com.google.android.gms.version" android:value="#integer/google_play_services_version"/>
<activity android:name="com.unity3d.player.UnityPlayerProxyActivity" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.unity3d.player.UnityPlayerActivity" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
</activity>
<activity android:name="com.unity3d.player.UnityPlayerNativeActivity" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
<meta-data android:name="android.app.lib_name" android:value="unity" />
</activity>
<activity android:name="com.unity3d.player.VideoPlayer" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
</activity>
<!-- Google Mobile Ads Activity -->
<activity android:name="com.google.android.gms.ads.AdActivity"
android:label="#string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
</activity>
</application>
<uses-feature android:glEsVersion="0x00020000" />
<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="19" />
</manifest>
Game Circle Manifest
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.amazon.gamecircle"
android:installLocation="preferExternal"
android:versionCode="1"
android:versionName="1.0">
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"/>
<application
android:icon="#drawable/app_icon"
android:label="#string/app_name"
android:debuggable="true">
<!-- Unity Activities -->
<activity android:name="com.unity3d.player.UnityPlayerProxyActivity"
android:label="#string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.unity3d.player.UnityPlayerActivity"
android:label="#string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
</activity>
<activity android:name="com.unity3d.player.UnityPlayerNativeActivity"
android:label="#string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
<meta-data android:name="android.app.lib_name" android:value="unity" />
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="false" />
</activity>
<activity android:name="com.unity3d.player.VideoPlayer"
android:label="#string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
</activity>
<!-- GameCircle Dependencies -->
<receiver android:name="com.amazon.inapp.purchasing.ResponseReceiver">
<intent-filter>
<action android:name="com.amazon.inapp.purchasing.NOTIFY" android:permission="com.amazon.inapp.purchasing.Permission.NOTIFY" />
</intent-filter>
</receiver>
<activity
android:name="com.amazon.ags.html5.overlay.GameCircleUserInterface"
android:theme="#style/GCOverlay" >
</activity>
<activity
android:name="com.amazon.identity.auth.device.authorization.AuthorizationActivity"
android:allowTaskReparenting="true"
android:launchMode="singleTask"
android:theme="#android:style/Theme.NoDisplay" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="bundle id here"
android:scheme="amzn" />
</intent-filter>
</activity>
<receiver
android:name="com.amazon.identity.auth.device.authorization.PackageIntentReceiver"
android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.PACKAGE_INSTALL" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
<!-- META-DATA -->
</application>
<!-- PERMISSIONS -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</manifest>
Your merged manifest something look like this,
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:installLocation="preferExternal"
package="com.example.admobtest"
android:versionName="1.0" android:versionCode="1">
<uses-sdk android:minSdkVersion="9"
android:targetSdkVersion="19" />
<!-- Google Mobile Ads Permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:glEsVersion="0x00020000" />
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"/>
<!-- Google Mobile Ads Permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:icon="#drawable/app_icon"
android:label="#string/app_name"
android:debuggable="false">
<!-- meta-data tag for Google Play services -->
<meta-data android:name="com.google.android.gms.version" android:value="#integer/google_play_services_version"/>
<activity android:name="com.unity3d.player.UnityPlayerProxyActivity"
android:label="#string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
<meta-data android:name="unityplayer.ForwardNativeEventsToDalvik" android:value="true" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.unity3d.player.UnityPlayerActivity" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
</activity>
<activity android:name="com.unity3d.player.UnityPlayerNativeActivity" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
</activity>
<activity android:name="com.unity3d.player.VideoPlayer" android:label="#string/app_name" android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen" >
</activity>
<!-- Google Mobile Ads Activity -->
<activity android:name="com.google.android.gms.ads.AdActivity"
android:label="#string/app_name"
android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
</activity>
<activity
android:name="com.amazon.ags.html5.overlay.GameCircleUserInterface"
android:theme="#style/GCOverlay" >
</activity>
<!-- GameCircle Dependencies -->
<receiver android:name="com.amazon.inapp.purchasing.ResponseReceiver">
<intent-filter>
<action android:name="com.amazon.inapp.purchasing.NOTIFY" android:permission="com.amazon.inapp.purchasing.Permission.NOTIFY" />
</intent-filter>
</receiver>
<activity
android:name="com.amazon.identity.auth.device.authorization.AuthorizationActivity"
android:allowTaskReparenting="true"
android:launchMode="singleTask"
android:theme="#android:style/Theme.NoDisplay" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="bundle id here"
android:scheme="amzn" />
</intent-filter>
</activity>
<receiver
android:name="com.amazon.identity.auth.device.authorization.PackageIntentReceiver"
android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.PACKAGE_INSTALL" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
</application>
</manifest>
I'd like to release my app on the google play store. Currently the app's name is shown right, but in the options to uninstall the app, it's full package name is shown and I'd like to avoid this and instead show the app's name there, too.
Is this possible and if so how would I accomplish it?
Here's my manifest file
<?xml version="1.0" encoding="utf-8"?>
<!--
The ACCESS_COARSE/FINE_LOCATION permissions are not required to use
Google Maps Android API v2, but you must specify either coarse or fine
location permissions for the 'MyLocation' functionality.
-->
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE" />
<!-- GCM -->
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<application
android:icon="#drawable/ic_icon"
android:name="android.support.multidex.MultiDexApplication"
android:largeHeap="true"
android:label="#string/app_name"
android:screenOrientation="portrait"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="#string/facebook_app_id" />
<provider
android:name="com.facebook.FacebookContentProvider"
android:authorities="com.facebook.app.FacebookContentProvider12345678"
android:exported="true" />
<activity
android:name=".SplashScreen"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="#string/app_name"
android:theme="#style/AppTheme.NoActionBar" >
</activity>
<activity
android:name=".AddActivity"
android:label="#string/title_activity_add"
android:parentActivityName=".MainActivity"
android:theme="#style/AppTheme.NoActionBar" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.app.name.MainActivity" />
</activity>
<activity
android:name=".DiscoverActivity"
android:label="#string/title_activity_discover"
android:parentActivityName=".MainActivity"
android:theme="#style/AppTheme.NoActionBar" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.app.name.MainActivity" />
</activity>
<activity
android:name=".DetailActivity"
android:label="#string/title_activity_detail"
android:parentActivityName=".MainActivity"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
<activity
android:name=".ProfileActivity"
android:label="#string/title_activity_profile"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
<activity
android:name=".EditProfileActivity"
android:label="#string/title_activity_edit_profile"
android:parentActivityName=".ProfileActivity"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.app.name.ProfileActivity" />
</activity>
<!--
The API key for Google Maps-based APIs is defined as a string resource.
(See the file "res/values/google_maps_api.xml").
Note that the API key is linked to the encryption key used to sign the APK.
You need a different API key for each encryption key, including the release key that is used to
sign the APK for publishing.
You can define the keys for the debug and release targets in src/debug/ and src/release/.
-->
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="#string/google_maps_key" />
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
<activity
android:name=".MapsActivity"
android:label="#string/title_activity_maps"
android:screenOrientation="portrait" >
</activity>
<!-- FACEBOOK ACTIVITY -->
<activity
android:name="com.facebook.FacebookActivity"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="#string/app_name"
android:theme="#android:style/Theme.Translucent.NoTitleBar" />
<activity
android:name=".FriendsActivity"
android:label="#string/title_activity_friends"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
<activity
android:name=".RegisterActivity"
android:label="#string/title_activity_register"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
<activity
android:name=".NotificationsActivity"
android:label="#string/title_activity_notifications"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
<!-- GCM -->
<!-- [START gcm_receiver] -->
<receiver
android:name="com.google.android.gms.gcm.GcmReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="gcm.play.android.samples.com.gcmquickstart" />
</intent-filter>
</receiver>
<service
android:name=".MyGcmListenerService"
android:exported="false" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
</intent-filter>
</service>
<service
android:name=".MyInstanceIDListenerService"
android:exported="false" >
<intent-filter>
<action android:name="com.google.android.gms.iid.InstanceID" />
</intent-filter>
</service>
<service
android:name=".NotificationService"
android:exported="false" >
</service>
<!-- make API to register app to GCM available -->
<service
android:name=".RegistrationIntentService"
android:exported="false" >
<intent-filter>
<action
android:name="com.google.android.gms.iid.InstanceID"
android:permission="com.google.android.c2dm.permission.RECEIVE" />
</intent-filter>
</service>
<activity
android:name=".EditActivity"
android:label="#string/title_activity_edit"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
<activity
android:name=".BasesActivity"
android:label="#string/title_activity_bases"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
<activity
android:name=".SettingsActivity"
android:label="#string/title_activity_settings"
android:theme="#style/Theme.AppCompat.Light.NoActionBar" >
</activity>
</application>
android:label was missing in manifests application tag. When I added it first nothing changed but I tested it again today and the "error" is gone.
Just remove android:name="android.support.multidex.MultiDexApplication" from your application tag in AndroidManifest file ,it will definitely remove the problem.
I am developing an application in which i found the error in the manifest file.
my xml file
<?xml version="1.0" encoding="utf-8"?>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<!--
The ACCESS_COARSE/FINE_LOCATION permissions are not required to use
Google Maps Android API v2, but are recommended.
-->
<application
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:theme="#style/MyMaterialTheme" >
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="#string/google_maps_key" />
<activity
android:name=".activity.SplashActivity"
android:label="#string/app_name"
android:screenOrientation="portrait"
android:theme="#style/MyMaterialTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".activity.MainActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MapsActivity"
android:label="#string/title_activity_maps" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- <activity android:name=".activity.HomeFragment"/> -->
<!-- <activity android:name=".activity.MessagesFragment"/> -->
<!-- Admission Activity -->
<activity android:name=".activity.AdmissionActivity" />
<activity android:name=".activity.HomeFragment" />
<!-- Admission Activity -->
<activity android:name=".activity.OverViewActivity" />
<!-- <activity android:name=".activity.Tab1Fragment"/> -->
<!-- <activity android:name=".activity.Tab2Fragment" /> -->
<activity android:name=".activity.MessagesFragment" />
<activity android:name=".activity.AboutActivity" />
<activity android:name=".activity.FriendsFragment" />
<activity android:name=".activity.ContactFragment" />
<activity android:name=".activity.CampusFragment" />
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="#string/google_maps_key" />
</application>
Error:
Error parsing XML: not well-formed (invalid token)
What could be possibly wrong.
Add this first in your manifest .
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="add package name"
android:installLocation="auto"
android:versionCode="1"
android:versionName="1.0" >
<application
.....
</application>
</manifest>
you using this line as Two times,
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="#string/google_maps_key" />
If your code is copyed from other place and then pasted, the format of code may not be "utf-8", try hand typing the code again, or you can move the mouse to the wrong layout, click the right mouse button to select "Source" and then select "Format". I'm not sure about this, wish I could help you.