<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Somewhere Around Software Development</title>
	<atom:link href="http://devaxis.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://devaxis.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Tue, 31 Aug 2010 06:49:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>How To Stop Multiple Instances For An Activity</title>
		<link>http://devaxis.com/google/android/how-to-stop-multiple-instances-for-an-activity/</link>
		<comments>http://devaxis.com/google/android/how-to-stop-multiple-instances-for-an-activity/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 04:29:45 +0000</pubDate>
		<dc:creator>rashid</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Multiple Instances for Activity]]></category>
		<category><![CDATA[Single Task Launch Mode]]></category>
		<category><![CDATA[Timer]]></category>
		<category><![CDATA[Timer Task]]></category>

		<guid isPermaLink="false">http://devaxis.com/?p=6</guid>
		<description><![CDATA[To make visible an activity that is already running or to create an activity that is not currently running, add android:launchMode=&#8221;singleTask&#8221; in activity element in AndroidManifest.xml. For example an activity &#8220;SingleTaskActivity&#8221; for that we want to stop multiple instances, its entry in &#8220;AndroidManifest.xml&#8221; is as; [java] &#60;manifest&#62; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; &#60;activity android:name=&#8221;.SingleTaskActivity&#8221; android:launchMode=&#8221;singleTask&#8221; android:label=&#8221;@string/app_name&#8221;&#62; &#60;/activity&#62; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; &#60;/manifest&#62; [/java] Here [...]]]></description>
			<content:encoded><![CDATA[<p>To make visible an activity that is already running or to create an activity that is not currently running, add <strong>android:launchMode=&#8221;singleTask&#8221;</strong> in <strong>activity element</strong> in <strong>AndroidManifest.xml.</strong></p>
<p>For example an activity &#8220;SingleTaskActivity&#8221; for that we want to stop multiple instances, its entry in &#8220;AndroidManifest.xml&#8221; is as;</p>
<p>[java]</p>
<p>&lt;manifest&gt;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>&lt;activity android:name=&#8221;.SingleTaskActivity&#8221;<br />
android:launchMode=&#8221;singleTask&#8221;<br />
android:label=&#8221;@string/app_name&#8221;&gt;<br />
&lt;/activity&gt;</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>&lt;/manifest&gt;</p>
<p>[/java]</p>
<p><span id="more-6"></span></p>
<p>Here is a complete working example;</p>
<p>src&gt;com.devaxis.apis:</p>
<p>I have created two classes<strong> HomeActivity.java</strong> and <strong>SingleTaskActivity.java.</strong></p>
<p>HomeActivity.java</p>
<p>[java]</p>
<p>public class HomeActivity extends Activity {<br />
private static final long DEFAULT_DELAY = 5000;<br />
private static final long DEFAULT_PERIOD = 5000;<br />
private Handler handler;<br />
private Timer timer;</p>
<p>/** Called when the activity is first created. */<br />
@Override<br />
public void onCreate(Bundle savedInstanceState) {<br />
super.onCreate(savedInstanceState);<br />
setContentView(R.layout.main);</p>
<p>timer = new Timer();<br />
handler = new Handler();</p>
<p>// Schedule a task to start activity for repeated fixed-rate execution after 5 seconds.<br />
startSingleTaskActivity(DEFAULT_DELAY,DEFAULT_PERIOD);<br />
}<br />
public void onBackPressed ()<br />
{<br />
timer.cancel();<br />
finish();<br />
}</p>
<p>public void startSingleTaskActivity(long delay,long period)<br />
{<br />
TimerTask timerTask = new TimerTask() {<br />
@Override<br />
public void run() {<br />
handler.post(new Runnable() {<br />
@Override<br />
public void run() {<br />
startActivity(new Intent(HomeActivity.this, SingleTaskActivity.class));<br />
}<br />
});<br />
}<br />
};<br />
timer.scheduleAtFixedRate(timerTask, delay,period);<br />
}<br />
}</p>
<p>[/java]</p>
<p>In HomeActivity.java A Timer with TimerTask is used to schedule a task to start activity for repeated fixed-rate execution after 5 seconds.</p>
<p>SingleTaskActivity.java</p>
<p>[java]</p>
<p>public class SingleTaskActivity extends Activity {<br />
/** Called when the activity is first created. */<br />
@Override<br />
public void onCreate(Bundle savedInstanceState) {<br />
super.onCreate(savedInstanceState);<br />
setContentView(R.layout.single_task_activity);<br />
}<br />
}</p>
<p>[/java]</p>
<p>res&gt;layouts:</p>
<p>main.xml</p>
<p>[xml]</p>
<p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243;?&gt;<br />
&lt;LinearLayout xmlns:android=&#8221;<a href="http://schemas.android.com/apk/res/android">http://schemas.android.com/apk/res/android</a>&#8221;<br />
android:orientation=&#8221;vertical&#8221;<br />
android:layout_width=&#8221;fill_parent&#8221;<br />
android:layout_height=&#8221;fill_parent&#8221;<br />
&gt;<br />
&lt;TextView<br />
android:layout_width=&#8221;fill_parent&#8221;<br />
android:layout_height=&#8221;wrap_content&#8221;<br />
android:textStyle = &#8220;bold&#8221;<br />
android:text=&#8221;@string/home_activity_label&#8221;<br />
/&gt;<br />
&lt;/LinearLayout&gt;</p>
<p>single_task_activity.xml</p>
<p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243;?&gt;<br />
&lt;LinearLayout xmlns:android=&#8221;<a href="http://schemas.android.com/apk/res/android">http://schemas.android.com/apk/res/android</a>&#8221;<br />
android:orientation=&#8221;vertical&#8221;<br />
android:layout_width=&#8221;fill_parent&#8221;<br />
android:layout_height=&#8221;fill_parent&#8221;<br />
&gt;<br />
&lt;TextView<br />
android:layout_width=&#8221;fill_parent&#8221;<br />
android:layout_height=&#8221;wrap_content&#8221;<br />
android:textStyle = &#8220;bold&#8221;<br />
android:text=&#8221;@string/single_task_activity_label&#8221;<br />
/&gt;<br />
&lt;/LinearLayout&gt;</p>
<p>[/xml]</p>
<p>res&gt;values:</p>
<p>strings.xml</p>
<p>[xml]</p>
<p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243;?&gt;<br />
&lt;resources&gt;<br />
&lt;string name=&#8221;home_activity_label&#8221;&gt;Home Activity!&lt;/string&gt;<br />
&lt;string name=&#8221;app_name&#8221;&gt;Stop Multiple Activity Instances&lt;/string&gt;<br />
&lt;string name=&#8221;single_task_activity_label&#8221;&gt;Single Task Activity!&lt;/string&gt;<br />
&lt;/resources&gt;</p>
<p>[/xml]</p>
<p>AndroidManifest.xml</p>
<p>[xml]</p>
<p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243;?&gt;<br />
&lt;manifest xmlns:android=&#8221;<a href="http://schemas.android.com/apk/res/android">http://schemas.android.com/apk/res/android</a>&#8221;<br />
package=&#8221;com.devaxis.apis&#8221;<br />
android:versionCode=&#8221;1&#8243;<br />
android:versionName=&#8221;1.0&#8243;&gt;<br />
&lt;application android:icon=&#8221;@drawable/icon&#8221; android:label=&#8221;@string/app_name&#8221;&gt;<br />
&lt;activity android:name=&#8221;.HomeActivity&#8221;<br />
android:label=&#8221;@string/app_name&#8221;&gt;<br />
&lt;intent-filter&gt;<br />
&lt;action android:name=&#8221;android.intent.action.MAIN&#8221; /&gt;<br />
&lt;category android:name=&#8221;android.intent.category.LAUNCHER&#8221; /&gt;<br />
&lt;/intent-filter&gt;<br />
&lt;/activity&gt;<br />
&lt;activity android:name=&#8221;.SingleTaskActivity&#8221;<br />
android:launchMode=&#8221;singleTask&#8221;<br />
android:label=&#8221;@string/app_name&#8221;&gt;<br />
&lt;/activity&gt;<br />
&lt;/application&gt;<br />
&lt;/manifest&gt;</p>
<p>[/xml]</p>
<p>Download complete source codeNote: There is a file embedded within this post, please visit this post to download the file.</p>
]]></content:encoded>
			<wfw:commentRss>http://devaxis.com/google/android/how-to-stop-multiple-instances-for-an-activity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Knowledge And Skill For All</title>
		<link>http://devaxis.com/general/knowledge-and-skill-for-all/</link>
		<comments>http://devaxis.com/general/knowledge-and-skill-for-all/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 08:21:02 +0000</pubDate>
		<dc:creator>rashid</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Knowledge]]></category>
		<category><![CDATA[Skill]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://devaxis.com/?p=3</guid>
		<description><![CDATA[Knowledge is light. It is the most important weapon for development in life.The power of knowledge leads us to ultimate success. Let&#8217;s enlighten it to remove the darkness of ignorance by share our knowledge,skill and talent.]]></description>
			<content:encoded><![CDATA[<p>Knowledge is light. It is the most important weapon for development in life.The power of knowledge leads us to ultimate success.</p>
<p>Let&#8217;s enlighten it to remove the darkness of ignorance by share our knowledge,skill and talent.</p>
]]></content:encoded>
			<wfw:commentRss>http://devaxis.com/general/knowledge-and-skill-for-all/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
