PreferenceScreen - <intent .../> - Exception - FLAG_ACTIVITY_NEW_TASK
I am new at android developing.

The project is about implementing an AbstractAccountAuthenticator with an AbstractThreadedSyncAdapter to sync certain data on a server with a content provider.

I made everything and both adding accounts and syncing is running without any problems.

Now I've tried to add a Preference-Screen just like suggested in the android reference (search for AbstractAccountAuthenticator, it is explained there) via xml like this:

**autenticator.xml:**

    <account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
        android:accountType="typeOfAuthenticator"
        android:icon="@drawable/icon"
        android:smallIcon="@drawable/miniIcon"
        android:label="@string/label"
        android:accountPreferences="@xml/account_preferences"
     />

The Preference-Screen-xml looks like this:

**account_preferences.xml:**

    <?xml version="1.0" encoding="utf-8"?>
    <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
    	<PreferenceCategory android:title="@string/pref_cat_general">
    		<PreferenceScreen android:key="@string/pref_cat_scr_keygen" android:title="@string/pref_cat_scr_keygen_title" android:summary="@string/pref_cat_scr_keygen_summary">
    			<intent android:action="android.intent.action.VIEW" android:targetPackage="com.android.clean" android:targetClass="com.android.clean.KeygenAct" />
    		</PreferenceScreen>
    	</PreferenceCategory>
    </PreferenceScreen>


The screen is promted how it should be, but and that is the problem: When I click on the PreferenceScreen with the intent it leads to a crash of the system (both in the emulator and my HTC-Desire). 

Logcat says: 
> ERROR/AndroidRuntime(18754):
> android.util.AndroidRuntimeException:
> Calling startActivity() from outside
> of an Activity  context requires the
> FLAG_ACTIVITY_NEW_TASK flag. Is this
> really what you want?

(whole [Logcat on pastebin][2])

Here the part of the manifest, where the activity is defined:

		
    <activity android:name=".KeygenAct">
        <intent-filter>
        	<action android:name="android.intent.action.VIEW" />
        	<category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

The whole test-code (it is my project on the essentials to find the problem) is to find at googlecode (http://code.google.com/p/cleanproject/source/browse/) (Eclipse-Project)
Thank you already for your help
Eusebius

p.s.: keygen is not a key generator, it means more key_general. A bit inartfully expressed ;)


 
  [2]: http://pastebin.com/cyzkwmYw
  [3]: http://code.google.com/p/cleanproject/source/browse/
PreferenceScreen - <intent .../> - Exception - FLAG_ACTIVITY_NEW_TASK
===

I am new at android developing.

The project is about implementing an AbstractAccountAuthenticator with an AbstractThreadedSyncAdapter to sync certain data on a server with a content provider.

I made everything and both adding accounts and syncing is running without any problems.

Now I've tried to add a Preference-Screen just like suggested in the android reference (search for AbstractAccountAuthenticator, it is explained there) via xml like this:

**autenticator.xml:**

    <account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
        android:accountType="typeOfAuthenticator"
        android:icon="@drawable/icon"
        android:smallIcon="@drawable/miniIcon"
        android:label="@string/label"
        android:accountPreferences="@xml/account_preferences"
     />

The Preference-Screen-xml looks like this:

**account_preferences.xml:**

    <?xml version="1.0" encoding="utf-8"?>
    <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
    	<PreferenceCategory android:title="@string/pref_cat_general">
    		<PreferenceScreen android:key="@string/pref_cat_scr_keygen" android:title="@string/pref_cat_scr_keygen_title" android:summary="@string/pref_cat_scr_keygen_summary">
    			<intent android:action="android.intent.action.VIEW" android:targetPackage="com.android.clean" android:targetClass="com.android.clean.KeygenAct" />
    		</PreferenceScreen>
    	</PreferenceCategory>
    </PreferenceScreen>


The screen is promted how it should be, but and that is the problem: When I click on the PreferenceScreen with the intent it leads to a crash of the system (both in the emulator and my HTC-Desire). 

Logcat says: 
> ERROR/AndroidRuntime(18754):
> android.util.AndroidRuntimeException:
> Calling startActivity() from outside
> of an Activity  context requires the
> FLAG_ACTIVITY_NEW_TASK flag. Is this
> really what you want?

(whole [Logcat on pastebin][2])

Here the part of the manifest, where the activity is defined:

		
    <activity android:name=".KeygenAct">
        <intent-filter>
        	<action android:name="android.intent.action.VIEW" />
        	<category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

The whole test-code (it is my project on the essentials to find the problem) is to find at googlecode (http://code.google.com/p/cleanproject/source/browse/) (Eclipse-Project)
Thank you already for your help
Eusebius

p.s.: keygen is not a key generator, it means more key_general. A bit inartfully expressed ;)


 
  [2]: http://pastebin.com/cyzkwmYw
  [3]: http://code.google.com/p/cleanproject/source/browse/