<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' 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'><id>tag:blogger.com,1999:blog-1218567874649563261</id><updated>2026-08-09T13:38:41.661+05:30</updated><category term="Android"/><category term="JAVA"/><category term="Eclipse"/><category term="Android SDK"/><category term="Mail API"/><category term="Android Controllers"/><category term="Animation"/><category term="Database"/><category term="IO"/><category term="Look and Feels"/><category term="Android Apps"/><category term="Collections"/><category term="Comm API"/><category term="Pattern"/><category term="SWing"/><category term="Ubuntu"/><category term="XML"/><title type='text'>Java Sri Lankan Support</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>49</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-3792575863370971388</id><published>2016-09-21T17:12:00.000+05:30</published><updated>2016-09-21T17:12:18.782+05:30</updated><title type='text'>SMS Notifications Survey</title><content type='html'>&lt;iframe frameborder=&quot;0&quot; height=&quot;4450&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;https://docs.google.com/forms/d/e/1FAIpQLScvhLduLCnsiObjjLvGcEHYgA7apVDyq7Q-Mt7LbH4rnLQ1eA/viewform?embedded=true&quot; width=&quot;650&quot;&gt;Loading...&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/3792575863370971388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2016/09/sms-notifications-survey.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/3792575863370971388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/3792575863370971388'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2016/09/sms-notifications-survey.html' title='SMS Notifications Survey'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-2644759618466717617</id><published>2016-06-14T23:57:00.002+05:30</published><updated>2016-06-15T00:11:02.680+05:30</updated><title type='text'>Free Vehicle, Children &amp; Pet Tracking System </title><content type='html'>&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdCOo8o-onagNH1aHaM5WtTB9ctrr21vMyPWqM2y367alcM2LCzr8GJ4XOUDTtniRZU8StyQIrJl9gHubSicSSeTRQw9W8-rFY15VXKSepkXwzhZmQtlX4TRb1QqGUpwwx7ZJ98_zRcnk/s1600/TrackMe.LK+GPS+Tracking+Server.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;TrackMe GPS Tracking System&quot; border=&quot;0&quot; height=&quot;364&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdCOo8o-onagNH1aHaM5WtTB9ctrr21vMyPWqM2y367alcM2LCzr8GJ4XOUDTtniRZU8StyQIrJl9gHubSicSSeTRQw9W8-rFY15VXKSepkXwzhZmQtlX4TRb1QqGUpwwx7ZJ98_zRcnk/s640/TrackMe.LK+GPS+Tracking+Server.jpg&quot; title=&quot;TrackMe.LK&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;a href=&quot;http://trackme.lk/?utm_source=javasrilankansupport.com&quot; target=&quot;_blank&quot;&gt;TrackMe&lt;/a&gt; is a GPS tracking system designed to track any type of objects but going beyond in ensuring the safety of your beloved ones, finding them whenever you want. Various options are provided free of charge and also at nominal rates.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
TrackMe Server&lt;/h3&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRsxExLhJUtrc5PpLp_lYpKzkjOFWCVYExhpYvX45MVkB-GyroJ75UQrnz5DzK2nGquf5lmVtSdkuX54Owp2vClXfvtn0W1UMcwFPpw-VqgpjNtGLmaaasCw-A2j1oBZKJB427H8yDrYs/s1600/How+GPS+Tracking+Works600.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;TrackMe GPS Tracking Server&quot; border=&quot;0&quot; height=&quot;427&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRsxExLhJUtrc5PpLp_lYpKzkjOFWCVYExhpYvX45MVkB-GyroJ75UQrnz5DzK2nGquf5lmVtSdkuX54Owp2vClXfvtn0W1UMcwFPpw-VqgpjNtGLmaaasCw-A2j1oBZKJB427H8yDrYs/s640/How+GPS+Tracking+Works600.jpg&quot; title=&quot;TrackMe GPS Tracking Server&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;How Global Positioning System tracking works&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
TrackMe serves not only as a simple tool to track objects online, but it can also be a lifesaver. The devices that are integrated with our systems can ensure tracking of almost any object be it vehicles, but also the track Life. Be it tracking of Children or even Pets, our services are very broadly designed to capture and serve all aspects that needs to be considered.&lt;br /&gt;
&lt;br /&gt;
All the tracking devices installed on vehicles will communicate with the &lt;a href=&quot;http://trackmegpsserver.com/?utm_source=javasrilankansupport.com&quot; target=&quot;_blank&quot;&gt;TrackMe server&lt;/a&gt;. The server has the capability and interfaces to communicate with a variety of devices through SMS and GPRS in synchronization.&lt;br /&gt;
&lt;br /&gt;
The server will maintain a registry of tracking devices set for monitoring.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;h3&gt;
Glimpse of TrackMe Features&lt;/h3&gt;
&lt;h4&gt;
&lt;/h4&gt;
&lt;h4&gt;
Location Details in real-time&lt;/h4&gt;
&lt;div&gt;
Map devices location through Mobile Apps and Web portal Monitor location of objects in real time, on the map of your choice!&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Create Geo-fences and routes&lt;/h4&gt;
&lt;div&gt;
Geofence feature allows users to set up geographic boundaries around areas that needs to be specifically monitored.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Push &amp;amp; Email Notifications&lt;/h4&gt;
&lt;div&gt;
Get instant alerts of predefined events: when object enters or exits geo-zone, speeding, SOS alarms, engine on/off etc.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Monitoring devices simultaneously&lt;/h4&gt;
&lt;div&gt;
Monitoring trough the mobile App. Android, iOS and web portal.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Group monitoring&lt;/h4&gt;
&lt;div&gt;
Possibility of several users monitoring the same module through the web portal or smartphone app.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Restful API&lt;/h4&gt;
&lt;div&gt;
TrackMe provides RESTful API for third party integration.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
History &amp;amp; Reports&lt;/h4&gt;
&lt;div&gt;
View past locations&lt;/div&gt;
&lt;div&gt;
Preview and download reports in different formats (XLS, PDF, CSV, TXT).&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Fall detection&lt;/h4&gt;
&lt;div&gt;
Fall detection technology can detect a fall and immediately contact a predefined emergency number, which will send help in a matter of minutes.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h4&gt;
Locate mode&lt;/h4&gt;
&lt;div&gt;
Detect the direction and distance to where your vehicle, child, pet or tracking object is.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Find more details about &amp;nbsp;&lt;a href=&quot;http://trackme.lk/?utm_source=javasrilankansupport.com&quot; target=&quot;_blank&quot;&gt;TrackMe Global Positioning System&lt;/a&gt;&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/2644759618466717617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2016/06/free-gps-vehicle-children-pet-tracking-system.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2644759618466717617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2644759618466717617'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2016/06/free-gps-vehicle-children-pet-tracking-system.html' title='Free Vehicle, Children &amp; Pet Tracking System '/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdCOo8o-onagNH1aHaM5WtTB9ctrr21vMyPWqM2y367alcM2LCzr8GJ4XOUDTtniRZU8StyQIrJl9gHubSicSSeTRQw9W8-rFY15VXKSepkXwzhZmQtlX4TRb1QqGUpwwx7ZJ98_zRcnk/s72-c/TrackMe.LK+GPS+Tracking+Server.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-6602477915462213297</id><published>2016-02-02T08:39:00.001+05:30</published><updated>2016-02-02T08:39:15.932+05:30</updated><title type='text'>Sanjiva Weerawarana&#39;s Blog: Understanding the (Sri Lankan) IT Industry</title><content type='html'>&lt;a href=&quot;http://sanjiva.weerawarana.org/2016/01/understanding-sri-lankan-it-industry.html?spref=bl&quot;&gt;Sanjiva Weerawarana&#39;s Blog: Understanding the (Sri Lankan) IT Industry&lt;/a&gt;: In the last 3+ weeks there&#39;s been war raging in the IT Crowd  in Sri Lanka about the proposed CEPA/ETCA thing : Basically the part of a...</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/6602477915462213297/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2016/02/sanjiva-weerawaranas-blog-understanding.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/6602477915462213297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/6602477915462213297'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2016/02/sanjiva-weerawaranas-blog-understanding.html' title='Sanjiva Weerawarana&#39;s Blog: Understanding the (Sri Lankan) IT Industry'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-4170614361174113323</id><published>2015-12-17T14:31:00.001+05:30</published><updated>2015-12-17T14:31:42.324+05:30</updated><title type='text'>Android, Web, Cloud and Backend and Entrepreneurship Courses</title><content type='html'>&lt;p&gt;Google and Udacity offer you 31 courses that will make your mouth water and your mind dance. Savor one or several of our 31 self-paced online training courses to indulge your curiosity, expand your knowledge, and hone new skills. Choose from Android, Web, Entrepreneurship, or Cloud and Backend tracks. Are you ready?&lt;/p&gt;&lt;br/&gt;&lt;div id=&quot;attachment_433&quot; style=&quot;width: 650px;&quot; class=&quot;wp-caption alignnone&quot;&gt;&lt;a href=&quot;http://androidcodegeeks.com/wp-content/uploads/2015/12/android-courses.png&quot;&gt;&lt;img class=&quot;size-full wp-image-433&quot; src=&quot;http://androidcodegeeks.com/wp-content/uploads/2015/12/android-courses.png&quot; alt=&quot;androidcodegeeks.com&quot; width=&quot;640&quot; height=&quot;360&quot;/&gt;&lt;/a&gt;&lt;br/&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Google and Udacity offer you 31 courses&lt;/p&gt;&lt;br/&gt;&lt;/div&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;h3&gt;Android&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;More and more people around the world are embracing mobile at an increasing pace, whether on their phones, in their cars, at home, and around their wrists. Learn to build apps for them!&lt;/p&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/HpgjfS&quot;&gt;Android For Beginners&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/2hT7Ue&quot;&gt;Developing Android Apps&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/FDkaOs&quot;&gt;Advanced Android&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/w7eO3r&quot;&gt;Material Design for Android Developers&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/VMNFme&quot;&gt;Google Location Services on Android&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/nDvPw9&quot;&gt;Analytics &amp;#38; Tag Manager for Android&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/DbubwX&quot;&gt;Monetize Your Android App with Ads&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/wDWaEC&quot;&gt;Add Google Maps to your Android App&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/X2BLhc&quot;&gt;Add Google Sign-In to your Android Apps&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/ZE4mYQ&quot;&gt;Android Wear Development&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/kklWlR&quot;&gt;Android TV and Google Cast Development&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/fMx1f9&quot;&gt;Android Auto Development&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/7wXAos&quot;&gt;Gradle for Android and Java&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/27i1M9&quot;&gt;Android Performance&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/sEUDZc&quot;&gt;UX Design for Mobile Developers&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;h3&gt;Web&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;Refine your web development skills for mobile. Create fast, fluid user experiences. Deploy for all desktop and mobile devices. Streamline checkout and payment. Learn how to build beautiful, performant, responsive applications for the world&amp;#8217;s largest platform.&lt;/p&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/J3Vnsu&quot;&gt;Web Tooling and Automation&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/ImJ9YN&quot;&gt;Building High Conversion Web Forms&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/jS8Isz&quot;&gt;Browser Rendering Optimization&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/07BoEV&quot;&gt;Responsive Web Design Fundamentals&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/rAAUVW&quot;&gt;Responsive Images&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/OMFg0H&quot;&gt;Web Performance Optimization&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/zKksmr&quot;&gt;Mobile Web Development&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/c92I5u&quot;&gt;HTML5 Game Development&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;h3&gt;Cloud and Backend&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;Does your app need to support more users? (Congratulations!) Do you want to move data handling for an existing app from the device to the cloud? Learn how to take advantage of public cloud infrastructure to support millions of users and terabytes of data.&lt;/p&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/Qi9DJ5&quot;&gt;Firebase Essentials for Android&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/N8HIZp&quot;&gt;Developing Scalable Apps in Python&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/x08iKM&quot;&gt;Developing Scalable Apps in Java&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;h3&gt;Entrepreneurship&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;Start the year with a new start up. That says it all. Take these courses to learn how to do it successfully.&lt;/p&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/0MjZgo&quot;&gt;Product Design&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/rjta3A&quot;&gt;App Monetization&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/rkS1jI&quot;&gt;Rapid Prototyping&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/P7YU5D&quot;&gt;App Marketing&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;a href=&quot;https://goo.gl/UUr4gJ&quot;&gt;Get Your Startup Started&lt;/a&gt;&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;p&gt;And that&amp;#8217;s it. 31 courses that will catapult your skills and make 2016 your best year yet! Happy Holidays!&lt;/p&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;https://androidcodegeeks.com/android-web-cloud-and-backend-and-entrepreneurship-courses/&quot;&gt;Android, Web, Cloud and Backend and Entrepreneurship Courses&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/4170614361174113323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/12/android-web-cloud-and-backend-and.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4170614361174113323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4170614361174113323'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/12/android-web-cloud-and-backend-and.html' title='Android, Web, Cloud and Backend and Entrepreneurship Courses'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-2811480092675461087</id><published>2015-10-14T11:09:00.001+05:30</published><updated>2015-10-14T11:09:07.940+05:30</updated><title type='text'>Android Studio 1.5 Preview 1 Available</title><content type='html'>&lt;p&gt;We&amp;#8217;ve just released 1.5 Preview 1 to the canary channel!&lt;/p&gt;&lt;br/&gt;&lt;div&gt;The memory profiler has a new &amp;#8220;analysis&amp;#8221; feature where it can analyze a heap dump to look for known problems, such as leaked activities. To use this feature, open a heap dump and look for the Analyzer Tasks window on the right:&lt;/div&gt;&lt;br/&gt;&lt;div&gt;&lt;/div&gt;&lt;br/&gt;&lt;div&gt;&lt;br/&gt;&lt;div style=&quot;width: 919px;&quot; class=&quot;wp-caption alignnone&quot;&gt;&lt;img class=&quot;&quot; src=&quot;http://tools.android.com/recent/androidstudio15preview1available/analyzer-tasks.png?attredirects=0&quot; alt=&quot;AndroidStudio Analyzer Tasks window&quot; width=&quot;909&quot; height=&quot;222&quot;/&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Analyzer Tasks window&lt;/p&gt;&lt;br/&gt;&lt;/div&gt;&lt;br/&gt;&lt;/div&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;http://tools.android.com/recent/androidstudio15preview1available&quot;&gt;Android Studio 1.5 Preview 1 Available&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/2811480092675461087/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/android-studio-15-preview-1-available.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2811480092675461087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2811480092675461087'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/android-studio-15-preview-1-available.html' title='Android Studio 1.5 Preview 1 Available'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-4919705421684680353</id><published>2015-10-08T16:47:00.001+05:30</published><updated>2015-10-08T16:47:00.959+05:30</updated><title type='text'>Android app architectures Standard Android MVP and MVVM</title><content type='html'>&lt;h1&gt;Archi&lt;/h1&gt;&lt;br/&gt;&lt;p&gt;This repository showcases and compares different architectural patterns that can be used to build Android apps. The exact same sample app is built three times using the following approaches:&lt;/p&gt;&lt;br/&gt;&lt;p&gt;Standard Android: traditional approach with layouts, Activities/Fragments and Model.&lt;br/&gt;&lt;br/&gt;MVP: Model View Presenter.&lt;br/&gt;&lt;br/&gt;MVVM: Model View ViewModel with data binding.&lt;/p&gt;&lt;br/&gt;&lt;h2&gt;The App&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;The sample app displays a list of GitHub public repositories for a given username. Tapping on one of them will open a repository details screen, where more information about the repo can be found. This screen also shows information about the owner of the repository.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;img class=&quot;aligncenter&quot; src=&quot;https://github.com/ivacf/archi/raw/master/images/archi-screenshots.png&quot; alt=&quot;MVP: Model View Presenter&quot; width=&quot;594&quot; height=&quot;500&quot;/&gt;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;h3&gt;Libraries used&lt;/h3&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;AppCompat, CardView and RecyclerView&lt;/li&gt;&lt;br/&gt;&lt;li&gt;Data Binding (only MVVM)&lt;/li&gt;&lt;br/&gt;&lt;li&gt;RxJava &amp;#38; RxAndroid&lt;/li&gt;&lt;br/&gt;&lt;li&gt;Retrofit 2&lt;/li&gt;&lt;br/&gt;&lt;li&gt;Picasso&lt;/li&gt;&lt;br/&gt;&lt;li&gt;Mockito&lt;/li&gt;&lt;br/&gt;&lt;li&gt;Robolectric&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;h2&gt;Standard Android&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;The &lt;code&gt;/app&lt;/code&gt; directoy contains the implementation that follows the traditional standard Android approach. This is a couple of layout files, two Activities and the model. The model is exactly the same for the three implementations and it contains: &lt;code&gt;Repository&lt;/code&gt;, &lt;code&gt;User&lt;/code&gt; and a retrofit service (&lt;code&gt;GithubService&lt;/code&gt;).&lt;/p&gt;&lt;br/&gt;&lt;p&gt;With this approach, Activities are in charge of calling the &lt;code&gt;GithubService&lt;/code&gt;, processing the data and updating the views. They act kind of like a controller in MVC but with some extra responsibilities that should be part of the view. The problem with this standard architecture is that Activities and Fragments can become quite large and very difficult to tests. Hence why I didn&amp;#8217;t write any unit test for this case.&lt;/p&gt;&lt;br/&gt;&lt;h2&gt;MVP &amp;#8211; Model View Presenter&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;In &lt;code&gt;/app-mvp&lt;/code&gt; you will find the sample app implemented following this pattern. When using mvp, Activities and Fragments become part of the view layer and they delegate most of the work to presenters. Each Activity has a matching presenter that handles accessing the model via the&lt;code&gt;GithubService&lt;/code&gt;. They also notify the Activities when the data is ready to display. Unit testing presenters becomes very easy by mocking the view layer (Activities).&lt;/p&gt;&lt;br/&gt;&lt;h2&gt;MVVM &amp;#8211; Model View ViewModel&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;This pattern has recently started to gain popularity due to the release of the &lt;a href=&quot;https://developer.android.com/tools/data-binding/guide.html&quot;&gt;data binding library&lt;/a&gt;. You will find the implementation in &lt;code&gt;/app-mvvm&lt;/code&gt;. In this case, ViewModels retrieve data from the model when requested from the view via data binding. With this pattern, Activities and Fragments become very lightweight. Moreover, writting unit tests becomes easier because the ViewModels are decoupled form the view.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;a href=&quot;https://github.com/ivacf/archi&quot; target=&quot;_blank&quot;&gt;Fork the repository&lt;/a&gt;&lt;/p&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;https://androidcodegeeks.com/android-app-architectures-standard-android-mvp-and-mvvm/&quot;&gt;Android app architectures Standard Android MVP and MVVM&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/4919705421684680353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/android-app-architectures-standard.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4919705421684680353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4919705421684680353'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/android-app-architectures-standard.html' title='Android app architectures Standard Android MVP and MVVM'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-5897525939548923424</id><published>2015-10-05T13:10:00.001+05:30</published><updated>2015-10-05T13:10:52.032+05:30</updated><title type='text'>Convert Java String to Binary</title><content type='html'>&lt;p&gt;Convert Java String to Binary&lt;/p&gt;&lt;br/&gt;&lt;pre class=&quot;&quot;&gt;public class CodeSnippets &lt;br/&gt; &lt;br/&gt; public static StringBuilder getBinary(String value)&lt;br/&gt; byte[] bytes = value.getBytes();&lt;br/&gt; StringBuilder binary = new StringBuilder();&lt;br/&gt; for (byte b : bytes) &lt;br/&gt; int val = b;&lt;br/&gt; for (int i = 0; i &amp;#60; 8; i++) &lt;br/&gt; binary.append((val &amp;#38; 128) == 0 ? 0 : 1);&lt;br/&gt; val &amp;#60;&amp;#60;= 1;&lt;br/&gt; &lt;br/&gt; &lt;br/&gt; return binary;&lt;br/&gt; &lt;br/&gt;&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;https://androidcodegeeks.com/convert-java-string-to-binary/&quot;&gt;Convert Java String to Binary&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/5897525939548923424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/convert-java-string-to-binary.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/5897525939548923424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/5897525939548923424'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/convert-java-string-to-binary.html' title='Convert Java String to Binary'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-1807434457746738909</id><published>2015-10-02T09:04:00.001+05:30</published><updated>2015-10-02T09:04:12.299+05:30</updated><title type='text'>Android Studio 1.4</title><content type='html'>&lt;p&gt;Today we are releasing the 1.4 update to the Android Studio stable release channel. Most of the work and enhancements for Android Studio 1.4 are under the hood. However we have a handful of new features that we hope you enjoy and integrate into your workflow.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;span class=&quot;embed-youtube&quot; style=&quot;text-align:center; display: block;&quot;&gt;&lt;iframe class=&quot;youtube-player&quot; type=&quot;text/html&quot; width=&quot;980&quot; height=&quot;582&quot; src=&quot;https://www.youtube.com/embed/8e3I-PYJNHg?version=3&amp;#38;rel=1&amp;#38;fs=1&amp;#38;showsearch=0&amp;#38;showinfo=1&amp;#38;iv_load_policy=1&amp;#38;wmode=transparent&quot; frame allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;&lt;/span&gt;&lt;/p&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;http://android-developers.blogspot.com/2015/09/android-studio-14.html&quot;&gt;Android Studio 1.4&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/1807434457746738909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/android-studio-14.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/1807434457746738909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/1807434457746738909'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/10/android-studio-14.html' title='Android Studio 1.4'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/8e3I-PYJNHg/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-7214489295040455318</id><published>2015-09-30T12:19:00.001+05:30</published><updated>2015-09-30T12:19:03.690+05:30</updated><title type='text'>Nexus 6P, Nexus 5X and Pixel C Everything you need to know</title><content type='html'>&lt;p&gt;Nexus 6P, Nexus 5X and Pixel C &amp;#160;Everything you need to know&lt;/p&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;https://www.youtube.com/watch?v=MQ9GDfE3BZg&quot;&gt;Nexus 6P, Nexus 5X and Pixel C Everything you need to know&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/7214489295040455318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/nexus-6p-nexus-5x-and-pixel-c.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/7214489295040455318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/7214489295040455318'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/nexus-6p-nexus-5x-and-pixel-c.html' title='Nexus 6P, Nexus 5X and Pixel C Everything you need to know'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-8079382433044505546</id><published>2015-09-30T00:23:00.001+05:30</published><updated>2015-09-30T00:23:14.960+05:30</updated><title type='text'>How to create anything in Android</title><content type='html'>&lt;h2 class=&quot;h-slim-top&quot;&gt;Course Summary&lt;/h2&gt;&lt;br/&gt;&lt;div class=&quot;pretty-format&quot;&gt;&lt;br/&gt;&lt;p&gt;Here is one important question Android developers ask while making apps: &lt;i&gt;&amp;#8220;How can I do ________ in Android?&amp;#8221;&lt;/i&gt;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;The following are versions of this question that we came across recently:&lt;/p&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;How can I add radio buttons to my app?&lt;/li&gt;&lt;br/&gt;&lt;li&gt;How can I play a sound?&lt;/li&gt;&lt;br/&gt;&lt;li&gt;How can I navigate between multiple screens?&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;p&gt;This course is a collection of such questions and their answers.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;By the end of this course you will have mastered the ability to implement new Android features by reading a blog or article &amp;#8212; this is a critical skill possessed by professional Android developers. As a result, you will also be able to use several User Interface components &amp;#8212; like Toggle Buttons, Menus, Grid View and many more &amp;#8212; that are central to making functional and delightful Android apps.&lt;/p&gt;&lt;br/&gt;&lt;/div&gt;&lt;br/&gt;&lt;p&gt;&lt;a href=&quot;https://www.udacity.com/course/how-to-create-anything-in-android--ud802&quot; target=&quot;_blank&quot;&gt;Start Free Course &amp;#8220;How to create in Android&amp;#8221;&lt;/a&gt;&lt;/p&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;https://androidcodegeeks.com/how-to-create-anything-in-android/&quot;&gt;How to create anything in Android&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/8079382433044505546/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/how-to-create-anything-in-android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/8079382433044505546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/8079382433044505546'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/how-to-create-anything-in-android.html' title='How to create anything in Android'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-1498168698981096114</id><published>2015-09-29T11:52:00.001+05:30</published><updated>2015-09-29T11:52:29.091+05:30</updated><title type='text'>Google Play APK size limit increased to 100MB from 50MB</title><content type='html'>&lt;p&gt;To support the growing number of developers who are building richer apps and games on Google Play, we are increasing the&lt;a href=&quot;https://support.google.com/googleplay/android-developer/answer/113469#apk&quot;&gt;APK file size limit&lt;/a&gt; to 100MB from 50MB. This means developers can publish APKs up to 100MB in size, and users will see a warning only when the app exceeds the 100MB quota and makes use of &lt;a href=&quot;https://developer.android.com/google/play/expansion-files.html&quot;&gt;Expansion Files&lt;/a&gt;. The default update setting for users will continue to be to auto-updating apps over Wi-Fi only, enabling users to access higher quality apps and games while conserving their data usage.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;Even though you can make your app bigger, it doesn&amp;#8217;t always mean you should. Remember to keep in mind the following factors:&lt;/p&gt;&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Mobile data connectivity:&lt;/b&gt; Users around the world have varying mobile data connectivity speeds. Particularly in developing countries, many people are coming online with connections slower than those of users in countries like the U.S. and Japan. Users on a slow connection are less likely to install an app or game that is going to take a long time to download.&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;b&gt;Mobile data caps:&lt;/b&gt; Many mobile networks around the world give users a limited number of MB that they can download each month without incurring additional charges. Users are often wary of downloading large files for fear of exceeding their limits.&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;b&gt;App performance:&lt;/b&gt; Mobile devices have limited RAM and storage space. The larger your app or game, the slower it may run, particularly on older devices.&lt;/li&gt;&lt;br/&gt;&lt;li&gt;&lt;b&gt;Install time:&lt;/b&gt; People want to start using your app or game as quickly as possible after tapping the install button. Longer wait times increase the risk they&amp;#8217;ll give up.&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;br/&gt;&lt;a href=&quot;http://android-developers.blogspot.com/2015/09/support-for-100mb-apks-on-google-play.html&quot;&gt;Google Play APK size limit increased to 100MB from 50MB&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/1498168698981096114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/google-play-apk-size-limit-increased-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/1498168698981096114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/1498168698981096114'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/google-play-apk-size-limit-increased-to.html' title='Google Play APK size limit increased to 100MB from 50MB'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-3333949186314880790</id><published>2015-09-26T13:22:00.001+05:30</published><updated>2015-09-26T13:22:31.016+05:30</updated><title type='text'>Working with Android image library Picasso</title><content type='html'>&lt;p&gt;In this quick tip, we take a brief look at the popular Android image library, Picasso. It&amp;#8217;s a simple and practical library created and maintained by &lt;a href=&quot;http://square.github.io/&quot; target=&quot;_blank&quot; rel=&quot;external&quot;&gt;Square&lt;/a&gt;. It is great for working with images in your Android projects.&lt;/p&gt;&lt;br/&gt;&lt;div style=&quot;width: 810px;&quot; class=&quot;wp-caption alignnone&quot;&gt;&lt;img class=&quot;&quot; src=&quot;http://square.github.io/picasso/static/sample.png&quot; alt=&quot;Working with Picasso - AndroidCodeGeeks.com&quot; width=&quot;800&quot; height=&quot;384&quot;/&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Working with Android image library Picasso &amp;#8211; AndroidCodeGeeks.com&lt;/p&gt;&lt;br/&gt;&lt;/div&gt;&lt;br/&gt;&lt;h2 class=&quot;nolinks&quot;&gt;&lt;span class=&quot;sectionnum&quot;&gt;1.&lt;/span&gt; Introduction&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;&lt;a href=&quot;http://square.github.io/picasso/&quot; target=&quot;_blank&quot; rel=&quot;external&quot;&gt;Picasso&lt;/a&gt; is an image&amp;#160;library for Android. It&amp;#8217;s&amp;#160;created and maintained by &lt;a href=&quot;http://square.github.io/&quot; target=&quot;_blank&quot; rel=&quot;external&quot;&gt;Square&lt;/a&gt;, and&amp;#160;caters to image loading and processing. It simplifies the process of displaying images from external locations. In many cases only a few lines of code is required to implement this neat library.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;Picasso shines for displaying remote images. The library handles every stage of the process, from the initial HTTP request to the caching of the image. This can be quite verbose when writing code to perform these actions yourself.&amp;#160;In this quick tip, we look at a few common use cases.&lt;/p&gt;&lt;br/&gt;&lt;h2 class=&quot;nolinks&quot;&gt;&lt;span class=&quot;sectionnum&quot;&gt;2.&lt;/span&gt; Installation&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;Start by&amp;#160;downloading the JAR file from&amp;#160;&lt;a href=&quot;http://square.github.io/picasso/&quot; target=&quot;_blank&quot; rel=&quot;external&quot;&gt;Picasso&amp;#8217;s website&lt;/a&gt;. Installing is done the usual manner. If you need help with this step, then take a look at &lt;a href=&quot;http://code.tutsplus.com/tutorials/android-essentials-adding-jar-files-to-android-projects--mobile-9788&quot; target=&quot;_blank&quot; rel=&quot;external&quot;&gt;this tutorial&lt;/a&gt; by Shane Condor and Lauren Darcey.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;If you&amp;#8217;re using Android Studio, then you can add&lt;/p&gt;&lt;br/&gt;&lt;pre&gt;compile &#39;com.squareup.picasso:picasso:2.3.3&#39;&lt;/pre&gt;&lt;br/&gt;&lt;p&gt;to the &lt;b&gt;build.gradle&lt;/b&gt;&lt;i&gt; &lt;/i&gt;file in the&amp;#160;dependency section.&lt;/p&gt;&lt;br/&gt;&lt;h2 class=&quot;nolinks&quot;&gt;3. Hands-On&lt;/h2&gt;&lt;br/&gt;&lt;h3 class=&quot;nolinks&quot;&gt;Step 1:&amp;#160;Create a new project&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;Create a new project in your IDE of choice. Make sure to select a blank Activity&amp;#160;if you&amp;#8217;re&amp;#160;using Android Studio.&lt;/p&gt;&lt;br/&gt;&lt;h3 class=&quot;nolinks&quot;&gt;Step 2:&amp;#160;Image Widget&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;Open the layout file for the main Activity.&amp;#160;We need to add an &lt;code class=&quot;inline&quot;&gt;ImageView&lt;/code&gt; to the layout. It doesn&amp;#8217;t need to be fancy. The following code snippet shows you what I mean.&lt;/p&gt;&lt;br/&gt;&lt;pre class=&quot;&quot; lang=&quot;xml&quot;&gt;&amp;#60;ImageView&lt;br/&gt; android:layout_width=&quot;wrap_content&quot;&lt;br/&gt; android:layout_height=&quot;wrap_content&quot;&lt;br/&gt; android:id=&quot;@+id/imageView&quot;&lt;br/&gt; android:layout_alignParentTop=&quot;true&quot;&lt;br/&gt; android:layout_centerHorizontal=&quot;true&quot; /&amp;#62;&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;h3 class=&quot;nolinks&quot;&gt;Step 3: Add Picasso&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;Navigate to the main Activity file. Add the following code block to the onCreate method.&lt;/p&gt;&lt;br/&gt;&lt;pre lang=&quot;java&quot;&gt;ImageView imageView = (ImageView) findViewById(R.id.imageView);&lt;br/&gt;Picasso.with(this)&lt;br/&gt;.load(&quot;https://cms-assets.tutsplus.com/uploads/users/21/posts/19431/featured_image/CodeFeature.jpg&quot;)&lt;br/&gt;.into(imageView);&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;p&gt;In the first line, we get a reference to the&amp;#160;&lt;em&gt;ImageView&lt;/em&gt;&amp;#160;instance in the layout file. We then load an image into the image view using the&amp;#160;Picasso library. We first specify the context by calling &lt;em&gt;with&lt;/em&gt; and passing in the context. We then call the &lt;em&gt;load&lt;/em&gt; method and supply it with the location of the image, a URL in this case. Finally, we tell Picasso where it should display the image when it&amp;#8217;s fetched by calling &lt;em&gt;into&lt;/em&gt;&amp;#160;and pass in the &lt;em&gt;imageView&lt;/em&gt; object.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;Your IDE will ask you to import the Picasso library. However,&amp;#160;to do this manually add the following import statement at the top of the Activity class.&lt;/p&gt;&lt;br/&gt;&lt;pre lang=&quot;java&quot;&gt;import com.squareup.picasso.Picasso;&lt;/pre&gt;&lt;br/&gt;&lt;h3 class=&quot;nolinks&quot;&gt;Step 4:&amp;#160;Permissions&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;For Picasso to do its work, make sure to add&amp;#160;&lt;code class=&quot;inline&quot;&gt;&amp;#60;uses-permission android:name=&quot;android.permission.INTERNET&quot; /&amp;#62;&lt;/code&gt; to your project&amp;#8217;s manifest.&lt;/p&gt;&lt;br/&gt;&lt;h3 class=&quot;nolinks&quot;&gt;Step 5:&amp;#160;Build and Run&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;That&amp;#8217;s pretty much it. If you build and run the&amp;#160;application,&amp;#160;you should see the image load on the screen.&lt;/p&gt;&lt;br/&gt;&lt;h2 class=&quot;nolinks&quot;&gt;4. More Examples&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;Picasso has much more tricks up its sleeve. In the following example, we use Picasso to fetch a remote image and&amp;#160;resize it before displaying it in an image view.&lt;/p&gt;&lt;br/&gt;&lt;pre lang=&quot;java&quot;&gt;Picasso.with(this)&lt;br/&gt; .load(https://cms-assets.tutsplus.com/uploads/users/21/posts/19431/featured_image/CodeFeature.jpg)&lt;br/&gt; .resize(100, 100)&lt;br/&gt; .into(imageView)&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;p&gt;Picasso also supports transformations, such as rotation. In the next code snippet, we fetch a remote image and rotate it 180 degrees before displaying it in an image view.&lt;/p&gt;&lt;br/&gt;&lt;pre lang=&quot;java&quot;&gt;Picasso.with(this)&lt;br/&gt; .load(&quot;https://cms-assets.tutsplus.com/uploads/users/21/posts/19431/featured_image/CodeFeature.jpg&quot;)&lt;br/&gt; .rotate(180)&lt;br/&gt; .into(imageView);&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;p&gt;If your application&amp;#160;relies on remote assets, then it&amp;#8217;s important to add a fallback in the form of a placeholder image. The placeholder image is shown&amp;#160;immediately and replaced by the remote image when Picasso has finished fetching it.&lt;/p&gt;&lt;br/&gt;&lt;pre lang=&quot;java&quot;&gt;Picasso.with(this)&lt;br/&gt; .load(https://cms-assets.tutsplus.com/uploads/users/21/posts/19431/featured_image/CodeFeature.jpg)&lt;br/&gt; .placeholder(R.drawable.image_name)&lt;br/&gt; .into(imageView);&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;p&gt;Picasso supports&amp;#160;two types of placeholder images. We already saw how the&lt;code class=&quot;inline&quot;&gt;placeholder&lt;/code&gt; method works, but there&amp;#8217;s also an &lt;code class=&quot;inline&quot;&gt;error&lt;/code&gt; method that accepts a placeholder image. Picasso will try to download the remote image three times and display the error placeholder image if it was unable to fetch the remote asset.&lt;/p&gt;&lt;br/&gt;&lt;pre lang=&#39;&quot;java&#39; class=&quot;&quot;&gt;Picasso.with(this)&lt;br/&gt; .load(https://cms-assets.tutsplus.com/uploads/users/21/posts/19431/featured_image/CodeFeature.jpg)&lt;br/&gt; .error(R.drawable.image_name)&lt;br/&gt; .into(imageView);&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;p&gt;Note that you can combine the &lt;code class=&quot;inline&quot;&gt;placeholder&lt;/code&gt; and &lt;code class=&quot;inline&quot;&gt;error&lt;/code&gt; methods as shown in the following code block.&lt;/p&gt;&lt;br/&gt;&lt;pre lang=&quot;java&quot; class=&quot;&quot;&gt;Picasso.with(this)&lt;br/&gt; .load(https://cms-assets.tutsplus.com/uploads/users/21/posts/19431/featured_image/CodeFeature.jpg)&lt;br/&gt; .placeholder(R.drawable.image_name_default)&lt;br/&gt; .error(R.drawable.image_name_error)&lt;br/&gt; .into(imageView);&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;h3 class=&quot;nolinks&quot;&gt;Conclusion&lt;/h3&gt;&lt;br/&gt;&lt;p&gt;With Picasso being so simple to use, it&amp;#8217;s definitely worth thirty minutes of your time. If you&amp;#8217;re creating an app&amp;#160;that frequently loads images, then Picasso could well make your life that little bit simpler.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;a href=&quot;http://code.tutsplus.com/tutorials/android-sdk-working-with-picasso--cms-22149&quot; target=&quot;_blank&quot;&gt;Source&amp;#160;&lt;/a&gt;&lt;/p&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;https://androidcodegeeks.com/working-with-android-image-library-picasso/&quot;&gt;Working with Android image library Picasso&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/3333949186314880790/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/working-with-android-image-library.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/3333949186314880790'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/3333949186314880790'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/working-with-android-image-library.html' title='Working with Android image library Picasso'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-2527332246616635810</id><published>2015-09-20T02:16:00.001+05:30</published><updated>2015-09-20T02:16:05.993+05:30</updated><title type='text'>Google Maps Android API Lite Mode Example</title><content type='html'>&lt;h1&gt;Lite Mode&lt;/h1&gt;&lt;br/&gt;&lt;p&gt;The Google Maps Android API can serve a static image as a &amp;#8216;lite mode&amp;#8217; map.&lt;/p&gt;&lt;br/&gt;&lt;h2 id=&quot;overview_of_lite_mode&quot;&gt;Overview of lite mode&lt;/h2&gt;&lt;br/&gt;&lt;p&gt;A lite mode map is a bitmap image of a map at a specified location and zoom level. Lite mode supports all of the map types (normal, hybrid, satellite, terrain) and a subset of the functionality supplied by the full API. Lite mode is useful when you want to provide a number of maps in a stream, or a map that is too small to support meaningful interaction.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;Users viewing the map cannot zoom or pan the map. Icons on the map give users access to viewing the map in the Google Maps mobile app and requesting directions.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;span class=&quot;embed-youtube&quot; style=&quot;text-align:center; display: block;&quot;&gt;&lt;iframe class=&quot;youtube-player&quot; type=&quot;text/html&quot; width=&quot;980&quot; height=&quot;582&quot; src=&quot;http://www.youtube.com/embed/N0N1Xkc_1pU?version=3&amp;#38;rel=1&amp;#38;fs=1&amp;#38;showsearch=0&amp;#38;showinfo=1&amp;#38;iv_load_policy=1&amp;#38;wmode=transparent&quot; frame allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;&lt;/span&gt;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/androidcodegeeks/android-map_list&quot; target=&quot;_blank&quot;&gt;Find&amp;#160;Google Maps Android API Lite Mode Example on GitHub&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;br/&gt;&lt;div style=&quot;width: 351px;&quot; class=&quot;wp-caption alignleft&quot;&gt;&lt;img class=&quot;&quot; src=&quot;https://raw.githubusercontent.com/androidcodegeeks/android-map_list/master/images/n5_list.png&quot; alt=&quot;Google Maps API &quot; width=&quot;341&quot; height=&quot;606&quot;/&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Google Maps API &amp;#8220;Lite Mode&amp;#8221;&lt;/p&gt;&lt;br/&gt;&lt;/div&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br/&gt; &lt;br/&gt;&lt;a href=&quot;http://androidcodegeeks.com/google-maps-android-api-lite-mode-example/&quot;&gt;Google Maps Android API Lite Mode Example&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/2527332246616635810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/google-maps-android-api-lite-mode.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2527332246616635810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2527332246616635810'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/google-maps-android-api-lite-mode.html' title='Google Maps Android API Lite Mode Example'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/N0N1Xkc_1pU/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-2715717815124870522</id><published>2015-09-18T15:18:00.001+05:30</published><updated>2015-09-18T15:26:51.244+05:30</updated><title type='text'>Material Design Snackbar using the design support library</title><content type='html'>&lt;a href=&quot;https://androidbycode.wordpress.com/2015/06/06/material-design-snackbar-using-the-design-support-library/&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone size-full&quot; src=&quot;https://androidbycode.files.wordpress.com/2015/06/snackbar_color.png?w=500&amp;amp;h=281&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
A Snackbar is a lightweight material design method for providing feedback to a user, while optionally providing an action to the user. They are displayed on the screen until a specified interval has passed, the user swipes to dismiss them, or when the user interacts with another part of the screen. Think of it as a modern take on the Android Toast.&lt;br /&gt;
&lt;br /&gt;
This week at Google I/O 2015 the Android Design Support Library was released including a Snackbar implementation. Before now implementing and following the material guidelines for a Snackbar was left to the developer. A few third party libraries were released to make developers lives easier, but now official support for Snackbar has been introduced to make it easier than ever to add a Snackbar to your Android app.
&lt;br /&gt;
&lt;br /&gt;
Source: &lt;em&gt;&lt;a href=&quot;https://androidbycode.wordpress.com/2015/06/06/material-design-snackbar-using-the-design-support-library/&quot;&gt;Material Design Snackbar using the design support library&amp;nbsp;&lt;/a&gt;&lt;/em&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://androidcodegeeks.com/material-design-snackbar-using-the-design-support-library/&quot;&gt;Material Design Snackbar using the design support library&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/2715717815124870522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/material-design-snackbar-using-design.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2715717815124870522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2715717815124870522'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/09/material-design-snackbar-using-design.html' title='Material Design Snackbar using the design support library'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-5374457379868308021</id><published>2015-07-16T10:00:00.001+05:30</published><updated>2015-07-16T10:00:37.973+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><title type='text'>AndroidCodeGeeks | The Android Knowledge Base</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;a href=&quot;http://androidcodegeeks.com/&quot;&gt;AndroidCodeGeeks.com&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1C9R4X3C7P_fAF1pq939Pn7UCVuZks3eWjqlEjPnRcVc71smRiJkf-JMOYOgsd8BdiPNV1bsSa1XfSoQhnqciNZKxW7lBhnBUUzMLVSaUMhtX1Gec_o97HVl8qgXbdQw6ORo29NGOM5A/s1600/AndroidCodeGeeks.com-TheAndroidKnowledgeBase.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;235&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1C9R4X3C7P_fAF1pq939Pn7UCVuZks3eWjqlEjPnRcVc71smRiJkf-JMOYOgsd8BdiPNV1bsSa1XfSoQhnqciNZKxW7lBhnBUUzMLVSaUMhtX1Gec_o97HVl8qgXbdQw6ORo29NGOM5A/s640/AndroidCodeGeeks.com-TheAndroidKnowledgeBase.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Android Code Geeks&lt;/b&gt; is knowledge base which maintain categorize android tutorials which will help android developers to find the best articles,videos and examples.&lt;br /&gt;
&lt;br /&gt;
Website :&amp;nbsp;&lt;a href=&quot;http://androidcodegeeks.com/&quot; style=&quot;text-align: center;&quot;&gt;AndroidCodeGeeks.com&lt;/a&gt;&lt;br /&gt;
Twitter :&amp;nbsp;&lt;a href=&quot;https://twitter.com/androidcodegeek&quot; target=&quot;_blank&quot;&gt;@AndroidCodeGeek&lt;/a&gt;&lt;br /&gt;
FB :&amp;nbsp;&lt;a href=&quot;https://www.facebook.com/androidcodegeeks&quot; target=&quot;_blank&quot;&gt;AndroidCodeGeeks on Facebook &lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/5374457379868308021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/07/androidcodegeeks-android-knowledge-base.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/5374457379868308021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/5374457379868308021'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/07/androidcodegeeks-android-knowledge-base.html' title='AndroidCodeGeeks | The Android Knowledge Base'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1C9R4X3C7P_fAF1pq939Pn7UCVuZks3eWjqlEjPnRcVc71smRiJkf-JMOYOgsd8BdiPNV1bsSa1XfSoQhnqciNZKxW7lBhnBUUzMLVSaUMhtX1Gec_o97HVl8qgXbdQw6ORo29NGOM5A/s72-c/AndroidCodeGeeks.com-TheAndroidKnowledgeBase.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-5971363645168874118</id><published>2015-01-29T02:44:00.001+05:30</published><updated>2015-01-29T02:44:40.384+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Android SDK"/><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/><title type='text'>Android-Libs.com for Android Developers</title><content type='html'>&lt;div style=&quot;background-color: white; border: 0px; box-sizing: border-box; color: #4d4f51; font-family: Helvetica, Arial, sans-serif; font-size: 16px; font-stretch: inherit; line-height: 24px; margin-bottom: 30px; padding: 0px; vertical-align: baseline;&quot;&gt;
Android developers gain a lot of advantages from working on a platform with a wide variety of libraries, open source projects, and other resources to help get their work to the finish line. Unfortunately, if a problem can’t be solved by checking out the SDK samples or reading a few dozen StackOverflow questions, it can be pretty hard to find good alternatives when they are most needed. Before giving up on the tricky problems, or possibly before attempting them, check out&amp;nbsp;&lt;strong style=&quot;border: 0px; box-sizing: border-box; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;a href=&quot;http://android-libs.com/&quot;&gt;Android-Libs.com&lt;/a&gt;&lt;/strong&gt;&amp;nbsp;– a registry of open source code, libraries, handy websites, utilities, and other tools that may be useful to Android developers of all types.&lt;/div&gt;
&lt;div style=&quot;background-color: white; border: 0px; box-sizing: border-box; color: #4d4f51; font-family: Helvetica, Arial, sans-serif; font-size: 16px; font-stretch: inherit; line-height: 24px; margin-bottom: 30px; padding: 0px; vertical-align: baseline;&quot;&gt;
Most entries link back to Github project pages with embedded counters for the number of open issues, forks, watchers, and stars. Beyond these statistics, most resources also include a short description, minimum API level (if relevant), a screenshot, a Gradle compile line to include libraries, and a few other details. Finally, everything has been sorted into a pretty lengthy list of categories for easy browsing, and there is a search box that queries project titles and descriptions.&lt;/div&gt;
&lt;div style=&quot;background-color: white; border: 0px; box-sizing: border-box; color: #4d4f51; font-family: Helvetica, Arial, sans-serif; font-size: 16px; font-stretch: inherit; line-height: 24px; margin-bottom: 30px; padding: 0px; vertical-align: baseline;&quot;&gt;
If you’re looking for a library or shortcut to get a certain feature working right out of the gate, or trying to find a good solution after spending hours running into a wall, take a look at Android-Libs. It’s always great to see another helpful resource for the Android development community. The site is even open source on Github, in case there is something useful to learn from checking out the code.&lt;/div&gt;
&lt;div style=&quot;background-color: white; border: 0px; box-sizing: border-box; color: #4d4f51; font-family: Helvetica, Arial, sans-serif; font-size: 16px; font-stretch: inherit; line-height: 24px; margin-bottom: 30px; padding: 0px; vertical-align: baseline;&quot;&gt;
The registry is updated regularly, but most of the activity is also published to an&amp;nbsp;&lt;a class=&quot;external&quot; href=&quot;http://android-libs.com/rss&quot; rel=&quot;nofollow&quot; style=&quot;border: 0px; box-sizing: border-box; color: #96999c; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration: none; vertical-align: baseline;&quot; target=&quot;_blank&quot;&gt;RSS feed&lt;/a&gt;&amp;nbsp;and a custom&amp;nbsp;&lt;a class=&quot;external&quot; href=&quot;https://www.pushbullet.com/channel?tag=android-libs&quot; rel=&quot;nofollow&quot; style=&quot;border: 0px; box-sizing: border-box; color: #96999c; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration: none; vertical-align: baseline;&quot; target=&quot;_blank&quot;&gt;PushBullet channel&lt;/a&gt;, so it&#39;s easy to see when new additions make it to the list. It&#39;s definitely worth checking out Android-Libs.com and bookmarking it for the future.&lt;/div&gt;
&lt;div style=&quot;background-color: white; border: 0px; box-sizing: border-box; color: #4d4f51; font-family: Helvetica, Arial, sans-serif; font-size: 16px; font-stretch: inherit; line-height: 24px; margin-bottom: 30px; padding: 0px; vertical-align: baseline;&quot;&gt;
&lt;em style=&quot;border: 0px; box-sizing: border-box; font-family: inherit; font-stretch: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;&quot;&gt;&lt;a class=&quot;external&quot; href=&quot;http://android-libs.com/&quot; rel=&quot;nofollow&quot; style=&quot;border: 0px; box-sizing: border-box; color: #96999c; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration: none; vertical-align: baseline;&quot; target=&quot;_blank&quot;&gt;android-libs.com&lt;/a&gt;&lt;/em&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/5971363645168874118/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/01/android-libscom-for-android-developers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/5971363645168874118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/5971363645168874118'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2015/01/android-libscom-for-android-developers.html' title='Android-Libs.com for Android Developers'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-4244863584760402658</id><published>2014-03-08T12:19:00.001+05:30</published><updated>2014-12-15T14:39:19.301+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Android Controllers"/><title type='text'>Android Libs Org</title><content type='html'>&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-nSZVlRyqqb8dBbCVbCs5FoeuhlAwY67SVsA0vgclOOR67OhqUZeP5TlpaegOKcVFa7gWEWMyJMSwu-CyUYkjSf-VIAJFablf_P6el6OwIu2GgUCyNXWq5Zzv_CQ7eyRRaz1lmbMgPEU/s1600/androidlibsorg.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Android Libs | Android Libs is a place to gather all open source Android UI Views, Android Libraries, Android Tools and Plugins&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-nSZVlRyqqb8dBbCVbCs5FoeuhlAwY67SVsA0vgclOOR67OhqUZeP5TlpaegOKcVFa7gWEWMyJMSwu-CyUYkjSf-VIAJFablf_P6el6OwIu2GgUCyNXWq5Zzv_CQ7eyRRaz1lmbMgPEU/s1600/androidlibsorg.png&quot; height=&quot;320&quot; href=&quot;http://androidlibs.org/&quot; title=&quot;Android Libs Org &quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;h3&gt;
&lt;a href=&quot;http://androidlibs.org/&quot; target=&quot;_blank&quot;&gt;Android Libs Org&lt;/a&gt;&lt;/h3&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
Android Libs Org | Android Libs Org is a place to gather all open source Android UI Views, Android Libraries, Android Tools and Plugins&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Android Libs Org will help you to find the&amp;nbsp;&amp;nbsp;UI Views, Libraries, Tools and Plugins.&lt;br /&gt;
&lt;br /&gt;
If you found a good Android Library do not forget to contact &amp;nbsp;Android Libs Org and let them know to update it. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://androidlibs.org/&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;Android Libs Org | Android Libs Org is a place to gather all open source Android UI Views, Android Libraries, Android Tools and Plugins&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0Scxq1sWFARNlu6pmcWOLEmieY-eDPPZt_4SA0M-9971HvU2rXRccshE0BotudK3mjPaWTAX_TGmDfaBw95rkgxe5KlO6StlU3IhZ-h1rGUf26JMMBCj2vM-BHqDIuF3YZwnV3aJw9Ok/s1600/Android+libs.png&quot; title=&quot;Android Libs Org&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
&lt;b&gt;&lt;span style=&quot;color: red;&quot;&gt;&lt;a href=&quot;https://www.indiegogo.com/projects/androidlibs-org&quot; target=&quot;_blank&quot;&gt;Contribute to AndroidLibs.Org&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;iframe frameborder=&quot;0&quot; height=&quot;445px&quot; scrolling=&quot;no&quot; src=&quot;https://www.indiegogo.com/project/androidlibs-org/embedded/9289287&quot; width=&quot;222px&quot;&gt;&lt;/iframe&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/4244863584760402658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2014/03/android-libs-org.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4244863584760402658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4244863584760402658'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2014/03/android-libs-org.html' title='Android Libs Org'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-nSZVlRyqqb8dBbCVbCs5FoeuhlAwY67SVsA0vgclOOR67OhqUZeP5TlpaegOKcVFa7gWEWMyJMSwu-CyUYkjSf-VIAJFablf_P6el6OwIu2GgUCyNXWq5Zzv_CQ7eyRRaz1lmbMgPEU/s72-c/androidlibsorg.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-3143814888890451739</id><published>2014-01-10T10:59:00.000+05:30</published><updated>2014-01-10T11:35:09.554+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><title type='text'>Android ScrollView with GestureDetector</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;b&gt;The implementation of Android GestureDetector with ScrollView&amp;nbsp;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh-sRD3R2o-Ut4GJS2lmx-aE7yGDNSue5hoVsBjIYLF-fy30S0pw9AUsqd2sKtM0lHVlpcHEwyBqBV-18OkhElkupgOcrk725y3xUDHwe1NHDF9TzSD2KONRye765-H-ZniawHVij3NMI/s1600/Android_ScrollView_GestureDetector_javasrilankansupport.com.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh-sRD3R2o-Ut4GJS2lmx-aE7yGDNSue5hoVsBjIYLF-fy30S0pw9AUsqd2sKtM0lHVlpcHEwyBqBV-18OkhElkupgOcrk725y3xUDHwe1NHDF9TzSD2KONRye765-H-ZniawHVij3NMI/s1600/Android_ScrollView_GestureDetector_javasrilankansupport.com.png&quot; height=&quot;451&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;b&gt;ScrollLayoutActivity&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;pre class=&quot;brush:java&quot;&gt;import android.os.Bundle;
import android.app.Activity;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.GestureDetector;
import android.view.GestureDetector.SimpleOnGestureListener;
import android.view.MotionEvent;
import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.Toast;

public class ScrollLayoutActivity extends Activity {

 private static String TAG = ScrollLayoutActivity.class.getSimpleName();

 private LinearLayout mTopLayout;
 private LinearLayout mMiddleLayout;
 private LinearLayout mBottomLayout;

 private ScrollView mScrollView;

 private boolean possitionTop;
 private boolean possitionMiddle = true;

 int mLayoutHeight;
 float mDeviceHeight;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_testlayouts);

  DisplayMetrics displayMetrics = new DisplayMetrics();
  getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);

  // final float height=displayMetrics.heightPixels/displayMetrics.xdpi;

  // device height in pixels
  mDeviceHeight = displayMetrics.heightPixels;
  mLayoutHeight = (int) mDeviceHeight / 3;

  mScrollView = (ScrollView) findViewById(R.id.scrv);

  mTopLayout = (LinearLayout) findViewById(R.id.top);
  mMiddleLayout = (LinearLayout) findViewById(R.id.middle);
  mBottomLayout = (LinearLayout) findViewById(R.id.bottom);

  mTopLayout.setLayoutParams(new LinearLayout.LayoutParams(mTopLayout
    .getLayoutParams().width, mLayoutHeight));
  mBottomLayout.setLayoutParams(new LinearLayout.LayoutParams(
    mBottomLayout.getLayoutParams().width, mLayoutHeight));
  mMiddleLayout.setLayoutParams(new LinearLayout.LayoutParams(
    mMiddleLayout.getLayoutParams().width, (int) mDeviceHeight));

  mScrollView.setHorizontalFadingEdgeEnabled(false);
  mScrollView.setVerticalFadingEdgeEnabled(false);
  mScrollView.post(new Runnable() {
   public void run() {
    mScrollView.scrollTo(0, mLayoutHeight);
   }
  });

  // findViewById(R.id.button).setOnClickListener(new
  // View.OnClickListener() {
  //
  // @Override
  // public void onClick(View v) {
  // Toast.makeText(ScrollLayoutActivity.this, &quot;height : &quot; +
  // mDeviceHeight, Toast.LENGTH_SHORT).show();
  // }
  // });

  Toast.makeText(this, &quot;Device Height : &quot; + mDeviceHeight,
    Toast.LENGTH_SHORT).show();

 }

 public boolean dispatchTouchEvent(MotionEvent ev) {
  return mGestureDetector.onTouchEvent(ev);
 }

 SimpleOnGestureListener simpleOnGestureListener = new SimpleOnGestureListener() {
  @Override
  public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
    float velocityY) {
   String swipe = &quot;&quot;;
   float sensitvity = 100;

   if ((e1.getX() - e2.getX()) &amp;gt; sensitvity) {
    swipe += &quot;Swipe Left\n&quot;;
   } else if ((e2.getX() - e1.getX()) &amp;gt; sensitvity) {
    swipe += &quot;Swipe Right\n&quot;;
   } else {
    swipe += &quot;\n&quot;;
   }

   if ((e1.getY() - e2.getY()) &amp;gt; sensitvity) {
    swipe += &quot;Swipe Up\n&quot;;
    if (!possitionMiddle &amp;amp;&amp;amp; possitionTop) {
     mScrollView.scrollBy(0, mLayoutHeight);
     possitionTop = false;
     possitionMiddle = true;
    } else if (possitionMiddle &amp;amp;&amp;amp; !possitionTop) {
     mScrollView.fullScroll(ScrollView.FOCUS_DOWN);
     possitionTop = false;
     possitionMiddle = false;
    }
   } else if ((e2.getY() - e1.getY()) &amp;gt; sensitvity) {
    swipe += &quot;Swipe Down\n&quot;;
    if (possitionMiddle &amp;amp;&amp;amp; !possitionTop) {
     mScrollView.fullScroll(ScrollView.FOCUS_UP);
     possitionTop = true;
     possitionMiddle = false;
    }
    if (!possitionMiddle &amp;amp;&amp;amp; !possitionTop) {
     mScrollView
       .scrollTo(mScrollView.getBottom(), mLayoutHeight);
     possitionTop = false;
     possitionMiddle = true;
    }
   } else {
    swipe += &quot;\n&quot;;
   }
   Log.d(TAG, swipe);
   return super.onFling(e1, e2, velocityX, velocityY);
  }

 };

 GestureDetector mGestureDetector = new GestureDetector(
   simpleOnGestureListener);
}
&lt;/pre&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;activity_scroll_layout.xml&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush:xml&quot;&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;ScrollView xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    android:id=&quot;@+id/scrv&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;fill_parent&quot;
    android:fillViewport=&quot;true&quot;
    android:scrollbars=&quot;none&quot; &amp;gt;

    &amp;lt;LinearLayout
        android:id=&quot;@+id/container2&quot;
        android:layout_width=&quot;match_parent&quot;
        android:layout_height=&quot;fill_parent&quot;
        android:background=&quot;#1E1E1E&quot;
        android:baselineAligned=&quot;false&quot;
        android:orientation=&quot;vertical&quot; &amp;gt;

        &amp;lt;LinearLayout
            android:id=&quot;@+id/top&quot;
            android:layout_width=&quot;match_parent&quot;
            android:layout_height=&quot;100dp&quot;
            android:background=&quot;@android:color/black&quot;
            android:baselineAligned=&quot;false&quot;
            android:orientation=&quot;vertical&quot; &amp;gt;
        &amp;lt;/LinearLayout&amp;gt;

        &amp;lt;LinearLayout
            android:id=&quot;@+id/middle&quot;
            android:layout_width=&quot;match_parent&quot;
            android:layout_height=&quot;100dp&quot;
            android:background=&quot;@android:color/white&quot;
            android:baselineAligned=&quot;false&quot;
            android:orientation=&quot;vertical&quot; &amp;gt;

            &amp;lt;Button
                android:id=&quot;@+id/button&quot;
                style=&quot;?android:attr/buttonStyleSmall&quot;
                android:layout_width=&quot;wrap_content&quot;
                android:layout_height=&quot;wrap_content&quot;
                android:text=&quot;Button&quot; /&amp;gt;
        &amp;lt;/LinearLayout&amp;gt;

        &amp;lt;LinearLayout
            android:id=&quot;@+id/bottom&quot;
            android:layout_width=&quot;match_parent&quot;
            android:layout_height=&quot;200dp&quot;
            android:background=&quot;@android:color/darker_gray&quot;
            android:baselineAligned=&quot;false&quot;
            android:orientation=&quot;vertical&quot; &amp;gt;
        &amp;lt;/LinearLayout&amp;gt;
    &amp;lt;/LinearLayout&amp;gt;

&amp;lt;/ScrollView&amp;gt;
&lt;/pre&gt;
&lt;b&gt;&lt;br /&gt;&lt;/b&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/3143814888890451739/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2014/01/android-scrollview-with-gesturedetector.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/3143814888890451739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/3143814888890451739'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2014/01/android-scrollview-with-gesturedetector.html' title='Android ScrollView with GestureDetector'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhh-sRD3R2o-Ut4GJS2lmx-aE7yGDNSue5hoVsBjIYLF-fy30S0pw9AUsqd2sKtM0lHVlpcHEwyBqBV-18OkhElkupgOcrk725y3xUDHwe1NHDF9TzSD2KONRye765-H-ZniawHVij3NMI/s72-c/Android_ScrollView_GestureDetector_javasrilankansupport.com.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-4537698579743734143</id><published>2013-12-10T10:51:00.000+05:30</published><updated>2014-02-08T10:00:03.798+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Android Apps"/><title type='text'>Sith Browser</title><content type='html'>&lt;h2&gt;
Sinhala Android web Browser | Tamil Android web Browser&amp;nbsp;&lt;/h2&gt;
&lt;h2&gt;
&lt;/h2&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsAeqoSGiDePnBPzAZEOhErpBLdV8jyWp_GyWF4-lt1UBiiYkTC-tnm6X7ZHe3ODrSKim4U_RUIdOvHrlgs4ZDFeabKx9MNl2me-VyZKv0gfb8ox4tVVjgWNpATGgqDaBhFsdMJ1eqync/s1600/device-2013-12-04-180929.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img alt=&quot;Sinhala Android web browser&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsAeqoSGiDePnBPzAZEOhErpBLdV8jyWp_GyWF4-lt1UBiiYkTC-tnm6X7ZHe3ODrSKim4U_RUIdOvHrlgs4ZDFeabKx9MNl2me-VyZKv0gfb8ox4tVVjgWNpATGgqDaBhFsdMJ1eqync/s320/device-2013-12-04-180929.png&quot; height=&quot;320&quot; title=&quot;Sinhala Android web browser&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;border: 0px; color: #333333; font-family: Roboto, Arial, sans-serif; font-size: 14px; line-height: 20px; margin-bottom: 5px; padding: 0px;&quot;&gt;
&lt;span style=&quot;background-color: whitesmoke;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style=&quot;background-color: whitesmoke;&quot;&gt;Sith Browser is light weight fast Android web Browser (Sinhala Android web browser / Tamil Android web Browser). Happy Browsing&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;background-color: whitesmoke; border: 0px; margin-bottom: 5px; padding: 0px;&quot;&gt;
★ Sinhala web Browser&lt;br /&gt;★ Tamil web Browser&lt;/div&gt;
&lt;div style=&quot;background-color: whitesmoke; border: 0px; margin-bottom: 5px; padding: 0px;&quot;&gt;
Features:&lt;/div&gt;
&lt;div style=&quot;background-color: whitesmoke; border: 0px; margin-bottom: 5px; padding: 0px;&quot;&gt;
- Unlimited Tabs&lt;br /&gt;- Full Screen Mode&lt;br /&gt;- Incognito Browsing (Incognito Mode keeps you safe while browsing,History is not saved, Cookies are disabled, and Location access is disabled to ensure as best we can that you are not being tracked )&lt;br /&gt;- Bookmarks&lt;br /&gt;- History&lt;br /&gt;- Block Images&lt;br /&gt;- Flash Support&lt;br /&gt;- Fast Sinhala and Tamil Rendering&lt;br /&gt;- Search Engine&lt;br /&gt;- FREE No Ads&lt;/div&gt;
&lt;div style=&quot;background-color: whitesmoke; border: 0px; margin-bottom: 5px; padding: 0px;&quot;&gt;
Download Sith Browser and enjoy a faster experience with Sinhala Tamil web browsing.&lt;/div&gt;
&lt;div style=&quot;background-color: whitesmoke; border: 0px; margin-bottom: 5px; padding: 0px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style=&quot;border: 0px; color: #333333; font-family: Roboto, Arial, sans-serif; font-size: 14px; line-height: 20px; margin-bottom: 5px; padding: 0px;&quot;&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: center;&quot;&gt;
&lt;a href=&quot;https://play.google.com/store/apps/details?id=com.sithagi.sithbrowser&quot; target=&quot;_blank&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBbkuzXxxw0BHWZJrMLvTDWwpLM1LUBNtQb3e8fzmiwt4q178DxfsfwiQanNjHM2Agl4ELdPZE3dPWzPjOdGfVxusCupId21nCNW76PyXCwxtvMxAnBhSPfC0VW4ug-udlcsKpwlpZPck/s200/play.jpg&quot; height=&quot;65&quot; width=&quot;200&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBk7aFqm0w0wB-iz8KWnlTX-e8nONSsYppe-AwqV1n4S5uDMYWpXK7vHNH5aD97iDw0NDeHhy7fNnfAo3vECjCsRSPQMKzme7rQPzQAoewfOGTy6LnaQ1GltCqsVnTg0cyCSBkeBh9QBA/s1600/df062198-b22d-45c3-bdb7-8c75df19158a.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Tamil Android web Browser&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBk7aFqm0w0wB-iz8KWnlTX-e8nONSsYppe-AwqV1n4S5uDMYWpXK7vHNH5aD97iDw0NDeHhy7fNnfAo3vECjCsRSPQMKzme7rQPzQAoewfOGTy6LnaQ1GltCqsVnTg0cyCSBkeBh9QBA/s640/df062198-b22d-45c3-bdb7-8c75df19158a.png&quot; height=&quot;640&quot; title=&quot;Tamil Android web Browser&quot; width=&quot;424&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;span style=&quot;background-color: white;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/4537698579743734143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/12/sith-browser.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4537698579743734143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4537698579743734143'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/12/sith-browser.html' title='Sith Browser'/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsAeqoSGiDePnBPzAZEOhErpBLdV8jyWp_GyWF4-lt1UBiiYkTC-tnm6X7ZHe3ODrSKim4U_RUIdOvHrlgs4ZDFeabKx9MNl2me-VyZKv0gfb8ox4tVVjgWNpATGgqDaBhFsdMJ1eqync/s72-c/device-2013-12-04-180929.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-8755592829830022643</id><published>2013-09-06T18:43:00.000+05:30</published><updated>2013-09-06T18:47:50.063+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Controllers"/><title type='text'>Android Swipe List View </title><content type='html'>&lt;span style=&quot;background-color: white; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;h4&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25px;&quot;&gt;SwipeListView&amp;nbsp;&lt;/span&gt;&lt;/h4&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25px;&quot;&gt;An Android List View implementation with support for drawable cells and many other swipe related features.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25px;&quot;&gt;on Android for @&amp;nbsp;&lt;/span&gt;47 Degrees&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: white; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfO4GeLQoenVN2FcMhQyGruRSWaNdqNV6qVDtDTIHHNPCf3A3Q4UwyRHyw6Vh9SVFYZ4DED5gLKk1kkMpsq6HiNyTX2X3ttmeWYqyBi7z6L14uvZBACqv-GNUOZk31nWRlf7acCCcJMlg/s1600/screenshot_swipelistview_small.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfO4GeLQoenVN2FcMhQyGruRSWaNdqNV6qVDtDTIHHNPCf3A3Q4UwyRHyw6Vh9SVFYZ4DED5gLKk1kkMpsq6HiNyTX2X3ttmeWYqyBi7z6L14uvZBACqv-GNUOZk31nWRlf7acCCcJMlg/s320/screenshot_swipelistview_small.png&quot; width=&quot;163&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Fork source code from &lt;a href=&quot;https://github.com/47deg/android-swipelistview&quot; target=&quot;_blank&quot;&gt;githon Android for @ 47 Degreesub&lt;/a&gt; </content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/8755592829830022643/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/09/android-swipe-list-view.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/8755592829830022643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/8755592829830022643'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/09/android-swipe-list-view.html' title='Android Swipe List View '/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjfO4GeLQoenVN2FcMhQyGruRSWaNdqNV6qVDtDTIHHNPCf3A3Q4UwyRHyw6Vh9SVFYZ4DED5gLKk1kkMpsq6HiNyTX2X3ttmeWYqyBi7z6L14uvZBACqv-GNUOZk31nWRlf7acCCcJMlg/s72-c/screenshot_swipelistview_small.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-8302291818445322692</id><published>2013-06-27T22:42:00.002+05:30</published><updated>2013-06-27T23:10:50.854+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Animation"/><title type='text'>Android AnimationDrawable - Loading Example </title><content type='html'>&lt;h3&gt;
Android Drawable Animation&amp;nbsp;&lt;/h3&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
In this&amp;nbsp;tutorial you will learn how to animate Image set by using Android &lt;b&gt;AnimationDrawable&lt;/b&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8GpAWUGupkVwU8g571dyr0zQwGtmeEvtOiOvu-gnUdUM3Cd_Ft3DYoR9yKtuvB9KCQIvgpJnDRv9CWFZJS5yLIEhCMRraUUjDBQyF00ghzveLMCvu-hv285dSaNpr1SrT9re7o9uNUTM/s480/android+drawable+loading+animation+-+javasrilankansupport.com.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;306&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8GpAWUGupkVwU8g571dyr0zQwGtmeEvtOiOvu-gnUdUM3Cd_Ft3DYoR9yKtuvB9KCQIvgpJnDRv9CWFZJS5yLIEhCMRraUUjDBQyF00ghzveLMCvu-hv285dSaNpr1SrT9re7o9uNUTM/s320/android+drawable+loading+animation+-+javasrilankansupport.com.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
loading.xml&lt;/h4&gt;
&lt;div&gt;
&lt;b&gt;res/anim/loading.xml&lt;/b&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush:xml&quot;&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;animation-list xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    android:id=&quot;@+id/voipemLoading&quot;
    android:oneshot=&quot;false&quot; &amp;gt;

    &amp;lt;item
        android:drawable=&quot;@drawable/loading_01&quot;
        android:duration=&quot;300&quot;/&amp;gt; 
    &amp;lt;item
        android:drawable=&quot;@drawable/loading_02&quot;
        android:duration=&quot;300&quot;/&amp;gt;
    &amp;lt;item
        android:drawable=&quot;@drawable/loading_03&quot;
        android:duration=&quot;300&quot;/&amp;gt;
    &amp;lt;item
        android:drawable=&quot;@drawable/loading_04&quot;
        android:duration=&quot;300&quot;/&amp;gt;

&amp;lt;/animation-list&amp;gt;
&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
DravableAnimation&lt;/h4&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre class=&quot;brush:java&quot;&gt;package com.javasrilankansupport.drawableanimation;

import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.app.Activity;
import android.graphics.drawable.AnimationDrawable;

public class DravableAnimation extends Activity implements OnClickListener {

 private AnimationDrawable mAnimation;
 private ImageView mAnimLogo;
 private Button mbtnStart;
 private boolean mStart;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.dravable_animation);

  mAnimLogo = (ImageView) findViewById(R.id.loading_image);
  mAnimation = (AnimationDrawable) mAnimLogo.getDrawable();
  mbtnStart = (Button) findViewById(R.id.btn_start);

  mbtnStart.setOnClickListener(this);
 }

 @Override
 public void onClick(View v) {
  if (!mStart) {
    // start animation 
   mAnimLogo.post(new Runnable() {
    @Override
    public void run() {
     mAnimLogo.setVisibility(View.VISIBLE);
     mAnimation.start();
     mStart = true;
     mbtnStart.setText(&quot;Stop&quot;);
    }
   });
  } else {     
   // stop animation            
   mAnimation.stop();
   mbtnStart.setText(&quot;Start&quot;);
   mStart = false;
  }
 }
}

&lt;/pre&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;h4&gt;
dravable_animation.xml&lt;/h4&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre class=&quot;brush:xml&quot;&gt;&amp;lt;RelativeLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.DravableAnimation&quot;
    android:background=&quot;@drawable/bg_login&quot; &amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/textView1&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_alignParentTop=&quot;true&quot;
        android:layout_centerHorizontal=&quot;true&quot;
        android:layout_marginTop=&quot;44dp&quot;
        android:text=&quot;@string/hello_world&quot;
        android:textColor=&quot;@color/black&quot;
        android:textSize=&quot;24sp&quot; /&amp;gt;

    &amp;lt;ImageView
        android:id=&quot;@+id/loading_image&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_below=&quot;@+id/textView1&quot;
        android:layout_centerHorizontal=&quot;true&quot;
        android:layout_marginTop=&quot;37dp&quot;
        android:src=&quot;@anim/loading&quot;
        android:visibility=&quot;invisible&quot; /&amp;gt;

    &amp;lt;Button
        android:id=&quot;@+id/btn_start&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_below=&quot;@+id/loading_image&quot;
        android:layout_centerHorizontal=&quot;true&quot;
        android:layout_marginTop=&quot;48dp&quot;
        android:text=&quot;@string/btn_start&quot; /&amp;gt;

&amp;lt;/RelativeLayout&amp;gt;

&lt;/pre&gt;
&lt;h4&gt;
&lt;a href=&quot;https://sites.google.com/site/javasrilankan/DrawableAnimation.zip&quot; target=&quot;_blank&quot;&gt;Download AnimationDrawable complete source code&amp;nbsp;&lt;/a&gt;&lt;/h4&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;a href=&quot;http://www.javasrilankansupport.com/2013/06/how-to-move-an-image-from-left-to-right-and-right-to-left-in-android.html&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;Android Animation with TranslateAnimation&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/8302291818445322692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/06/android-animationdrawable-loading-example.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/8302291818445322692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/8302291818445322692'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/06/android-animationdrawable-loading-example.html' title='Android AnimationDrawable - Loading Example '/><author><name>Dev</name><uri>http://www.blogger.com/profile/11529759865735853467</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8GpAWUGupkVwU8g571dyr0zQwGtmeEvtOiOvu-gnUdUM3Cd_Ft3DYoR9yKtuvB9KCQIvgpJnDRv9CWFZJS5yLIEhCMRraUUjDBQyF00ghzveLMCvu-hv285dSaNpr1SrT9re7o9uNUTM/s72-c/android+drawable+loading+animation+-+javasrilankansupport.com.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-2233977803168342624</id><published>2013-06-27T00:40:00.001+05:30</published><updated>2013-06-27T00:55:18.592+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Animation"/><title type='text'>How to move an image from left to right and right to left in android</title><content type='html'>&lt;h4&gt;
Android Animation with TranslateAnimation&lt;/h4&gt;
&lt;h4&gt;
&lt;/h4&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; font-size: small;&quot;&gt;In this tutorial you will learn how to animate an image from left to right and right to left in android using&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;b&gt;TranslateAnimation&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigDiSIVMd3K_2hvk-0CTQ1fforLEoFWsuBTuqxZ_K6syk7oTvf6RPCPIuqON6w0NIOIqgs-XAw3nFM4WlDK9uidmxlcnKMuU9MbVRRY_HJQ7UtNoHhSqO4i7699ioFxPrYG3cYD9C3xfE/s1600/android+animation+-+javasrilankansupport.com.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;Android Animation TranslateAnimation&quot; border=&quot;0&quot; height=&quot;170&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigDiSIVMd3K_2hvk-0CTQ1fforLEoFWsuBTuqxZ_K6syk7oTvf6RPCPIuqON6w0NIOIqgs-XAw3nFM4WlDK9uidmxlcnKMuU9MbVRRY_HJQ7UtNoHhSqO4i7699ioFxPrYG3cYD9C3xfE/s320/android+animation+-+javasrilankansupport.com.png&quot; title=&quot;Android Animation TranslateAnimation&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;br /&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush:java&quot;&gt;     ImageView img_animation = (ImageView) findViewById(R.id.img_animation);

        TranslateAnimation animation = new TranslateAnimation(0.0f, 400.0f,
                0.0f, 0.0f);          //  new TranslateAnimation(xFrom,xTo, yFrom,yTo)
        animation.setDuration(5000);  // animation duration 
        animation.setRepeatCount(5);  // animation repeat count
        animation.setRepeatMode(2);   // repeat animation (left to right, right to left )
//      animation.setFillAfter(true);      

        img_animation.startAnimation(animation);  // start animation 

&lt;/pre&gt;
&lt;br /&gt;
&lt;h4&gt;
Animation&amp;nbsp;&lt;/h4&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush:java&quot;&gt;package com.javasrilankansupport.animation;

import android.os.Bundle;
import android.app.Activity;
import android.view.animation.TranslateAnimation;
import android.widget.ImageView;

public class Animation extends Activity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.);

  ImageView img_animation = (ImageView) findViewById(R.id.img_animation);

  TranslateAnimation animation = new TranslateAnimation(0.0f, 400.0f,
    0.0f, 0.0f);
  animation.setDuration(5000);
  animation.setRepeatCount(5);
  animation.setRepeatMode(2);
  animation.setFillAfter(true);
  img_animation.startAnimation(animation);

 }
}

&lt;/pre&gt;
&lt;br /&gt;
&lt;h4&gt;
activity_animation.xml&lt;/h4&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush:xml&quot;&gt; 
&amp;lt;RelativeLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.Animation&quot; &amp;gt;
    
    &amp;lt;ImageView
        android:id=&quot;@+id/img_animation&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_marginLeft=&quot;30dp&quot;
        android:layout_marginTop=&quot;42dp&quot;
        android:src=&quot;@drawable/emo_im_crying&quot; /&amp;gt;

&amp;lt;/RelativeLayout&amp;gt;


&lt;/pre&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/2233977803168342624/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/06/how-to-move-an-image-from-left-to-right-and-right-to-left-in-android.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2233977803168342624'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2233977803168342624'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/06/how-to-move-an-image-from-left-to-right-and-right-to-left-in-android.html' title='How to move an image from left to right and right to left in android'/><author><name>Chathura Wijesinghe</name><uri>http://www.blogger.com/profile/14874392328811394852</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4kC-KlSt2tRQf1TPZWHtj9SLJBr_Bk5P5F9zQykNzCv-jqtJ8IOmH-R__-tPfxhUcFrRxJK8K2VFLRW6378y1S670tLuKVnOBp_DmCBFD-2fRp7-9LOe7BXX8sHMUP60/s220/Chathura+Wijesinghe.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigDiSIVMd3K_2hvk-0CTQ1fforLEoFWsuBTuqxZ_K6syk7oTvf6RPCPIuqON6w0NIOIqgs-XAw3nFM4WlDK9uidmxlcnKMuU9MbVRRY_HJQ7UtNoHhSqO4i7699ioFxPrYG3cYD9C3xfE/s72-c/android+animation+-+javasrilankansupport.com.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-1894807607360630166</id><published>2013-06-25T01:54:00.001+05:30</published><updated>2013-06-25T02:10:59.321+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Android SDK"/><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/><title type='text'>Android OnKeyListener Example  </title><content type='html'>&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;In this &lt;span style=&quot;font-size: small;&quot;&gt;post you will learn how to implement &lt;span style=&quot;font-size: small;&quot;&gt;Android OnKeyListener &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;with EditText&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3kxAPj9VBuVFDS6lM34pHQTvix4UsbqA6XxA4xqd2BkRImvGxNdYRbUsriGq2-YFWCnmoxQy98kX5c48LOkjLC_-fRNDtiMIH-4lPS-NyeXVTsCcldA8PuB9O0BD2htOzuZrXu9LCtLA/s1600/android-onkeylistener-javasrilankansupport.com.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;android onkeylistener javasrilankansupport.com&quot; border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3kxAPj9VBuVFDS6lM34pHQTvix4UsbqA6XxA4xqd2BkRImvGxNdYRbUsriGq2-YFWCnmoxQy98kX5c48LOkjLC_-fRNDtiMIH-4lPS-NyeXVTsCcldA8PuB9O0BD2htOzuZrXu9LCtLA/s320/android-onkeylistener-javasrilankansupport.com.png&quot; title=&quot;Android OnKeyListener&quot; width=&quot;179&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;h4&gt;
EditTextKeyListener&lt;/h4&gt;
EditTextKeyListener class implement the Android &lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;OnKeyListener interface&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;

&lt;br /&gt;
&lt;pre class=&quot;brush:java&quot;&gt;package com.javasrilankansupport.androidkeylistner;

import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnKeyListener;
import android.widget.EditText;
import android.widget.Toast;
import android.app.Activity;

public class EditTextKeyListener extends Activity implements OnKeyListener {

 private EditText userName;
 private EditText password;

 private String mUserName;
 private String mPassword;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_keylistner);

  userName = (EditText) findViewById(R.id.txt_name);
  password = (EditText) findViewById(R.id.password);

  // set onkeyListner
  userName.setOnKeyListener(this);
  password.setOnKeyListener(this);

 }

 @Override
 public boolean onKey(View v, int keyCode, KeyEvent event) {

  switch (v.getId()) {

  case R.id.txt_name:
   // keyup and &quot;ENTER&quot;
   if ((event.getAction() == KeyEvent.ACTION_DOWN)
     &amp;amp;&amp;amp; (keyCode == KeyEvent.KEYCODE_ENTER)) {
    mUserName = userName.getText().toString();
    if (mUserName.equals(&quot;&quot;)) {
     Toast.makeText(this, &quot;Enter user name...&quot;,
       Toast.LENGTH_SHORT).show();

    } else
     password.requestFocus();
   }
   break;

  case R.id.password:
   // keydown and &quot;ENTER&quot;
   if ((event.getAction() == KeyEvent.ACTION_DOWN)
     &amp;amp;&amp;amp; (keyCode == KeyEvent.KEYCODE_ENTER)) {
    mPassword = password.getText().toString();
    if (mPassword.equals(&quot;&quot;))
     Toast.makeText(this, &quot;Enter password...&quot;,
       Toast.LENGTH_SHORT).show();

    else
     // show Toast Long time
     Toast.makeText(
       this,
       &quot;User name : &quot; + mUserName + &quot;  Password : &quot;
         + mPassword, Toast.LENGTH_LONG).show();
   }
   break;

  }
  return false;
 }

}
&lt;/pre&gt;
&lt;br /&gt;
&lt;h4&gt;
activity_keylistener.xml &lt;/h4&gt;
&lt;br /&gt;
&lt;pre class=&quot;brush:xml&quot;&gt;&amp;lt;RelativeLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    xmlns:tools=&quot;http://schemas.android.com/tools&quot;
    android:layout_width=&quot;match_parent&quot;
    android:layout_height=&quot;match_parent&quot;
    tools:context=&quot;.EditTextKeyListener&quot; &amp;gt;

    &amp;lt;TextView
        android:id=&quot;@+id/textView1&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:text=&quot;@string/hello_world&quot;
        android:textSize=&quot;20sp&quot; /&amp;gt;

    &amp;lt;EditText
        android:id=&quot;@+id/txt_name&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_below=&quot;@+id/textView1&quot;
        android:layout_centerHorizontal=&quot;true&quot;
        android:layout_marginTop=&quot;48dp&quot;
        android:ems=&quot;10&quot;
        android:inputType=&quot;textPersonName&quot; 
        android:hint=&quot;@string/username&quot;
       &amp;gt;

        &amp;lt;requestFocus /&amp;gt;
    &amp;lt;/EditText&amp;gt;

    &amp;lt;EditText
        android:id=&quot;@+id/password&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:layout_alignRight=&quot;@+id/txt_name&quot;
        android:layout_below=&quot;@+id/txt_name&quot;
        android:layout_marginTop=&quot;24dp&quot;
        android:ems=&quot;10&quot;
        android:inputType=&quot;textPassword&quot;
        android:hint=&quot;@string/psass&quot; /&amp;gt;

&amp;lt;/RelativeLayout&amp;gt;
&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
&lt;a href=&quot;https://sites.google.com/site/javasrilankan/AndroidKeyListener.zip&quot; target=&quot;_blank&quot;&gt;Download Android KeyListener project &lt;/a&gt;&lt;/h4&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/1894807607360630166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/06/android-OnKeyListener-example.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/1894807607360630166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/1894807607360630166'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/06/android-OnKeyListener-example.html' title='Android OnKeyListener Example  '/><author><name>Chathura Wijesinghe</name><uri>http://www.blogger.com/profile/14874392328811394852</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4kC-KlSt2tRQf1TPZWHtj9SLJBr_Bk5P5F9zQykNzCv-jqtJ8IOmH-R__-tPfxhUcFrRxJK8K2VFLRW6378y1S670tLuKVnOBp_DmCBFD-2fRp7-9LOe7BXX8sHMUP60/s220/Chathura+Wijesinghe.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3kxAPj9VBuVFDS6lM34pHQTvix4UsbqA6XxA4xqd2BkRImvGxNdYRbUsriGq2-YFWCnmoxQy98kX5c48LOkjLC_-fRNDtiMIH-4lPS-NyeXVTsCcldA8PuB9O0BD2htOzuZrXu9LCtLA/s72-c/android-onkeylistener-javasrilankansupport.com.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-4721381581037729290</id><published>2013-03-19T23:23:00.001+05:30</published><updated>2013-03-19T23:23:31.364+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android SDK"/><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/><category scheme="http://www.blogger.com/atom/ns#" term="Ubuntu"/><title type='text'>How to Install Android SDK properly  in ubuntu 12.04 amd64 </title><content type='html'>&lt;h3&gt;
&lt;span style=&quot;color: #3d85c6;&quot;&gt;Android SDK in ubuntu 12.04 amd64&lt;/span&gt;&lt;/h3&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Android SDK is not working properly in ubuntu 12.04 amd64 , because ubuntu 12.04 64-bit dose not &amp;nbsp; have &amp;nbsp;ia32-libs package. So it gives adb error on Eclipse like&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;i&gt;&lt;b&gt;error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory&lt;/b&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This can solve by installing &amp;nbsp;the required libraries which is for i386 version&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Open the terminal and execute following command&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;sudo apt-get install libncurses5:i386 libstdc++6:i386 libz1:i386&amp;nbsp;&lt;/code&gt;&lt;span style=&quot;font-family: monospace;&quot;&gt;libc6:i386&lt;/span&gt;&lt;span style=&quot;font-family: monospace;&quot;&gt;&amp;nbsp;&lt;/span&gt;libsdl1.2debian:i386&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
NB:&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
If you unable to launch Android emulator, execute the following command which will install ia32-libs package&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: monospace;&quot;&gt;sudo apt-get install&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: monospace;&quot;&gt;ia32-libs&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style=&quot;font-family: monospace;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/4721381581037729290/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/03/Install-android-sdk-in-ubuntu-12.04-amd64.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4721381581037729290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/4721381581037729290'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2013/03/Install-android-sdk-in-ubuntu-12.04-amd64.html' title='How to Install Android SDK properly  in ubuntu 12.04 amd64 '/><author><name>Chathura Wijesinghe</name><uri>http://www.blogger.com/profile/14874392328811394852</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4kC-KlSt2tRQf1TPZWHtj9SLJBr_Bk5P5F9zQykNzCv-jqtJ8IOmH-R__-tPfxhUcFrRxJK8K2VFLRW6378y1S670tLuKVnOBp_DmCBFD-2fRp7-9LOe7BXX8sHMUP60/s220/Chathura+Wijesinghe.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1218567874649563261.post-2139639987652675437</id><published>2012-11-26T21:52:00.000+05:30</published><updated>2012-11-26T21:55:59.194+05:30</updated><category scheme="http://www.blogger.com/atom/ns#" term="Eclipse"/><title type='text'>How To Add Line Numbers in Eclipse</title><content type='html'>By adding line numbers in eclipse, it makes a little easier to debug , find and fix errors in your project.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;To add line numbers&lt;span style=&quot;color: #073763;&quot;&gt;

Eclipse &lt;/span&gt;-&amp;gt; &lt;span style=&quot;color: #073763;&quot;&gt;Window &lt;/span&gt;-&amp;gt; &lt;span style=&quot;color: #073763;&quot;&gt;Preferences&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Select &lt;span style=&quot;color: #073763;&quot;&gt;General &lt;/span&gt;-&amp;gt; &lt;span style=&quot;color: #073763;&quot;&gt;Editors &lt;/span&gt;-&amp;gt; &lt;span style=&quot;color: #073763;&quot;&gt;Text Editors&lt;/span&gt; and tick on &lt;b&gt;&lt;span style=&quot;color: #0b5394;&quot;&gt;Show line numbers &lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqjge0CSY3_zQYgQeQENGaP_PjlkairyCJUeCwUgOG77F96YjOpRHtqCXs8wuDyf4pBJZwCVVnhVcT1CIc8XLGzIvvN6Gn9EHEH-gzdEf2q788pt4A5JEUe6sXGPJUAtKdbtNThnN8DCY/s1600/how+to+add+line+numbers+in+eclipse.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img alt=&quot;how to add line numbers in eclipse&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqjge0CSY3_zQYgQeQENGaP_PjlkairyCJUeCwUgOG77F96YjOpRHtqCXs8wuDyf4pBJZwCVVnhVcT1CIc8XLGzIvvN6Gn9EHEH-gzdEf2q788pt4A5JEUe6sXGPJUAtKdbtNThnN8DCY/s1600/how+to+add+line+numbers+in+eclipse.png&quot; height=&quot;640&quot; title=&quot;how to display line numbers in eclipse&quot; width=&quot;532&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://javasrilankansupport.blogspot.com/feeds/2139639987652675437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://javasrilankansupport.blogspot.com/2012/11/how-to-add-line-numbers-in-eclipse.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2139639987652675437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1218567874649563261/posts/default/2139639987652675437'/><link rel='alternate' type='text/html' href='http://javasrilankansupport.blogspot.com/2012/11/how-to-add-line-numbers-in-eclipse.html' title='How To Add Line Numbers in Eclipse'/><author><name>Chathura Wijesinghe</name><uri>http://www.blogger.com/profile/14874392328811394852</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4kC-KlSt2tRQf1TPZWHtj9SLJBr_Bk5P5F9zQykNzCv-jqtJ8IOmH-R__-tPfxhUcFrRxJK8K2VFLRW6378y1S670tLuKVnOBp_DmCBFD-2fRp7-9LOe7BXX8sHMUP60/s220/Chathura+Wijesinghe.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqjge0CSY3_zQYgQeQENGaP_PjlkairyCJUeCwUgOG77F96YjOpRHtqCXs8wuDyf4pBJZwCVVnhVcT1CIc8XLGzIvvN6Gn9EHEH-gzdEf2q788pt4A5JEUe6sXGPJUAtKdbtNThnN8DCY/s72-c/how+to+add+line+numbers+in+eclipse.png" height="72" width="72"/><thr:total>0</thr:total></entry></feed>