I created very simple activity that displays hello world and a button labled TEST, when i press this button the Toast will display a message and I run this app on the emulator.
the problem is that, when I try to run this app the console displays that
no launcher activity found
and nothing to be displayed on the emulator although the code has no error at all.
manifest.xml:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.qr00"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".QR00"
android:label="#string/title_activity_qr00" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="QR00" />
</activity>
</application>
Can anyone tell me how to solve the "no launcher activity found" error?
You need to add
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
So:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.qr00"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".QR00"
android:label="#string/title_activity_qr00" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="QR00" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
You need to add this Intent in your Menifest file
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".QR00"
android:label="#string/title_activity_qr00" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="QR00" />
</activity>
you can add this code in your manifest file in activity tag.
<application
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name=".QR00"
android:label="#string/title_activity_qr00" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="QR00" />
</activity>
</application>
add like this
<activity
android:name=".YourclassName"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Related
I can't seem to launch my application. It gives me an error like this: Error running second Activity: The activity must be exported or contain an intent-filter. Is there anything wrong with my manifest?
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="com.bill.myapplication1.MainActivity"
android:label="#string/app_name"
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.bill.myapplication1.SecondActivity"
android:label="#string/title_activity_second" >
</activity>
</application>
look there ,"android:exported="true">>", there is two ">"
change this in your manifest file
<activity
android:name="com.bill.myapplication1.MainActivity"
android:label="#string/app_name"
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.bill.myapplication1.MainActivity"
android:label="#string/app_name"
android:exported="true">>
You have double > near exported = "true"
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="com.bill.myapplication1.MainActivity"
android:label="#string/app_name"
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.bill.myapplication1.SecondActivity"
android:label="#string/title_activity_second" >
</activity>
</application>
i have 2 activities AndroidSlite.java and SqLiteAdapter.java.. my manifest.xml file is given below.it shows No launcher activity found .while running
please help me with the code
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.cerebtec.androidsqlite"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<activity android:name="AndroidSQLite"></activity>
</application>
</manifest>
You have to enclose the intent filter around the launcher activity, in order to declare your launcher activity. E.g.
<activity android:name="AndroidSQLite"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
this way you are telling android that the launcher activity is AndroidSQLite
Use :
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="edu.virginia.cs2110.finalproject"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="edu.virginia.cs2110.finalproject.Splash"
android:label="#string/splash_name"
android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name="edu.virginia.cs2110.finalproject.InitialActivity"
android:label="#string/title_activity_set_difficulty"
android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="edu.virginia.cs2110.finalproject.MainActivity"
android:label="#string/app_name"
android:screenOrientation="landscape">
<intent-filter>
<action android:name="edu.virginia.cs2110.finalproject.MAINACTIVITY" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
</manifest>
No matter what I do to the second intent-filter (change the category from launcher and action from main) my emulator always ignores the first activity's launcher! I've looked online for over 3 hours and I cannot find an answer! Please help! Thank you!
This.
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
Just could be in the first Activity than you can launch. The correct way is this.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="edu.virginia.cs2110.finalproject"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="edu.virginia.cs2110.finalproject.Splash"
android:label="#string/splash_name"
android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name="edu.virginia.cs2110.finalproject.InitialActivity"
android:label="#string/title_activity_set_difficulty"
android:screenOrientation="landscape">
</activity>
<activity
android:name="edu.virginia.cs2110.finalproject.MainActivity"
android:label="#string/app_name"
android:screenOrientation="landscape">
</activity>
</application>
</manifest>
Remove the intent filter from 2nd and 3rd activity. You need only initialize it for the first time.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="edu.virginia.cs2110.finalproject"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="edu.virginia.cs2110.finalproject.Splash"
android:label="#string/splash_name"
android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name="edu.virginia.cs2110.finalproject.InitialActivity"
android:label="#string/title_activity_set_difficulty"
android:screenOrientation="landscape">
</activity>
<activity
android:name="edu.virginia.cs2110.finalproject.MainActivity"
android:label="#string/app_name"
android:screenOrientation="landscape">
</activity>
</application>
Problem is that you are adding
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
To all the activity tags but this filter should only be for the first activity to be launched.
Just remove the filter declaration from other two activities and add it to splash activity only so that android may know splash is first to be launched...
I just started an Android Project and i made a Splash.png and Splash Activity for my App, with the Splash.xml, and the Splash.java with the onCreate Method and the setContentView, I also change the Intent in the manifest so the Splash would be the LAUNCHER.
BUT the "MainActivity" is still default launcher, I cant change that.
And if I try to Clean up my proyect, Eclipse just wipes out everying I modified from the
Manifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.learn.xandroix"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="com.learn.xandroix.Splash"
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.learn.xandroix.MainActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAINACTIVITY" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
</manifest>
This is what the Eclipse Console is showing:
[2013-07-22 11:28:56 - XAndroiX] Installing XAndroiX.apk...
[2013-07-22 11:29:06 - XAndroiX] Success!
[2013-07-22 11:29:07 - XAndroiX] Starting activity com.learn.xandroix.MainActivity on device S5830f33ed19b
[2013-07-22 11:29:09 - XAndroiX] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.learn.xandroix/.MainActivity }
Try this:
<?xml version="1.0" encoding="utf-8"?>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme" >
<activity
android:name="com.learn.xandroix.Splash"
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.learn.xandroix.MainActivity">
</activity>
</application>
Cheers
Chnage this in you manifest.xml file
<activity
android:name="com.learn.xandroix.Splash"
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">
</activity>
Consider this;
<activity
android:name="com.learn.xandroix.Splash"
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.learn.xandroix.MainActivity"
android:label="#string/app_name" >
</activity>
Try this way:
Just care "action android:name" of 2nd activity.
Enjoy :)
<activity
android:name="com.learn.xandroix.Splash"
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.learn.xandroix.MainActivity"
android:label="#string/app_name" >
<intent-filter>
<action android:name="com.learn.xandroix.MAINACTIVITY" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
my app not working on galaxy s3 and note 2, here is my manifest code:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<application
android:allowBackup="true"
android:icon="#drawable/cars"
android:label="#string/appName"
android:theme="#style/AppTheme" >
<activity
android:name="kazemi.Alireza.cardatabase.MainActivity"
android:label="#string/appName" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
what is the problem?Thanks
Try this,
<uses-sdk
android:minSdkVersion="8"/>
<application
android:allowBackup="true"
android:icon="#drawable/cars"
android:label="#string/appName"
android:theme="#style/AppTheme" >
<activity
android:name="kazemi.Alireza.cardatabase.MainActivity"
android:label="#string/appName" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>