<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;C0YARXY4eSp7ImA9WhBaEUw.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993</id><updated>2013-05-21T06:39:04.831+02:00</updated><category term="Layout Resources" /><category term="Message" /><category term="SharedPreferences" /><category term="DatePicker" /><category term="SQL" /><category term="Application Strcture" /><category term="DigitalClock" /><category term="RapidFire" /><category term="UI" /><category term="We-Pad" /><category term="Parsing" /><category term="SQLite" /><category term="Apple" /><category term="Alternative Menus" /><category term="Content Providers" /><category term="Hello Android" /><category term="Google Nexus One" /><category term="Games" /><category term="Gingerbread" /><category term="Table Layout" /><category term="Dalvik Virtual Machine" /><category term="web service" /><category term="Honeycomb" /><category term="Mono" /><category term="Image Resources" /><category term="Dimentions Resources" /><category term="Context Menu" /><category term="TimePickerDialog" /><category term="DOM Parser" /><category term="Handler" /><category term="Android Project Structure" /><category term="Development tools" /><category term="SlidingDrawer" /><category term="Array Resources" /><category term="Threading" /><category term="Service" /><category term="values folder" /><category term="TabWidget" /><category term="MultiAutoCompleteTextView" /><category term="internet connection" /><category term="SUNPHOS" /><category term="Images" /><category term="LogCat" /><category term="Tabs" /><category term="DatePickerDialog" /><category term="layout folder" /><category term="Photography" /><category term="Remote Service" /><category term="ToggleButton" /><category term="XML" /><category term="Styles" /><category term="Contacts" /><category term="Options Menu" /><category term="Intents" /><category term="Chronometer" /><category term="TimePicker" /><category term="iPhone" /><category term="Introduction to Android" /><category term="signing" /><category term="ViewFlipper" /><category term="TextView" /><category term="EditText" /><category term="assets folder" /><category term="Cursor" /><category term="Amazon App Store" /><category term="Frame Layout" /><category term="Android 4.0" /><category term="error" /><category term="Sub Menu" /><category term="Linear layout" /><category term="Activity" /><category term="Android Software Stack" /><category term="Layout Properties" /><category term="AnalogClock" /><category term="Contest" /><category term="TabHost" /><category term="Space" /><category term="Assets" /><category term="RadioButton" /><category term="Button" /><category term="Intent Filters" /><category term="iPhone 3GS" /><category term="Survey" /><category term="Currency Converter" /><category term="Themes" /><category term="AsyncTask" /><category term="Slide ME" /><category term="ScrollView" /><category term="Ice Cream Sandwich" /><category term="ImageButton" /><category term="Resources" /><category term="Absolute Layout" /><category term="SSL" /><category term="Applications" /><category term="String Resources" /><category term="JSON" /><category term="AutoCompleteEditText" /><category term="Android" /><category term="Spinner" /><category term="Emulator" /><category term="Marmalade SDK" /><category term="SAX Parser" /><category term="ListView" /><category term="Gallery" /><category term="Menu" /><category term="Color Resources" /><category term="Android Market" /><category term="REST" /><category term="Android 2.3" /><category term="drawable folder" /><category term="GridLayout" /><category term="Nexus Prime" /><category term="Relative Layout" /><category term="HTTPClient" /><category term="Alert" /><category term="src folder" /><category term="Search" /><category term="AIDL" /><category term="SOAP" /><category term="Toast" /><category term="Android 2.2" /><category term="CheckBox" /><category term="Browser" /><category term="Playstation Suite SDK" /><category term="gen folder" /><category term="res folder" /><category term="iOS 5" /><category term="exception" /><category term="Android 3.0" /><title>Learn Android</title><subtitle type="html">A blog to learn Android</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://android-pro.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>101</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/LearnAndroid" /><feedburner:info uri="learnandroid" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DU8ARno5cSp7ImA9WhBXEkU.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-2092281352658685943</id><published>2013-03-26T10:50:00.000+02:00</published><updated>2013-03-26T10:50:47.429+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-26T10:50:47.429+02:00</app:edited><title>Android Developer Days is reloading for 2013</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;b id="internal-source-marker_0.2586681176908314"&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;Android Developer Days(&lt;/span&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;ADD)&lt;span style="font-weight: normal;"&gt; is now reloading for 2013. ADD 2013 will take place on &lt;/span&gt;June 14/15&lt;span style="font-weight: normal;"&gt;, 2013 in &lt;/span&gt;METU Cultural and Convention Center, Ankara, Turkey&lt;span style="font-weight: normal;"&gt;.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;span style="font-weight: normal;"&gt;ADD 2013 is targeted to be the one of the biggest international tech related community organization in EMEA. The first&lt;/span&gt;&lt;/span&gt;&lt;a href="http://www.androiddeveloperdays.com/2012/" style="font-weight: normal;"&gt;&lt;span style="background-color: white; color: #1982d1; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; ADD was on May 21/22, 2012&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; font-weight: normal; vertical-align: baseline; white-space: pre-wrap;"&gt;. There were 700 participants and more than 30 speakers. &amp;nbsp;ADD 2013, &amp;nbsp;June 14/15, 2013, &amp;nbsp;will have more participants, more fun, more networking and more inspiration.&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; font-weight: normal; vertical-align: baseline; white-space: pre-wrap;"&gt;Take a look at the About,&lt;/span&gt;&lt;a href="http://www.androiddeveloperdays.com/call-for-papers/" style="font-weight: normal;"&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; &lt;/span&gt;&lt;span style="background-color: white; color: #1982d1; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Call for submissions&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; font-weight: normal; vertical-align: baseline; white-space: pre-wrap;"&gt; and&lt;/span&gt;&lt;a href="http://www.androiddeveloperdays.com/participation-form/" style="font-weight: normal;"&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; &lt;/span&gt;&lt;span style="background-color: white; color: #1982d1; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;Participation Form&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; font-weight: normal; vertical-align: baseline; white-space: pre-wrap;"&gt;.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal;"&gt;&lt;/b&gt;&lt;br /&gt;
&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-right: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal;"&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;ADD is a community conference organized by: &amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://www.gdgankara.org/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Ankara&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://istanbul-gtug.blogspot.com/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG İstanbul&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://ieee.metu.edu.tr/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;ODTÜ IEEE&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://www.gdg-baku.org/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://www.gdg-baku.org/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Baku&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://brussels.gtugs.org/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GTUG Brussels&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://goo.gl/09xxv"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://goo.gl/09xxv"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Cluj-Napoca,&lt;/span&gt;&lt;/a&gt;&lt;a href="http://dnipro.gdg.org.ua/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://dnipro.gdg.org.ua/"&gt;&lt;span style="background-color: white; color: #3366cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Dnipropetrovsk&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://kyiv.gdg.org.ua/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://kyiv.gdg.org.ua/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Eskiş&lt;/span&gt;&lt;/a&gt;&lt;a href="https://plus.google.com/115602346615910585045/posts/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;ehir&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://kyiv.gdg.org.ua/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://kyiv.gdg.org.ua/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Konya&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://kyiv.gdg.org.ua/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://kyiv.gdg.org.ua/"&gt;&lt;span style="background-color: white; color: #3366cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Kyiv&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://lviv.gdg.org.ua/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://lviv.gdg.org.ua/"&gt;&lt;span style="background-color: white; color: #3366cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Lviv&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://gdgsamsun.blogspot.com/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://gdgsamsun.blogspot.com/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Samsun&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="http://gdgtbilisi.blogspot.com/"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;a href="http://gdgtbilisi.blogspot.com/"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;GDG Tbilisi&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;,&lt;/span&gt;&lt;a href="https://plus.google.com/u/0/113942416717766342409/posts"&gt;&lt;span style="color: black; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b style="font-weight: normal;"&gt;&lt;div dir="ltr" style="display: inline !important; margin-bottom: 0pt; margin-left: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="https://plus.google.com/u/0/113942416717766342409/posts"&gt;GDG Timişoara&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div style="text-align: center;"&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal; text-align: start;"&gt;&lt;/b&gt;&lt;br /&gt;
&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal; text-align: start;"&gt;&lt;span style="font-family: Arial; font-size: 19px; font-weight: bold; vertical-align: baseline; white-space: pre-wrap;"&gt;C&lt;/span&gt;&lt;a href="https://plus.google.com/u/0/113942416717766342409/posts"&gt;&lt;span style="color: black; font-family: Arial; font-size: 19px; font-weight: bold; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;all For Submissions&lt;/span&gt;&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal; text-align: start;"&gt;
&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;You can join the conference with the followings:&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Presentations that is 15-20 minutes or 40-45 minutes long.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Quickie: 10 minute presentation in small rooms.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Poster: You can show your applications in a place dedicated for posters.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Workshop: Presentations with hands on coding, 40 minutes long.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;Indicate your contribution in&lt;/span&gt;&lt;a href="http://www.androiddeveloperday.com/openconf/openconf.php?locale=en"&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt; &lt;/span&gt;&lt;span style="background-color: white; color: #1155cc; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;OpenConf&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt; and please indicate how much your presentation is going to take when submitting it to OpenConf &lt;/span&gt;&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; font-weight: bold; vertical-align: baseline; white-space: pre-wrap;"&gt;Deadline of Call for Submissions is 1st May 2013.&lt;/span&gt;&lt;span style="font-family: Arial; font-size: 19px; font-weight: bold; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; font-family: Arial; font-size: 15px; vertical-align: baseline; white-space: pre-wrap;"&gt;Subjects:&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Future Technologies&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Mobile World&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Future of Mobile World&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;New Generation Mobile Devices (Project Glass)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Android OS&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Future Versions&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Android in Different Architectures&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Android in Different Areas(Industry, Defense, Home Electronics etc.)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Android App Development&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;New Features and Capabilities&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;App Developmen&lt;/span&gt;&lt;a href="http://www.androiddeveloperday.com/openconf/openconf.php?locale=en"&gt;&lt;span style="background-color: white; color: #373737; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;t Best Pr&lt;/span&gt;&lt;/a&gt;&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;actises&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Android SDK Tools&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;UI(User Interface) / UX (User Experience) Design&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;App Monetization&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: square; margin-left: 40px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Ad Integration&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: square; margin-left: 40px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;In-app Billing&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;User Statistics&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Android NDK&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Cross Platform App Development Frameworks&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;HTML5&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Javascript&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Game Development&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Google TV&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Google Playstore&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Communication Solutions (NFC, Bluetooth, Wi-fi)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;3G, 4G Wide Band Communication&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Cloud&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Google Cloud Messaging for Android&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: circle; margin-left: 27px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Google App Engine&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Augmented Reality&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Social Media&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Location Based Services and Maps&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Mobile Education (Fatih Project)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Mobile Payment&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Security&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Arduino&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Software Development Methodologies&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;Success Stories&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li dir="ltr" style="font-family: Arial; font-size: 15px; list-style-type: disc; margin-left: 13px; vertical-align: baseline;"&gt;&lt;div dir="ltr" style="margin-bottom: 0pt; margin-top: 0pt;"&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;GWT&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="background-color: white; color: #373737; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal;"&gt;&lt;/b&gt;&lt;br /&gt;
&lt;div dir="ltr" style="margin-bottom: 0pt; margin-right: 11pt; margin-top: 0pt; text-align: center;"&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal;"&gt;&lt;span style="color: #1155cc; font-family: Arial; font-size: 15px; text-decoration: underline; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;b id="internal-source-marker_0.2586681176908314" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/Vi0QO-F0g-Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/2092281352658685943/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2013/03/android-developer-days-is-reloading-for.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/2092281352658685943?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/2092281352658685943?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/Vi0QO-F0g-Q/android-developer-days-is-reloading-for.html" title="Android Developer Days is reloading for 2013" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2013/03/android-developer-days-is-reloading-for.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04BQHY_eCp7ImA9WhNXEkQ.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-3558497397822476070</id><published>2012-11-30T20:25:00.001+02:00</published><updated>2012-11-30T20:25:51.840+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-30T20:25:51.840+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Survey" /><title>Developers: Your perspectives do matter to the mobile industry.</title><content type="html">&lt;p&gt;Hello developers, please share your opinions and experience in mobile development by participating in the following survey&lt;br&gt;
https://s.zoomerang.com/s/pivotalperspectivesnovember&lt;/p&gt;
&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/Ukg3ftq_QsY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/3558497397822476070/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/11/developers-your-perspectives-do-matter.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3558497397822476070?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3558497397822476070?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/Ukg3ftq_QsY/developers-your-perspectives-do-matter.html" title="Developers: Your perspectives do matter to the mobile industry." /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/11/developers-your-perspectives-do-matter.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QBSXc8fip7ImA9WhNQGUk.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-5339368390878964475</id><published>2012-10-16T10:53:00.001+02:00</published><updated>2012-11-26T16:49:18.976+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-26T16:49:18.976+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><category scheme="http://www.blogger.com/atom/ns#" term="error" /><category scheme="http://www.blogger.com/atom/ns#" term="Marmalade SDK" /><title>Marmalade SDK: Exception: Multiply Overflow</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
I was performing some transformations (scaling) on 2D sprites like this:&lt;/div&gt;
&lt;pre class="brush:cpp"&gt;CIwMat2D matrix;
rot.Scale(IW_FIXED(2));
&lt;/pre&gt;
When I ran the app I received the following exception:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
IwAssert failure (GEOM, 350).
Message: Multiply overflow
&lt;/blockquote&gt;
&lt;/div&gt;
The avoid this exception, you must set your matrix to the Identity matrix before applying transformations on it like this:
&lt;br /&gt;
&lt;pre class="brush:cpp"&gt;CIwMat2D matrix;
matrix.SetIdentity();
rot.Scale(IW_FIXED(2));
&lt;/pre&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/GP_41DUP_L8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/5339368390878964475/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/10/marmalade-sdk-exception-multiply.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5339368390878964475?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5339368390878964475?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/GP_41DUP_L8/marmalade-sdk-exception-multiply.html" title="Marmalade SDK: Exception: Multiply Overflow" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/10/marmalade-sdk-exception-multiply.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QBSXc9fyp7ImA9WhNQGUk.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-3640292233662626896</id><published>2012-10-10T15:16:00.000+02:00</published><updated>2012-11-26T16:49:18.967+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-26T16:49:18.967+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><category scheme="http://www.blogger.com/atom/ns#" term="error" /><category scheme="http://www.blogger.com/atom/ns#" term="Marmalade SDK" /><title>Marmalade SDK: Data cache overflow allocating XXX. Increase [GX] DataCacheSize (currently XXXXX) exception</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
You may encounter this error if your application requires caching some data but the reserved cache size by your application does not have enough space.&lt;br /&gt;
&lt;br /&gt;
to solve this, just increase the reserved cache space defined in your &lt;b&gt;app.icf&lt;/b&gt; file:&lt;br /&gt;
&lt;pre&gt;
[GX]
DataCacheSize=30000
&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/Swb0Htr5f0w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/3640292233662626896/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/10/marmalade-sdk-data-cache-overflow.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3640292233662626896?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3640292233662626896?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/Swb0Htr5f0w/marmalade-sdk-data-cache-overflow.html" title="Marmalade SDK: Data cache overflow allocating XXX. Increase [GX] DataCacheSize (currently XXXXX) exception" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/10/marmalade-sdk-data-cache-overflow.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QBSXc8fCp7ImA9WhNQGUk.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-4964644335024473532</id><published>2012-10-10T13:09:00.000+02:00</published><updated>2012-11-26T16:49:18.974+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-26T16:49:18.974+02:00</app:edited><title>Marmalade SDK: Output Debug messages</title><content type="html">
If you want to output debug messages in your output console in Visual studio, you can do it in two ways:&lt;br /&gt;
&lt;br /&gt;
&lt;ol style="text-align: left;"&gt;
&lt;li&gt;Use standard C++ output stream &lt;b&gt;cout&lt;/b&gt;&lt;pre class="brush:cpp"&gt;cout&amp;lt;&amp;lt;"Your Message"&amp;lt;&amp;lt;endl;&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;use the Marmalade &amp;nbsp;&lt;b&gt;s3eDebug&lt;/b&gt; module:
first include the header:
&lt;pre class="brush:cpp"&gt;&amp;#35;include "s3eDebug.h"&lt;/pre&gt;
then
&lt;pre class="brush:cpp"&gt;s3eDebugOutputString("Your Message");
&lt;/pre&gt;
to display integers you have to convert them to C style strings first:
&lt;pre class="brush:cpp"&gt;int x=10;
char buffer[10];
//convert the int to a char array
sprintf(buffer,"%d",x);
s3eDebugOutputString(buffer);
&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/SRcm9GX4ylM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/4964644335024473532/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/10/marmalade-sdk-output-debug-messages.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/4964644335024473532?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/4964644335024473532?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/SRcm9GX4ylM/marmalade-sdk-output-debug-messages.html" title="Marmalade SDK: Output Debug messages" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/10/marmalade-sdk-output-debug-messages.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QBSXc8cSp7ImA9WhNQGUk.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-6377863538819348479</id><published>2012-10-10T11:31:00.001+02:00</published><updated>2012-11-26T16:49:18.979+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-26T16:49:18.979+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="exception" /><category scheme="http://www.blogger.com/atom/ns#" term="error" /><category scheme="http://www.blogger.com/atom/ns#" term="Marmalade SDK" /><title>Marmalade SDK: Exception cannot open file iwui_style/style.group.bin for serialising</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
I made a simple IW2D app with Marmalade SDK, it worked fine in the Windows emulator but when I deployed to Android I received this exception:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;cannot open file iwui_style/style.group.bin for serialising (read),&amp;nbsp;Did you include this file in your mkb assets block&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
The solution was &amp;nbsp;to add this block to my MKB file&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre&gt;assets
{
    (data-ram/data-gles1)
    ui.group.bin
    &lt;b&gt;(data-ram/data-gles1)
    iwui_style/style.group.bin&lt;/b&gt;
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/pgY9F9FIeRQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/6377863538819348479/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/10/marmalade-sdk-exception-cannot-open.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/6377863538819348479?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/6377863538819348479?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/pgY9F9FIeRQ/marmalade-sdk-exception-cannot-open.html" title="Marmalade SDK: Exception cannot open file iwui_style/style.group.bin for serialising" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/10/marmalade-sdk-exception-cannot-open.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkIBQn47fyp7ImA9WhJaFU8.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-5527178310514469744</id><published>2012-10-06T13:55:00.000+02:00</published><updated>2012-10-06T13:55:53.007+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-06T13:55:53.007+02:00</app:edited><title>App Developers: check this survey</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;b style="background-color: white; color: #222222; font-family: 'Times New Roman', serif; font-size: 16px;"&gt;&lt;i&gt;&lt;u&gt;“I came across this &lt;a href="https://www.research.net/s/TPF6RZ2" target="_blank"&gt;invitation&lt;/a&gt; for developers to give their perspectives to mobile industry leaders such as Microsoft, Google, Apple and RIM.&amp;nbsp; Check it out”&lt;/u&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #222222; font-family: Times New Roman, serif;"&gt;It's a really nice survey, participate and share your experience with others&lt;/span&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/sLOQPn1-tRc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/5527178310514469744/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/10/app-developers-check-this-survey.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5527178310514469744?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5527178310514469744?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/sLOQPn1-tRc/app-developers-check-this-survey.html" title="App Developers: check this survey" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/10/app-developers-check-this-survey.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0AMRn07eyp7ImA9WhJTGEw.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-7239961029399899861</id><published>2012-06-27T19:56:00.001+02:00</published><updated>2012-06-27T19:56:27.303+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-06-27T19:56:27.303+02:00</app:edited><title>Android Developers Blog: Introducing Android 4.1 (Jelly Bean) preview platform, and more</title><content type="html">&lt;a href="http://android-developers.blogspot.com/2012/06/introducing-android-41-jelly-bean.html"&gt;Android Developers Blog: Introducing Android 4.1 (Jelly Bean) preview platform, and more&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/4hDA71AXtMk" height="1" width="1"/&gt;</content><link rel="related" href="http://android-developers.blogspot.com/2012/06/introducing-android-41-jelly-bean.html" title="Android Developers Blog: Introducing Android 4.1 (Jelly Bean) preview platform, and more" /><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/7239961029399899861/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/06/android-developers-blog-introducing.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/7239961029399899861?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/7239961029399899861?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/4hDA71AXtMk/android-developers-blog-introducing.html" title="Android Developers Blog: Introducing Android 4.1 (Jelly Bean) preview platform, and more" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/06/android-developers-blog-introducing.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QBSXc9cSp7ImA9WhNQGUk.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-425676787449332959</id><published>2012-04-24T15:10:00.000+02:00</published><updated>2012-11-26T16:49:18.969+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-26T16:49:18.969+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Games" /><category scheme="http://www.blogger.com/atom/ns#" term="Mono" /><category scheme="http://www.blogger.com/atom/ns#" term="Playstation Suite SDK" /><title>Playstation Suite SDK: referencing DLLs and Intellisense</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
An issue I faced today while testing the Playstation Suite SDK, I created a sample project in the PSS Studio and added a reference to a custom made DLL.&lt;br /&gt;
&lt;br /&gt;
I found that the intellisense (auto completion) of the editor couldn't perceive the newly added DLL, it provided no auto-completion for the classes within the library.&lt;br /&gt;
&lt;br /&gt;
I got the solution to this from here&amp;nbsp;&lt;a href="http://www.gamefromscratch.com/post/2012/04/20/Initial-issues-with-Playstation-Suite-SDK.aspx"&gt;http://www.gamefromscratch.com/post/2012/04/20/Initial-issues-with-Playstation-Suite-SDK.aspx&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
just restart the PSS Studio and everything will work just fine&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/7qKj9QLuRfw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/425676787449332959/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/04/playstation-suite-sdk-referencing-dlls.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/425676787449332959?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/425676787449332959?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/7qKj9QLuRfw/playstation-suite-sdk-referencing-dlls.html" title="Playstation Suite SDK: referencing DLLs and Intellisense" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/04/playstation-suite-sdk-referencing-dlls.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkMBSXg-fCp7ImA9WhRaGEQ.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-4830072863586283727</id><published>2012-02-22T10:14:00.000+02:00</published><updated>2012-02-22T10:14:18.654+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-22T10:14:18.654+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="SUNPHOS" /><category scheme="http://www.blogger.com/atom/ns#" term="Android Market" /><title>SUNPHOS featured in Android Police</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;b&gt;&lt;a href="http://android-pro.blogspot.com/2012/02/sunphos.html" target="_blank"&gt;SUNPHOS&lt;/a&gt;&lt;/b&gt; is feautered in &lt;a href="http://www.androidpolice.com/2012/02/20/44-best-and-4-wtf-new-android-apps-and-live-wallpapers-from-the-last-2-weeks-2512-21912/" target="_blank"&gt;&lt;b&gt;Android Police&lt;/b&gt;&lt;/a&gt;&amp;nbsp;as one of the best 43 apps in the last 2 weeks&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/7NyED87wCXo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/4830072863586283727/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/02/sunphos-featured-in-android-police.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/4830072863586283727?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/4830072863586283727?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/7NyED87wCXo/sunphos-featured-in-android-police.html" title="SUNPHOS featured in Android Police" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/02/sunphos-featured-in-android-police.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMERn0_fip7ImA9WhRaEEo.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-5555562962033385740</id><published>2012-02-12T21:20:00.000+02:00</published><updated>2012-02-12T21:20:07.346+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-12T21:20:07.346+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="SUNPHOS" /><category scheme="http://www.blogger.com/atom/ns#" term="Applications" /><category scheme="http://www.blogger.com/atom/ns#" term="Photography" /><category scheme="http://www.blogger.com/atom/ns#" term="Android Market" /><title>SUNPHOS</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;SUNPHOS &amp;nbsp;is a professional android application for photographers who needs to plan a day around the constantly changing character of sunlight. It provides you with valuable information like day length,sun rise &amp;amp; sun set, golden hour, twilight and more.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://1.gvt0.com/vi/Cy-ktBtrpt0/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Cy-ktBtrpt0&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/Cy-ktBtrpt0&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="text-align: left;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
SUNPHOS Features:&lt;br /&gt;
&lt;br /&gt;
&lt;ol style="text-align: left;"&gt;&lt;li&gt;Search Sun Track.&lt;/li&gt;
&lt;li&gt;View Mode.&lt;/li&gt;
&lt;li&gt;Search Sun Position.&lt;/li&gt;
&lt;li&gt;Daily Report on sun info.&lt;/li&gt;
&lt;/ol&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://market.android.com/details?id=com.symbyo.suntracker&amp;amp;feature=search_result" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://sunphos.com/home_files/android.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/1sDQXpq0PZ4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/5555562962033385740/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2012/02/sunphos.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5555562962033385740?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5555562962033385740?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/1sDQXpq0PZ4/sunphos.html" title="SUNPHOS" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2012/02/sunphos.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4FQXo9cSp7ImA9WhRTGEg.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-6690337938437199481</id><published>2011-11-09T18:41:00.000+02:00</published><updated>2011-11-09T18:41:50.469+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-09T18:41:50.469+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Contest" /><title>Winners of the Ice Cream Sandwich VS iOS5 contest</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Dear readers we are glad to announce the winners of our&amp;nbsp;Ice Cream Sandwich VS iOS5 contest:&lt;br /&gt;
&lt;br /&gt;
The winners of the&lt;b&gt; first&lt;/b&gt; prize: &lt;b&gt;Android a Complete Course:&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;Jim &lt;/b&gt;from&amp;nbsp;&lt;a href="http://sakiko.com/"&gt;http://sakiko.com/&lt;/a&gt;&lt;br /&gt;
and&lt;br /&gt;
&lt;b&gt;&lt;a href="http://www.blogger.com/profile/04325201851097237982" target="_blank"&gt;Believer&lt;/a&gt;&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
The winner of the &lt;b&gt;second&lt;/b&gt; prize: &lt;b&gt;Android a Quick Course:&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;a href="http://www.blogger.com/profile/05724717613575721151" target="_blank"&gt;Corneliu Dascalu&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
The winners of the&lt;b&gt; third&lt;/b&gt; prize &lt;b&gt;Android, an Enterprise Edition Vision&lt;/b&gt;:&lt;br /&gt;
&lt;a href="http://www.blogger.com/profile/11125791667492488384" target="_blank"&gt;&lt;b&gt;Will.i.am&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
for the winners please contact me at&amp;nbsp;&lt;a href="mailto:m.s.ramzy@gmail.com"&gt;m.s.ramzy@gmail.com&lt;/a&gt; to send you the copies of the books&lt;br /&gt;
thanks a lot for all the&amp;nbsp;participants&amp;nbsp;and good luck next time.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/X6Z7vPhGA-o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/6690337938437199481/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/11/winners-of-ice-cream-sandwich-vs-ios5.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/6690337938437199481?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/6690337938437199481?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/X6Z7vPhGA-o/winners-of-ice-cream-sandwich-vs-ios5.html" title="Winners of the Ice Cream Sandwich VS iOS5 contest" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/11/winners-of-ice-cream-sandwich-vs-ios5.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcNSH0_fCp7ImA9WhdaE0w.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-1165674385867903724</id><published>2011-10-22T23:14:00.000+02:00</published><updated>2011-10-22T23:14:59.344+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-22T23:14:59.344+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Android 4.0" /><category scheme="http://www.blogger.com/atom/ns#" term="Space" /><category scheme="http://www.blogger.com/atom/ns#" term="GridLayout" /><category scheme="http://www.blogger.com/atom/ns#" term="Ice Cream Sandwich" /><title>Ice Cream Sandwich GridLayout</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Android 4.0 (Ice Cream Sandwich) introduced a new type of layouts: the &lt;b&gt;Gridlayout&lt;/b&gt;.&lt;br /&gt;
Gridlayout is like the &lt;b&gt;&amp;lt;Table&amp;gt;&lt;/b&gt; tag in &lt;b&gt;HTML&lt;/b&gt;. child widgets are arranged in &lt;b&gt;Cells&lt;/b&gt; made of &lt;b&gt;Rows&lt;/b&gt; and &lt;b&gt;Columns&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Grid layout is a &lt;b&gt;ViewGroup&lt;/b&gt; that can be used in constructing dashboard activities like that one in the Google Plus application:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/October/gplus.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/October/gplus.jpg" width="192" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
so let's see what we can do with the GridLayout:&lt;br /&gt;
we'll construct a simple dashboard layout like this:&lt;/div&gt;&lt;pre class="brush:xml"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:rowCount="5"
    android:columnCount="3"
    &amp;gt;

    &amp;lt;Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button 1"
        android:layout_row="0"
        android:layout_column="0"
        android:layout_marginLeft="5dp"
         /&amp;gt;
    
    &amp;lt;Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button 2"
        android:layout_row="0"
        android:layout_column="1"
        android:layout_margin="5dp" /&amp;gt;
    
    &amp;lt;Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button 3"
        android:layout_row="1"
        android:layout_column="0"
        android:layout_margin="5dp" /&amp;gt;
    
    &amp;lt;Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button 4"
        android:layout_row="1"
        android:layout_column="1"
        android:layout_margin="5dp" /&amp;gt;
    
    &amp;lt;Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button 5"
        android:layout_row="2"
        android:layout_column="0"
        android:layout_margin="5dp" /&amp;gt;
    
    

&amp;lt;/GridLayout&amp;gt;

&lt;/pre&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/October/device1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/October/device1.png" width="192" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Widgets are placed in position specified by &lt;b&gt;android:layout_column&lt;/b&gt; and &lt;b&gt;android:layout_row&lt;/b&gt; properties.&lt;br /&gt;
we can organize the widgets in a similar way by using the new &lt;b&gt;Space&lt;/b&gt; View like this:&lt;/div&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;br /&gt;
&amp;lt;GridLayout xmlns:android="http://schemas.android.com/apk/res/android"&lt;br /&gt;
android:layout_width="fill_parent"&lt;br /&gt;
android:layout_height="fill_parent"&lt;br /&gt;
android:rowCount="5"&lt;br /&gt;
android:columnCount="3"&lt;br /&gt;
&lt;br /&gt;
&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Space &lt;br /&gt;
android:layout_width="5dp"&lt;br /&gt;
android:layout_height="5dp"/&amp;gt;&lt;br /&gt;
&amp;lt;Button&lt;br /&gt;
android:layout_width="wrap_content"&lt;br /&gt;
android:layout_height="wrap_content"&lt;br /&gt;
android:text="Button 1"&lt;br /&gt;
android:layout_row="0"&lt;br /&gt;
android:layout_column="0"    &lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;Space &lt;br /&gt;
android:layout_width="5dp"&lt;br /&gt;
android:layout_height="5dp"/&amp;gt;&lt;br /&gt;
&amp;lt;Button&lt;br /&gt;
android:layout_width="wrap_content"&lt;br /&gt;
android:layout_height="wrap_content"&lt;br /&gt;
android:text="Button 2"&lt;br /&gt;
android:layout_row="0"&lt;br /&gt;
android:layout_column="1"&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;Space &lt;br /&gt;
android:layout_width="5dp"&lt;br /&gt;
android:layout_height="5dp"/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Button&lt;br /&gt;
android:layout_width="wrap_content"&lt;br /&gt;
android:layout_height="wrap_content"&lt;br /&gt;
android:text="Button 3"&lt;br /&gt;
android:layout_row="1"&lt;br /&gt;
android:layout_column="0"&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;Space &lt;br /&gt;
android:layout_width="5dp"&lt;br /&gt;
android:layout_height="5dp"/&amp;gt;&lt;br /&gt;
&amp;lt;Button&lt;br /&gt;
android:layout_width="wrap_content"&lt;br /&gt;
android:layout_height="wrap_content"&lt;br /&gt;
android:text="Button 4"&lt;br /&gt;
android:layout_row="1"&lt;br /&gt;
android:layout_column="1"&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;Space &lt;br /&gt;
android:layout_width="5dp"&lt;br /&gt;
android:layout_height="5dp"/&amp;gt;&lt;br /&gt;
&amp;lt;Button&lt;br /&gt;
android:layout_width="wrap_content"&lt;br /&gt;
android:layout_height="wrap_content"&lt;br /&gt;
android:text="Button 5"&lt;br /&gt;
android:layout_row="2"&lt;br /&gt;
android:layout_column="0"&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;Space &lt;br /&gt;
android:layout_width="5dp"&lt;br /&gt;
android:layout_height="5dp"/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/GridLayout&amp;gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/October/device2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/October/device2.png" width="192" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/X-mzqd5iR5I" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/1165674385867903724/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/10/ice-cream-sandwich-gridlayout.html#comment-form" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/1165674385867903724?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/1165674385867903724?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/X-mzqd5iR5I/ice-cream-sandwich-gridlayout.html" title="Ice Cream Sandwich GridLayout" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>6</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/10/ice-cream-sandwich-gridlayout.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkABQHozfyp7ImA9WhdaEkU.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-8246266341009431355</id><published>2011-10-08T22:15:00.001+02:00</published><updated>2011-10-22T13:59:11.487+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-22T13:59:11.487+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Nexus Prime" /><category scheme="http://www.blogger.com/atom/ns#" term="iOS 5" /><category scheme="http://www.blogger.com/atom/ns#" term="Contest" /><category scheme="http://www.blogger.com/atom/ns#" term="Android" /><category scheme="http://www.blogger.com/atom/ns#" term="Apple" /><category scheme="http://www.blogger.com/atom/ns#" term="Ice Cream Sandwich" /><title>Contest: Do you think Android Ice Cream Sandwich will beat Apple iOS 5</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Hello everybody.&lt;br /&gt;
Google will release the next major Android update: &lt;b&gt;Android 4.0 (Ice cream Sandwich)&lt;/b&gt; along with it's next flagship phone: the &lt;b&gt;Nexus Prime&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Join our &lt;b&gt;Contest &lt;/b&gt;and have the chance to win a copy of one of these wonderful Android books:&lt;br /&gt;
&lt;br /&gt;
&lt;ol style="text-align: left;"&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://www.android2ee.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=70&amp;amp;Itemid=102&amp;amp;lang=en"&gt;Android, A Complete Course, From Basics To Enterprise Edition.&lt;/a&gt;&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;a href="http://www.android2ee.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=71&amp;amp;Itemid=104&amp;amp;lang=en"&gt;Android, A Quick Course.&lt;/a&gt;&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;a href="http://www.android2ee.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=59&amp;amp;Itemid=105&amp;amp;lang=en"&gt;Android, An Enterprise Edition Vision.&lt;/a&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt; &lt;td&gt;&lt;br /&gt;
&lt;a href="http://www.android2ee.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=70&amp;amp;Itemid=102&amp;amp;lang=en" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://www.android2ee.com/images/stories/couv-android/couv-complet-course.jpg" width="141" /&gt;&lt;/a&gt;&lt;/td&gt; &lt;td&gt;&lt;br /&gt;
&lt;a href="http://www.android2ee.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=71&amp;amp;Itemid=104&amp;amp;lang=en" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://www.android2ee.com/images/stories/couv-android/couv-quick-course.jpg" width="141" /&gt;&lt;/a&gt;&lt;/td&gt; &lt;td&gt;&lt;br /&gt;
&lt;a href="http://www.android2ee.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=59&amp;amp;Itemid=105&amp;amp;lang=en" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://www.android2ee.com/images/stories/couv-android/couv-Enterprise.jpg" width="141" /&gt;&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;all you've got to do is to drop a comment answering the following question:&lt;/div&gt;&lt;div&gt;&lt;b&gt;Do you think Android Ice Cream Sandwich will beat Apple iOS 5 ?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/div&gt;&lt;div&gt;the contest ends on November 7th, winners will be announced then.&lt;/div&gt;&lt;div&gt;waiting for your comments&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/LLvXxFIyQRY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/8246266341009431355/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/10/contest-do-you-think-android-ice-cream.html#comment-form" title="24 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/8246266341009431355?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/8246266341009431355?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/LLvXxFIyQRY/contest-do-you-think-android-ice-cream.html" title="Contest: Do you think Android Ice Cream Sandwich will beat Apple iOS 5" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>24</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/10/contest-do-you-think-android-ice-cream.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkMBQ308fyp7ImA9WhdVE04.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-7643272032207497844</id><published>2011-09-18T11:34:00.000+02:00</published><updated>2011-09-18T11:34:12.377+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-09-18T11:34:12.377+02:00</app:edited><title>Symbyo Technologies: Cloud Computing and Mobile Application Development</title><content type="html">&lt;a href="http://blog.symbyo.com/2011/09/cloud-computing-and-mobile-application.html"&gt;Symbyo Technologies: Cloud Computing and Mobile Application Development&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/I60cpGEY_lI" height="1" width="1"/&gt;</content><link rel="related" href="http://blog.symbyo.com/2011/09/cloud-computing-and-mobile-application.html" title="Symbyo Technologies: Cloud Computing and Mobile Application Development" /><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/7643272032207497844/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/09/symbyo-technologies-cloud-computing-and.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/7643272032207497844?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/7643272032207497844?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/I60cpGEY_lI/symbyo-technologies-cloud-computing-and.html" title="Symbyo Technologies: Cloud Computing and Mobile Application Development" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>2</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/09/symbyo-technologies-cloud-computing-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQDRX09eip7ImA9WhdXEEQ.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-1642299714580899226</id><published>2011-08-23T12:46:00.000+02:00</published><updated>2011-08-23T12:46:14.362+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-23T12:46:14.362+02:00</app:edited><title>Android Developers Blog: Preview of Google TV Add-on for the Android SDK</title><content type="html">&lt;a href="http://android-developers.blogspot.com/2011/08/preview-of-google-tv-add-on-for-android.html?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+blogspot%2FhsDu+%28Android+Developers+Blog%29"&gt;Android Developers Blog: Preview of Google TV Add-on for the Android SDK&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/JwtvqybdsJE" height="1" width="1"/&gt;</content><link rel="related" href="http://android-developers.blogspot.com/2011/08/preview-of-google-tv-add-on-for-android.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+blogspot%2FhsDu+%28Android+Developers+Blog%29" title="Android Developers Blog: Preview of Google TV Add-on for the Android SDK" /><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/1642299714580899226/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/08/android-developers-blog-preview-of.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/1642299714580899226?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/1642299714580899226?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/JwtvqybdsJE/android-developers-blog-preview-of.html" title="Android Developers Blog: Preview of Google TV Add-on for the Android SDK" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>3</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/08/android-developers-blog-preview-of.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak8NR3k8eCp7ImA9WhdQFE0.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-536910446600987180</id><published>2011-08-15T13:48:00.000+02:00</published><updated>2011-08-15T13:48:16.770+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-15T13:48:16.770+02:00</app:edited><title>Official Google Blog: Supercharging Android: Google to Acquire Motorola Mobility</title><content type="html">&lt;a href="http://googleblog.blogspot.com/2011/08/supercharging-android-google-to-acquire.html"&gt;Official Google Blog: Supercharging Android: Google to Acquire Motorola Mobility&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/wT_MfS0WE7E" height="1" width="1"/&gt;</content><link rel="related" href="http://googleblog.blogspot.com/2011/08/supercharging-android-google-to-acquire.html" title="Official Google Blog: Supercharging Android: Google to Acquire Motorola Mobility" /><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/536910446600987180/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/08/official-google-blog-supercharging.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/536910446600987180?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/536910446600987180?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/wT_MfS0WE7E/official-google-blog-supercharging.html" title="Official Google Blog: Supercharging Android: Google to Acquire Motorola Mobility" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/08/official-google-blog-supercharging.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkABRXc-fip7ImA9WhdRF0Q.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-6382680493710322396</id><published>2011-08-08T11:12:00.000+02:00</published><updated>2011-08-08T11:12:34.956+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-08T11:12:34.956+02:00</app:edited><title>Android Developing: Remove Auto focus from Edit Text</title><content type="html">&lt;a href="http://android-developing.blogspot.com/2011/02/remove-auto-focus-from-edit-text.html?spref=bl"&gt;Android Developing: Remove Auto focus from Edit Text&lt;/a&gt;: "When start Android application, it always auto focus EditText box. Here we give explain how to remove auto focus from EditText.   Add your..."&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/u3pggPL8dOg" height="1" width="1"/&gt;</content><link rel="related" href="http://android-developing.blogspot.com/2011/02/remove-auto-focus-from-edit-text.html?spref=bl" title="Android Developing: Remove Auto focus from Edit Text" /><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/6382680493710322396/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/08/android-developing-remove-auto-focus.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/6382680493710322396?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/6382680493710322396?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/u3pggPL8dOg/android-developing-remove-auto-focus.html" title="Android Developing: Remove Auto focus from Edit Text" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/08/android-developing-remove-auto-focus.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0EAQXg8eyp7ImA9WhdRFk8.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-1759065050221786084</id><published>2011-08-06T12:14:00.002+02:00</published><updated>2011-08-06T12:14:00.673+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-06T12:14:00.673+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Search" /><title>Implementing Search activities</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Most Android phones have a&lt;strong&gt; search&lt;/strong&gt; button. this button is used to search contacts,applications or anything on the phone. We can make use of the search functionality in our apps.&lt;br /&gt;
&lt;br /&gt;
In this post we're going to see how to implement search functionality to search for entries stored in a databaseand display them in a ListView.&lt;/div&gt;&lt;div closure_uid_ghg7ej="237"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_ghg7ej="237"&gt;&lt;span style="font-size: large;"&gt;Creating database:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;our database has two tables: &lt;strong&gt;Countries&lt;/strong&gt; and &lt;strong&gt;Names:&lt;/strong&gt;&lt;br /&gt;
&lt;pre class="brush:java" closure_uid_ghg7ej="312"&gt;public class DBHelper extends SQLiteOpenHelper {

 public DBHelper(Context context) {
  super(context, "DemoDB", null, 1);
 }

 @Override
 public void onCreate(SQLiteDatabase db) {
  StringBuilder builder=new StringBuilder();
  // countries table
  builder.append("CREATE TABLE Countries ");
  builder.append("(_id INTEGER PRIMARY KEY AUTOINCREMENT,");
  builder.append("NAME TEXT) ");
  db.execSQL(builder.toString());
  // Names table
  // Virtual table for full text search
  builder.setLength(0);
  builder.append("CREATE VIRTUAL TABLE NAMES USING FTS3");
  builder.append("(");
  builder.append("name TEXT) ");  
  db.execSQL(builder.toString());
  builder=new StringBuilder();

  //dummy  data
  InsertData(db);

 }

  void InsertData(SQLiteDatabase db)
  {
   ContentValues cv=new ContentValues();
   cv.put("NAME","USA");
   db.insert("Countries", "NAME", cv);
   cv.put("NAME","UK");
   db.insert("Countries", "NAME", cv);
   cv.put("NAME","Spain");
   db.insert("Countries", "NAME", cv);
   cv.put("NAME","ITALY");
   db.insert("Countries", "NAME", cv);
   cv.put("NAME","Germany");
   db.insert("Countries", "NAME", cv);

    cv=new ContentValues();
    cv.put("name","John");
    db.insert("NAMES", "name", cv);
    cv.put("name","Jack");
    db.insert("NAMES", "name", cv);
    cv.put("name","Ann");
    db.insert("NAMES", "name", cv);
    cv.put("name","Adam");
    db.insert("NAMES", "name", cv);
    cv.put("name","Sarah");
    db.insert("NAMES", "name", cv);

  }

 @Override
 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  // TODO Auto-generated method stub

 }
}&lt;/pre&gt;&lt;/div&gt;notice that the &lt;strong&gt;Names &lt;/strong&gt;table is a &lt;strong&gt;VIRTUAL &lt;/strong&gt;table. we created it as virtual to make use of &lt;strong&gt;Full Text Search (FTS3)&lt;/strong&gt; feature in SQLite. this feature makes queries faster than that in regular tables.&lt;/div&gt;then we add two functions to retrieve all rows from both tables:&lt;br /&gt;
&lt;pre class="brush:java"&gt;/**
  * Return all countries
  * @return
  */
 public ArrayListgetCountries(){
  ArrayList countries=new ArrayList();
  SQLiteDatabase db=this.getReadableDatabase();
  Cursor c=db.rawQuery("select * from Countries", null);
  while(c.moveToNext()){
   String country=c.getString(1);
   countries.add(country);
  }
  c.close();
  return countries;
 }
/**
  * Return all names
  * @return
  */

 public ArrayListgetNames(){
  ArrayList names=new ArrayList();
  Cursor c=this.getReadableDatabase().rawQuery("select * FROM Names", null);
  while(c.moveToNext()){
   String name=c.getString(0);
   names.add(name);
  }
  c.close();
  return names;
 }&lt;/pre&gt;&lt;/div&gt;and another two functions to retrieve data based on a &lt;strong&gt;search string&lt;/strong&gt;:&lt;br /&gt;
&lt;pre class="brush:java"&gt;/**
  * Return all countries based on a search string
  * @return
  */
 public ArrayListgetCountriesSearch(String query){
  ArrayList countries=new ArrayList();
  SQLiteDatabase db=this.getReadableDatabase();
  Cursor c=db.rawQuery("select * from Countries where NAME LIKE '%"+query+"%'", null);
  while(c.moveToNext()){
   String country=c.getString(1);
   countries.add(country);
  }
  c.close();
  return countries;
 }
/**
  * Return all names based on a search string
  * we use the MATCH keyword to make use of the full text search
  * @return
  */
 public ArrayListgetNamesSearch(String query){
  ArrayList names=new ArrayList();
  Cursor c=this.getReadableDatabase().rawQuery("select * FROM Names WHERE name MATCH '"+query+"'", null);
  while(c.moveToNext()){
   String name=c.getString(0);
   names.add(name);
  }
  c.close();
  return names;
 }&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;Implementing The activity:&lt;/span&gt;&lt;/div&gt;then we will create our activity that has a list view like this:&lt;br /&gt;
&lt;pre class="brush:xml" closure_uid_ghg7ej="313" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    &amp;gt;
&amp;lt;ListView
android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/list"/&amp;gt;
&amp;lt;/LinearLayout&amp;gt;&lt;/pre&gt;&lt;/div&gt;&lt;div closure_uid_ghg7ej="251" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; clear: both; text-align: center;"&gt;&lt;a href="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/Search%20Activity/search.bmp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320px" src="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/Search%20Activity/search.bmp" t$="true" width="213px" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;we load data from database like this:&lt;br /&gt;
&lt;pre class="brush:java"&gt;public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        list=(ListView)findViewById(R.id.list);

            DBHelper helper=new DBHelper(this);
            ArrayList items=helper.getNames();
            ArrayAdapter adapter=new ArrayAdapter(this, android.R.layout.simple_list_item_1,items);
            list.setAdapter(adapter);
}&lt;/pre&gt;&lt;/div&gt;&lt;div closure_uid_ghg7ej="315"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_ghg7ej="315"&gt;&lt;span style="font-size: large;"&gt;Handling the search dialog:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;In order to handle the search dialog ourselves we need to create a xml file with search configurations such as the search dialog title, voice search capabilities, content provider for auto complete and so on. we create a file with the name &lt;strong&gt;searchable.xml&lt;/strong&gt; in &lt;strong&gt;res/xml&lt;/strong&gt;directory:&lt;br /&gt;
&lt;pre class="brush:xml"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;
&amp;lt;searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:label="@string/app_name"
    android:hint="@string/hint"  &amp;gt;
&amp;lt;/searchable&amp;gt;&lt;/pre&gt;&lt;/div&gt;the &lt;strong&gt;android:hint&lt;/strong&gt; attribute denotes a string that acts as a water mark on the search text box.&lt;br /&gt;
then we need to add an &lt;strong&gt;Intent Filter&lt;/strong&gt; in out app's &lt;strong&gt;AndroidManifest.xml&lt;/strong&gt; file to our activity to handle the search dialog:&lt;br /&gt;
&lt;pre class="brush:xml"&gt;&amp;lt;activity android:name=".MainActivty"
                  android:label="@string/app_name"&amp;gt;
            &amp;lt;intent-filter&amp;gt;
                &amp;lt;action android:name="android.intent.action.MAIN" /&amp;gt;
                &amp;lt;category android:name="android.intent.category.LAUNCHER" /&amp;gt;
            &amp;lt;/intent-filter&amp;gt;
             &amp;lt;intent-filter&amp;gt;
            &amp;lt;action android:name="android.intent.action.SEARCH" /&amp;gt;
        &amp;lt;/intent-filter&amp;gt;
        &amp;lt;meta-data android:name="android.app.searchable"
                   android:resource="@xml/searchable"/&amp;gt;
        &amp;lt;/activity&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_ghg7ej="317"&gt;&lt;span style="font-size: large;"&gt;Understanding the Search process:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
when you press the search button, type some text and click on search the activit's &lt;strong&gt;onSearchRequested()&lt;/strong&gt; function is called, then an Intent with the action &lt;strong&gt;Intent.ACTION_SEARCH&lt;/strong&gt; is created and you activity is re-created with this intent.&lt;br /&gt;
&lt;br /&gt;
the search intent has you search string as a string extra with the name &lt;strong&gt;SearchManager.QUERY&lt;/strong&gt;. also it can carry a &lt;strong&gt;bundle &lt;/strong&gt;of other extras with the name &lt;strong&gt;SearchManager.APP_DATA&lt;/strong&gt;.&lt;/div&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;what if the device doesn't have a Search button:&lt;/span&gt;&lt;/div&gt;not all Android devices have a search button, so we can start the search dialog manually by calling the activity's &lt;strong&gt;onSearchRequested()&lt;/strong&gt; from a button or a menu item:&lt;br /&gt;
&lt;pre class="brush:java"&gt;@Override
     public boolean onCreateOptionsMenu(Menu menu) {
     menu.add("Search").setOnMenuItemClickListener(new OnMenuItemClickListener() {

   @Override
   public boolean onMenuItemClick(MenuItem item) {
                                //launch the search dialog
    onSearchRequested();
    return true;
   }
  });
     return true;
    }&lt;/pre&gt;&lt;/div&gt;&lt;div closure_uid_ghg7ej="322"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_ghg7ej="322"&gt;&lt;span style="font-size: large;"&gt;Adding extras to the search dialog:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;we can pass some extra data as a bundle with our search dialog or an initial search string by overriding the activity's &lt;strong&gt;onSearchRequested()&lt;/strong&gt;:&lt;br /&gt;
&lt;pre class="brush:java"&gt;@Override
    public boolean onSearchRequested() {
     Bundle bundle=new Bundle();
  bundle.putString("extra", "exttra info");
  // search initial query
  startSearch("Country", false, bundle, false);
  return true;
    }&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span style="font-size: large;"&gt;Handling the search query:&lt;/span&gt;&lt;/div&gt;&lt;div closure_uid_ghg7ej="324"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_ghg7ej="324"&gt;we said before that the search query is passed as a &lt;strong&gt;String extra&lt;/strong&gt; when our activity is re-created. so we can handle the searcgh string in our &lt;strong&gt;onCreate()&lt;/strong&gt; like this:&lt;/div&gt;&lt;pre class="brush:java" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        list=(ListView)findViewById(R.id.list);

        DBHelper helper=new DBHelper(this);
        Intent intent=getIntent();
        // if the activity is created from search
         if(intent.getAction().equals(Intent.ACTION_SEARCH)){
          // get search query
          String query=intent.getStringExtra(SearchManager.QUERY);
          ArrayList items=helper.getNamesSearch(query);
          //get extras, just for demonstration
          Bundle bundle=intent.getBundleExtra(SearchManager.APP_DATA);
             String info=bundle.getString("extra");
          Log.v("extra", info);
          //bind the list
                ArrayAdapter adapter=new ArrayAdapter(this, android.R.layout.simple_list_item_1,items);
                list.setAdapter(adapter);
         }
        //activity created normally
        else{
         ArrayList items=helper.getNames();
            ArrayAdapter adapter=new ArrayAdapter(this, android.R.layout.simple_list_item_1,items);
            list.setAdapter(adapter);
        }
        helper.close();
    }&lt;/pre&gt;&lt;/div&gt;&lt;div closure_uid_ghg7ej="368" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; clear: both; text-align: center;"&gt;&lt;a href="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/Search%20Activity/search2.bmp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320px" src="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/Search%20Activity/search2.bmp" t$="true" width="213px" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;
we just extract the search string and any other extras and perform our search logic based on the search string.&lt;br /&gt;
and that's was all about implementing search&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/OcAlxHm2EEw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/1759065050221786084/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/08/implementing-search-activities.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/1759065050221786084?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/1759065050221786084?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/OcAlxHm2EEw/implementing-search-activities.html" title="Implementing Search activities" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/08/implementing-search-activities.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0UASXk9eip7ImA9WhdRFU4.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-5265609928020930542</id><published>2011-08-05T12:14:00.000+02:00</published><updated>2011-08-05T12:14:08.762+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-05T12:14:08.762+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Service" /><category scheme="http://www.blogger.com/atom/ns#" term="AIDL" /><category scheme="http://www.blogger.com/atom/ns#" term="Remote Service" /><title /><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;In this post we will see how can a client application call the methods of a service defined in another application. this is achieved through &lt;strong&gt;Android Interface Definition Language (AIDL). &lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;/strong&gt;AIDL is a java like language that enables you to define an interface that both the application defining the service and the client application implement it.&lt;br /&gt;
&lt;br /&gt;
&lt;div closure_uid_siyhg3="239"&gt;&lt;div closure_uid_siyhg3="260"&gt;the interface defines the functions that are needed to be called in the client application.&lt;/div&gt;&lt;/div&gt;&lt;div closure_uid_siyhg3="232"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_siyhg3="232"&gt;&lt;span style="font-size: large;"&gt;Defining the AIDL file:&lt;/span&gt;&lt;/div&gt;AIDL syntax is similar to that of Java, we can use the following data types in AIDL:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;primitive data types:&amp;nbsp;int, long, char, boolean,....&lt;/li&gt;
&lt;li&gt;String.&lt;/li&gt;
&lt;li&gt;CharSequence.&lt;/li&gt;
&lt;li&gt;List (ArrayList,Vector,...).&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;the AIDL file is defined as follows:&lt;br /&gt;
open a notepad file and paste the following code in it:&lt;br /&gt;
&lt;pre class="brush:java"&gt;package com.mina.servicedemo;

// service interface
interface IRemoteService {
    //sample method
    String sayHello(String message);
}&lt;/pre&gt;take care of the package name &lt;strong&gt;com.mina.servicedemo&lt;/strong&gt;.&lt;br /&gt;
we defined a methods &lt;strong&gt;sayHello(String message)&lt;/strong&gt; that returns a string.&lt;/li&gt;
&lt;li&gt;save the file with the name&lt;strong&gt; IRemoteService&lt;/strong&gt; and change it's extension to &lt;strong&gt;.aidl&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;copy the file to the &lt;strong&gt;src&lt;/strong&gt; folder of your project.&lt;/li&gt;
&lt;li&gt;once you save and build the file, Android generates an interface java file with the name&amp;nbsp;&lt;strong&gt;IRemoteService.java&lt;/strong&gt;&amp;nbsp;in the&amp;nbsp;&lt;strong&gt;gen&lt;/strong&gt;&amp;nbsp;folder if the project.&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_siyhg3="243"&gt;&lt;span style="font-size: large;"&gt;Defining the Service:&lt;/span&gt;&lt;/div&gt;now we want our service to expose this interface to client applications, so we return an&amp;nbsp;implementation of the service in the &lt;strong&gt;onBind()&lt;/strong&gt; method of our service:&lt;br /&gt;
&lt;pre class="brush:java"&gt;package com.mina.servicedemo;

import com.mina.servicedemo.IRemoteService.Stub;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.os.RemoteException;
import android.widget.Toast;

public class DemoService extends Service {

 @Override
 public IBinder onBind(Intent arg0) {
  return mBinder;
 }

 // implementation of the aidl interface
 private final IRemoteService.Stub mBinder=new Stub() {

  @Override
  public String sayHello(String message) throws RemoteException {
   return "Hello "+message;

  }
 };

 }
}&lt;/pre&gt;&lt;/div&gt;the last thing to do in the service is to make its &lt;strong&gt;exported&lt;/strong&gt; attribute in the &lt;strong&gt;AndroidManifest.xml&lt;/strong&gt; file set to true like this:&lt;br /&gt;
&lt;pre class="brush:xml"&gt;&amp;lt;service android:name="DemoService" android:exported="true"&amp;gt;&amp;lt;/service&amp;gt;&lt;/pre&gt;our app structure can be like this:&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/AIDL/aidl.bmp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/AIDL/aidl.bmp" t$="true" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div closure_uid_siyhg3="248"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div closure_uid_siyhg3="259"&gt;&lt;span style="font-size: large;"&gt;Consuming the service at the client application:&lt;/span&gt;&lt;/div&gt;now to our client application where we want to invoke methods from our service. the client application is a separate application with a different package name than that where the service is defined.&lt;br /&gt;
&lt;br /&gt;
the client application needs a reference to the AIDL interface defined in the original applcation, this is done through the following steps:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;in the client applicatio create a package with the same package name of that the service is defined in: &lt;strong&gt;com.mina.servicedemo.&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;copy the AIDL file in this package.&lt;/li&gt;
&lt;li closure_uid_siyhg3="261" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none;"&gt;save and build and a new file called IRemoteService.java is generated. your app structure should be like this: &lt;/li&gt;
&lt;/ol&gt;&lt;div class="separator" style="border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; clear: both; text-align: center;"&gt;&lt;a href="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/AIDL/aidl2.bmp" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://dl.dropbox.com/u/2624328/Android%20Pro/2011/August/AIDL/aidl2.bmp" t$="true" /&gt;&lt;/a&gt;&lt;/div&gt;and we invoke the servcice methods in our activity like this:&lt;br /&gt;
&lt;pre class="brush:java"&gt;package com.mina.serviceclient;

import com.mina.servicedemo.IRemoteService;

import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.Bundle;
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;

public class MainActivity extends Activity {

 IRemoteService mRemoteService;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Intent serviceIntent=new Intent();
        serviceIntent.setClassName("com.mina.servicedemo", "com.mina.servicedemo.DemoService");
        boolean ok=bindService(serviceIntent, mServiceConnection,Context.BIND_AUTO_CREATE);
        Log.v("ok", String.valueOf(ok));
    }

    private ServiceConnection mServiceConnection=new ServiceConnection() {

  @Override
  public void onServiceDisconnected(ComponentName name) {
   // TODO Auto-generated method stub

  }

  @Override
  public void onServiceConnected(ComponentName name, IBinder service) {
   // get instance of the aidl binder
   mRemoteService = IRemoteService.Stub.asInterface(service);
   try {
    String message=mRemoteService.sayHello("Mina");
    Log.v("message", message);
   } catch (RemoteException e) {
    Log.e("RemoteException", e.toString());
   }

  }
 };
}&lt;/pre&gt;&lt;/div&gt;and that's was all about calling remote services with AIDL.&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/U6jlOc_ydL4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/5265609928020930542/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/08/in-this-post-we-will-see-how-can-client.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5265609928020930542?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5265609928020930542?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/U6jlOc_ydL4/in-this-post-we-will-see-how-can-client.html" title="" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/08/in-this-post-we-will-see-how-can-client.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYESX85eip7ImA9WhdRFE0.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-3923827596657274241</id><published>2011-08-03T23:48:00.000+02:00</published><updated>2011-08-03T23:48:28.122+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-03T23:48:28.122+02:00</app:edited><title>Official Google Blog: When patents attack Android</title><content type="html">&lt;a href="http://googleblog.blogspot.com/2011/08/when-patents-attack-android.html?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+blogspot%2FMKuf+%28Official+Google+Blog%29"&gt;Official Google Blog: When patents attack Android&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/OS2qgccqnS4" height="1" width="1"/&gt;</content><link rel="related" href="http://googleblog.blogspot.com/2011/08/when-patents-attack-android.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+blogspot%2FMKuf+%28Official+Google+Blog%29" title="Official Google Blog: When patents attack Android" /><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/3923827596657274241/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/08/official-google-blog-when-patents.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3923827596657274241?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3923827596657274241?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/OS2qgccqnS4/official-google-blog-when-patents.html" title="Official Google Blog: When patents attack Android" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/08/official-google-blog-when-patents.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMARng6fip7ImA9WhdSGEk.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-5865612228744179770</id><published>2011-07-28T10:40:00.000+02:00</published><updated>2011-07-28T10:40:47.616+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-28T10:40:47.616+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Android" /><title>Android Story: From [x] cube Labs</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;a href="http://www.xcubelabs.com/the-android-story.php"&gt;&lt;img alt="The-Andriod-Story" border="0" src="http://www.xcubelabs.com/images/android-infograph.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Infographic by &lt;a href="http://www.xcubelabs.com/"&gt;Android Developers at [x]cubelabs&lt;/a&gt; &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/qYeyJOJtFfM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/5865612228744179770/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/07/android-story-from-x-cube-labs.html#comment-form" title="17 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5865612228744179770?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5865612228744179770?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/qYeyJOJtFfM/android-story-from-x-cube-labs.html" title="Android Story: From [x] cube Labs" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>17</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/07/android-story-from-x-cube-labs.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0MNR3czfip7ImA9WhdTGU8.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-5314929159235970351</id><published>2011-07-17T18:51:00.000+02:00</published><updated>2011-07-17T18:51:36.986+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-17T18:51:36.986+02:00</app:edited><title>Symbyo Technologies: The Android Invasion Continues!!</title><content type="html">&lt;a href="http://blog.symbyo.com/2011/07/android-invasion-continues.html"&gt;Symbyo Technologies: The Android Invasion Continues!!&lt;/a&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/TQd8gQXJhWI" height="1" width="1"/&gt;</content><link rel="related" href="http://blog.symbyo.com/2011/07/android-invasion-continues.html" title="Symbyo Technologies: The Android Invasion Continues!!" /><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/5314929159235970351/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/07/symbyo-technologies-android-invasion.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5314929159235970351?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/5314929159235970351?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/TQd8gQXJhWI/symbyo-technologies-android-invasion.html" title="Symbyo Technologies: The Android Invasion Continues!!" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/07/symbyo-technologies-android-invasion.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEIGQXo9eip7ImA9WhZaGEU.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-3887391238569901115</id><published>2011-07-05T19:22:00.003+02:00</published><updated>2011-07-05T19:22:00.462+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-05T19:22:00.462+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Service" /><title>Android Services</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;strong&gt;Android Service &lt;/strong&gt;is used for long-running processes that do not require user interaction, such as calling a web service and parsing response. Or processes that need to be running even if the application that started the service is not on the foreground such as playing mp3 files in a music player.&lt;br /&gt;
&lt;br /&gt;
we need to distinguish between A &lt;strong&gt;Service&lt;/strong&gt; and a&lt;strong&gt; Thread&lt;/strong&gt; or an &lt;strong&gt;AsyncTask: &lt;/strong&gt;Threads or Async task perform their tasks in a background thread thus they do not block the main thread, while a service performs it's work in the main thread. so if a service is performing an intensive task such as calling a web service, it may block the main thread until it finishes. So for intensive tasks a service should run it's work in a background thread.&lt;br /&gt;
&lt;br /&gt;
A service runs in the same process of the application and keeps running until stopped by itself, stopped by the user or killed by the system if it needs memory.&lt;br /&gt;
&lt;h2&gt;Creating a service:&lt;/h2&gt;to create a service we create a class that extends&amp;nbsp;&lt;strong&gt;android.app.Service &lt;/strong&gt;and it would be like this:&lt;br /&gt;
&lt;pre class="brush:java"&gt;public class DemoService extends Service {

 @Override
 public IBinder onBind(Intent arg0) {
  // TODO Auto-generated method stub
  return null;
 }

}&lt;/pre&gt;next we need to define our service in our &lt;strong&gt;AndroidManifest.xml&lt;/strong&gt; file:&lt;br /&gt;
&lt;pre class="brush:xml"&gt;&amp;lt;service android:name="DemoService"&amp;gt;&amp;lt;/service&amp;gt;&lt;/pre&gt;The service life cycle has the following events&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;strong&gt;onCreate():&lt;/strong&gt; called when the service is created.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;onStart():&lt;/strong&gt; Called when the service starts by a call to &lt;strong&gt;startService(Intent intent)&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;onDestroy():&lt;/strong&gt; Called as the service is terminates.&lt;/li&gt;
&lt;/ul&gt;&lt;h2&gt;&lt;strong&gt;Calling a service:&lt;/strong&gt;&lt;/h2&gt;A service can be called from an activity in two ways:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;By calling&amp;nbsp;&lt;strong&gt;startService(Intent intent).&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;By binding to the service through an &lt;strong&gt;Binder&lt;/strong&gt; object.&lt;/li&gt;
&lt;/ol&gt;&lt;h3&gt;calling&amp;nbsp;startService(Intent intent):&lt;/h3&gt;to start a service from an activity using this method, we create an intent and start the service like this:&lt;br /&gt;
&lt;pre class="brush:java"&gt;Intent intent=new Intent(this,DemoService.class);
startService(intent);&lt;/pre&gt;the &lt;strong&gt;startService(intent)&lt;/strong&gt; method causes the onStart() method of the service to be called, so the service can execute it's work like this:&lt;br /&gt;
&lt;pre class="brush:java"&gt;public class DemoService extends Service {

 @Override
 public IBinder onBind(Intent arg0) {
  // TODO Auto-generated method stub
  return null;
 }

 @Override
 public void onStart(Intent intent, int startId) {
  super.onStart(intent, startId);
  doSomething();
 }

 public void doSomething(){
  // do some work
 }

}&lt;/pre&gt;the service will keep running until it stops itself via stop &lt;strong&gt;stopSelf()&lt;/strong&gt; after finishing work:&lt;br /&gt;
&lt;pre class="brush:java"&gt;@Override
 public void onStart(Intent intent, int startId) {
  super.onStart(intent, startId);
  doSomething();
  stopSelf();
 }&lt;/pre&gt;or it can be stopped from the activity via &lt;strong&gt;stopService(Intent intent)&lt;/strong&gt;.&lt;br /&gt;
&lt;h3&gt;Binding to a service through an Binder object:&lt;/h3&gt;As the service runs in the same process of the application the service has only one instance (singleton) instance running. you may want to keep reference to this instance to perform periodical tasks or to call the service methods themselves.&lt;br /&gt;
&lt;br /&gt;
to make the service&amp;nbsp;bind-able we extends&amp;nbsp;&lt;strong&gt;Binder&lt;/strong&gt; class&amp;nbsp;and return an instance of it in the service's &lt;strong&gt;onBind(Intent intent)&lt;/strong&gt; method:&lt;br /&gt;
&lt;pre class="brush:java"&gt;public class DemoService extends Service {

 private final IBinder binder = new LocalBinder();
 @Override
 public IBinder onBind(Intent arg0) {
  return binder;
 }

 public class LocalBinder extends Binder {
  DemoService getService() {
            return DemoService.this;
        }
    }

 @Override
 public void onStart(Intent intent, int startId) {
  super.onStart(intent, startId);
  doSomething();
  stopSelf();
 }

 public void doSomething(){
  // do something
 }

}&lt;/pre&gt;then we bind the service from our activity by first creating a ServiceConnection object to handle the service connection/disconnection then binding to the service by an intent like this:&lt;br /&gt;
&lt;pre class="brush:java"&gt;public class MainActivity extends Activity {

 DemoService mService;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

    ServiceConnection serviceConn=new ServiceConnection() {

                /**
                * service unbound, release from memory
                **/
  @Override
  public void onServiceDisconnected(ComponentName name) {
   mService=null;
  }

                /**
                * service is bound, start it's work
                **/
  @Override
  public void onServiceConnected(ComponentName name, IBinder service) {
   mService=((LocalBinder)service).getService();
   mService.doSomething();

  }
 };

    @Override
    protected void onResume() {
     super.onResume();
        // bind to the service by an intent
     Intent intent=new Intent(this,DemoService.class);
        // AUTO CREATE: creates the service and gives it an importance so that it won't be killed
        // unless any process bound to it (our activity in this case) is killed to
     bindService(intent, serviceConn, Context.BIND_AUTO_CREATE);
    }

    @Override
    protected void onDestroy() {
     super.onDestroy();
        / unbind the service whena ctivity is destroyed
     unbindService(serviceConn);
    }
}&lt;/pre&gt;notice that we &lt;strong&gt;unbind&lt;/strong&gt; the service in the activity's &lt;strong&gt;onDestroy()&lt;/strong&gt; method to disconnect from the service and stop it from executing any further&lt;br /&gt;
&lt;br /&gt;
and that's was all about Android services, stay tuned for another Android tutorial.&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/qwA7lb_IzCc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/3887391238569901115/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/07/android-services.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3887391238569901115?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/3887391238569901115?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/qwA7lb_IzCc/android-services.html" title="Android Services" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/07/android-services.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04AQXg7cCp7ImA9WhZaF0Q.&quot;"><id>tag:blogger.com,1999:blog-3614313680693372993.post-2054746061157357328</id><published>2011-07-04T19:19:00.005+02:00</published><updated>2011-07-04T19:19:00.608+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-07-04T19:19:00.608+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="JSON" /><category scheme="http://www.blogger.com/atom/ns#" term="Parsing" /><title>Parsing JSON respone:</title><content type="html">&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;
&lt;/div&gt;if we have a JSON web service response like this:&lt;br /&gt;
&lt;pre&gt;"persons"
[
{
"person"{
"firstName": "John",
     "lastName": "Smith",
     "age": 25
}
}
{
"person"{
"firstName": "Catherine",
     "lastName": "Jones",
     "age": 35
}
}
]&lt;/pre&gt;this response is a &lt;strong&gt;JSON Array&lt;/strong&gt; with the name "persons", this array consists of "person" &lt;strong&gt;JSON Object&lt;/strong&gt;s.&lt;br /&gt;
to parse such a reponse:&lt;br /&gt;
&lt;pre class="brush:java"&gt;public ArrayList&amp;lt;Person&amp;gt; getMessage(String response){
  JSONObject jsonResponse;
  ArrayList&amp;lt;Person&amp;gt; arrPersons=new ArrayList&amp;lt;Person&amp;gt;;
  try {
   // obtain the reponse
   jsonResponse = new JSONObject(response);
   // get the array
   JSONArray persons=jsonResponse.optJSONArray("persons");
   // iterate over the array and retrieve single person instances
   for(int i=0;i&amp;lt;persons.length();i++){
    // get person object
    JSONObject person=persons.getJSONObject(i);
    // get first name
    String firstname=person.optString("firstname");
    // get last name
    String lastname=person.optString("lastname");
    // get the age
    int age=person.optInt("age");

    // construct the object and add it to the arraylist
    Person p=new Person();
    p.firstName=firstname;
    p.lastName=lastname;
    p.age=age;
    arrPersons.add(p);
   }

  } catch (JSONException e) {

   e.printStackTrace();
  }

  return arrPersons;
 }&lt;/pre&gt;&lt;br /&gt;
notice that we used the methods &lt;strong&gt;optJSONArray,optString,optInt&lt;/strong&gt; instead of using &lt;strong&gt;getString,getInt&lt;/strong&gt; because the opt methods return empty strings or zero integers if no elements are found. while the get methods throw an exception if the element is not found.&lt;img src="http://feeds.feedburner.com/~r/LearnAndroid/~4/phZ_8DG5Jts" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://android-pro.blogspot.com/feeds/2054746061157357328/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://android-pro.blogspot.com/2011/07/parsing-json-respone.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/2054746061157357328?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/3614313680693372993/posts/default/2054746061157357328?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/LearnAndroid/~3/phZ_8DG5Jts/parsing-json-respone.html" title="Parsing JSON respone:" /><author><name>Mina Samy</name><uri>https://plus.google.com/106338586848478997991</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="16" height="16" src="http://img2.blogblog.com/img/b16-rounded.gif" /></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1" /><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD" /><feedburner:origLink>http://android-pro.blogspot.com/2011/07/parsing-json-respone.html</feedburner:origLink></entry></feed>
