I think I have a solution figured out. As my limited understanding
goes, the launcher always launches Activities with
FLAG_ACTIVITY_NEW_TASK, which means the newly launched activity is
intended to be the root of a new task. However, if that task already
exists with a different Activity at its root, this doesn't work. So,
the solution to the example I pasted in my prior post with Activities
Foobar1 and Foobar2 would be to give those two Activities different
task affinities like so:

    ...
    <activity android:name=".Foobar1" android:label="Foobar1"
android:taskAffinity=".Foobar1">
    ...
    <activity android:name=".Foobar2" android:label="Foobar2"
android:taskAffinity=".Foobar2">
    ...

Clarifications would be welcome!



On Aug 3, 5:48 pm, Bryne McCullough <bryne.mccullo...@gmail.com>
wrote:
> I'm trying to do the same thing as the original poster: That is, have
> one APK, resulting in multiple icons in the Launcher app tray, each
> icon launching a different Activity within my APK. Seems like a simple
> thing, but it's not working for me.
>
> I've posted my AndroidManifest.xml below. The behavior I'm seeing is
> that I indeed get two icons in the Launcher app tray -- an icon for
> Foobar1, and another icon for Foobar2. Both icons work as expected if
> they're the first thing I click. That is, icon Foobar1 launches
> Activity Foobar1, and icon Foobar2 launches Activity Foobar2.
>
> However, if I launch Foobar1, then hit the home key (not the back
> key!), then try to launch Foobar2, what I get is Foobar1 -- and vice
> versa.
>
> It seems like if either Foobar1 or Foobar2 are already instantiated
> within the app's task, and I go back to the Launcher and attempt to
> launch either Foobar1 or Foobar2, the Launcher simply brings my
> already existing task to the foreground showing whatever Activity was
> previously on top.
>
> Any pointers? Thanks!
>
> <?xml version="1.0" encoding="utf-8"?>
> <manifest xmlns:android="http://schemas.android.com/apk/res/android";
>     package="com.foobar"
>     android:versionCode="1"
>     android:versionName="1.0">
>     <application android:icon="@drawable/icon" android:label="Foobar">
>         <activity android:name=".Foobar1" android:label="Foobar1">
>             <intent-filter>
>                 <action android:name="android.intent.action.MAIN"/>
>                 <category
> android:name="android.intent.category.LAUNCHER"/>
>             </intent-filter>
>         </activity>
>         <activity android:name=".Foobar2" android:label="Foobar2">
>             <intent-filter>
>                 <action android:name="android.intent.action.MAIN"/>
>                 <category
> android:name="android.intent.category.LAUNCHER"/>
>             </intent-filter>
>         </activity>
>     </application>
>     <uses-sdk android:minSdkVersion="3"/>
> </manifest>
>
> On Jul 8, 9:41 am, Mark Murphy <mmur...@commonsware.com> wrote:
>
> > Andrew wrote:
> > > Curious if this functionality is present on the Android platform.  I'm
> > > looking to package my apps into a single APK file, which when
> > > installed would spawn multiple application icons on the device.  All
> > > applications would be related and would talk to each other (this part
> > > isn't a problem and is working fine).
>
> > > Can I package multiple related apps in a single APK install file?
>
> > That depends on what you mean by "app".
>
> > If you mean multiple icons in the Launcher, sure, no problem. Just have
> > all such activities have the standard intent-filter with <action
> > android:name="android.intent.action.MAIN" /> and <category
> > android:name="android.intent.category.LAUNCHER" />. Every activity with
> > that intent filter will show up with an icon.
>
> > If you want multiple entries in the Manage Applications list in
> > Settings, though, that cannot be done AFAIK.
>
> > In Android, an app = APK. What you are really creating with the multiple
> > icons is a single app with multiple user-initiated entry points.
>
> > --
> > Mark Murphy (a Commons 
> > Guy)http://commonsware.com|http://twitter.com/commonsguy
>
> > Warescription: Three Android Books, Plus Updates, $35/Year
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Beginners" group.
To post to this group, send email to android-beginners@googlegroups.com
To unsubscribe from this group, send email to
android-beginners-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-beginners?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to