I got this error: You uploaded a debuggable APK. For security reasons you need to disable debugging before it can be published in Google Play. Yet android:debuggable="false" is in my application tag.
Manifest
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="icykum.JasonSafaiyeh.cocg"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="19" />
<application
android:debuggable="false"
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="icykum.JasonSafaiyeh.cocg.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="icykum.JasonSafaiyeh.cocg.troopScreen"
android:label="#string/title_activity_troop_screen" >
</activity>
<activity
android:name="icykum.JasonSafaiyeh.cocg.defenseScreen"
android:label="#string/title_activity_defense_screen" >
</activity>
<activity
android:name="icykum.JasonSafaiyeh.cocg.resourceScreen"
android:label="#string/title_activity_resource_screen" >
</activity>
<activity
android:name="icykum.JasonSafaiyeh.cocg.armyScreen"
android:label="#string/title_activity_army_screen" >
</activity>
<activity
android:name="icykum.JasonSafaiyeh.cocg.otherScreen"
android:label="#string/title_activity_other_screen" >
</activity>
</application>
<uses-permission android:name="android.permission.INTERNET" />
You have to create a new Keystore first.
For Android Studio: Build > Generate Signed APK > Create new keystore
For Eclipse : Android Tools > Export Signed Application Package > Create new keystore
After that compile it and you are done.
Related
The application works well before zipaligned it.
After signing , the app can't install on my phone or tablets.
I uploaded it to playstore .
It doesn't show error but supported devices shows 0.
Is there any problem ?
Here is manifest.xml.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.emapps.easystudy"
android:versionCode="1"
android:versionName="0.6" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature android:name="android.hardware.screen.portraits" />
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="22" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".StartActivity"
android:label="#string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".AwardsGrid"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".AwardsGreyGrid"
android:screenOrientation="portrait" >
</activity>
<activity
android:name="screenslide.ScreenSlideActivity"
android:screenOrientation="portrait" >
</activity>
<activity
android:name=".MainActivity"
android:screenOrientation="portrait" >
</activity>
<receiver android:name=".Notificationmassage" >
</receiver>
<receiver android:name=".StudyingNotification" >
</receiver>
<activity
android:name=".Setting"
android:label="#string/title_activity_setting"
android:screenOrientation="portrait" >
</activity>
</application>
</manifest>
If you are using the IDE "build signed apk" GUI feature you do not need to zipalign because that last step will be done by the IDE.
If you use the command-line these are the steps: Signing manually
Zipalign
Caution: zipalign must only be performed after the .apk file has been
signed with your private key. If you perform zipalign before signing,
then the signing procedure will undo the alignment. Also, do not make
alterations to the aligned package. Alterations to the archive, such
as renaming or deleting entries, will potentially disrupt the
alignment of the modified entry and all later entries. And any files
added to an "aligned" archive will not be aligned.
I downloaded google's sample in app purchase app and renamed the package to "com.iap.android.trivialdrivesample" wherever it appeared in AndroidManifest.xml:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.iap.android.trivialdrivesample"
android:versionCode="3"
android:versionName="1.3" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<!-- VERY IMPORTANT! Don't forget this permission, or in-app billing won't work. -->
<uses-permission android:name="com.android.vending.BILLING" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="com.iap.android.trivialdrivesample.MainActivity"
android:label="#string/title_activity_main"
android:screenOrientation="portrait"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Uploading the apk into google play shows the error "cannot use package name com.example". I expanded all my folders in android studio and don't see any packages starting with "com.example". How can I list them from the command line to make sure?
I am getting this problem when publishing android apk file on Google Play.
This is my AndroidManifast.xml code:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="xx.com"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:allowBackup="true"
android:icon="#drawable/main_icon"
android:label="#string/app_name"
android:theme="#style/AppTheme"
>
<meta-data
android:name="com.google.android.gms.version"
android:value="#integer/google_play_services_version"
/>
<activity
android:name="xx.com.MainActivity"
android:label="#style/AppTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="xx.com.Images"
android:label="#string/app_name" >
</activity>
<activity
android:name="xx.com.Awards"
android:label="#string/app_name" >
</activity>
<activity
android:name="xx.com.Magazine"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
</application>
I tried many stackoverflow.com examples but failed. Apk is working fine in device and emulator.
This may be your problem
<activity
android:name="amithanda.com.MainActivity"
android:label="#style/AppTheme" >
label should be a String value.
android:label="#string/app_name"
FYI : Developer guide gives you an idea
android:label="string resource"
I made my android application and tested it on the AVD but when I want to install it on my phone, I get "application not installed"
what could cause this problem??
here is the Manifest.xml, I don't see any thing weird in it !!
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.dashboard_our"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<permission
android:name="com.example.dashboard_our.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#android:style/Theme.Light.NoTitleBar" >
<activity
android:name="com.example.dashboard_our.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="com.example.dashboard_our.Hotels"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.Restaurants"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.About"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.PrayTime"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.Airports"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.Currency_convert"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.Translator"
android:label="#string/title_activity_translate" >
</activity>
<activity
android:name="com.example.dashboard_our.WeatherActivity"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.PlaceDetailsActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name=".PlaceDetails" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity
android:name="com.example.dashboard_our.Todo"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.Ocr"
android:label="#string/app_name" >
</activity>
<activity
android:name="com.example.dashboard_our.TodoDetailActivity"
android:label="#string/app_name" >
</activity>
<provider
android:name=".contentprovider.MyTodoContentProvider"
android:authorities="de.vogella.android.todos.contentprovider" >
</provider>
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="API-KEY" />
</application>
</manifest>
any error from a DDMS? also you can try looking for .apk file from your project source and installing the app into the device.
Did you check "allow installation from non market applications" in your phone settings?
Did you remove an SD card around the time of installation?
Check if you have declared Main Activity twice inside AndroidManifest.xml. Delete one.
Another solution is if you haven't signed your app, you need to sign it. As the docs say All applications must be signed. The system will not install an application on an emulator or a device if it is not signed. Go here for more information: Android App Signing
I solved it, the problem was in my phone, I had to format my phone in order to work
I test my application in android phone. it's a unsigned application export from eclipse.
When i installed the application in phone it's shows user permisson messages. then finally i got a message application not installed. here my mainfest code
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.z_enterprise.praywithme"
android:versionCode="1"
android:versionName="1.0"
android:installLocation="preferExternal" >
<uses-sdk android:minSdkVersion="2" />
<uses-permission android:name="android.permission.INTERNET" />
<application
android:icon="#drawable/appicon"
android:label="#string/app_name" >
<activity
android:name=".main"
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=".about"
android:label="#string/app_name" >
</activity>
<activity
android:name=".favour"
android:label="#string/app_name" >
</activity>
</application>
</manifest>
Check Settings > Applications > Mark/Enable Unknown Sources
Mark answer, if useful