<?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-8598431745983279020</id><updated>2024-10-06T22:29:11.256-07:00</updated><category term="IT"/><category term="technology"/><category term="Android Applications"/><category term="USB"/><category term="ft"/><category term="Virtual Assistant"/><category term="Online TV"/><category term="SEO"/><category term="Electronics"/><category term="Interfacing"/><category term="Traffic and Backlink Formula"/><category term="Web Traffic"/><category term="communications"/><category term="ATM"/><category term="GPS"/><category term="Optimization"/><category term="Satellite TV"/><category term="Sony Bravia"/><category term="TV guide"/><category term="communication"/><category term="computer"/><category term="multimedia"/><category term="ALM Solution"/><category term="ATM Software"/><category term="Affiliate Program"/><category term="Android"/><category term="Anti-cybersquatting Shopper Protection Act"/><category term="Area Name Proprietors"/><category term="Barcoding"/><category term="CA-3001RB 3 Piece Subwoofer"/><category term="CA-3001RB 3 Piece Subwoofer price comparison"/><category term="Canon Power Shot"/><category term="Comprehensive EHR"/><category term="Computes"/><category term="Custom Software Development"/><category term="Data Center"/><category term="Dedicated Server"/><category term="Desktop and Server Support"/><category term="Digital camera"/><category term="Dreamweaver courses"/><category term="Dreamweaver training"/><category term="Film Production"/><category term="GPS over Lojack"/><category term="Healthcare IT"/><category term="IPhone Controlled Toys"/><category term="IT Compliance Management"/><category term="IT Compliance and Security"/><category term="IT Solutions"/><category term="IT tutorials"/><category term="Information Technology"/><category term="Information security"/><category term="Internet Data Centers"/><category term="Internet Marketing"/><category term="Internet Marketing Strategies"/><category term="Internet Video Marketing"/><category term="Laptop"/><category term="Laptop Battery"/><category term="Laser Pointers"/><category term="LinkStick"/><category term="Media Analysis Tools"/><category term="Media Monitoring"/><category term="Mobile Phone"/><category term="Mobile Security"/><category term="Outsourcing"/><category term="Product Returns"/><category term="QA services"/><category term="Remote Desktop Access"/><category term="Reverse Logistics Management Tool"/><category term="SMS Software"/><category term="Smartpens"/><category term="Social Networks"/><category term="Social Software"/><category term="Social media networking"/><category term="Speed TV Online"/><category term="Uniform Dispute Resolution Coverage"/><category term="VOIP"/><category term="VPN services"/><category term="Vehicle Tracking System"/><category term="Web Design"/><category term="android application development"/><category term="android apps"/><category term="android cell phone plans"/><category term="anti-phishing"/><category term="anti-phishing solution"/><category term="application development"/><category term="applications"/><category term="apps"/><category term="bankruptcy"/><category term="business"/><category term="camcorder battery"/><category term="consumer electronics"/><category term="desktops"/><category term="economy"/><category term="gadgets"/><category term="gps tracking"/><category term="iPad Insurance"/><category term="iPod Classic Battery"/><category term="information system"/><category term="internet"/><category term="ipad"/><category term="ipad apps development"/><category term="language"/><category term="laptop accessories"/><category term="media"/><category term="mobile"/><category term="netbook"/><category term="news"/><category term="pc"/><category term="social networking"/><category term="telephone"/><category term="video cameras"/><category term="voice over ip"/><category term="waste toner container"/><category term="web development"/><category term="wiring harnesses"/><title type='text'>IT</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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>93</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-1134395981935244449</id><published>2014-05-30T22:32:00.000-07:00</published><updated>2014-05-30T22:34:01.595-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>Email on your USB flash drive</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div align=&quot;justify&quot;&gt;
previous &lt;b&gt;How to get more space on your hard drive&lt;/b&gt;&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
Mozilla are the creators of the widely popular browser, Firefox. They have also developed an email client called Thunderbird. Thunderbird is a robust and reliable email client, with many advanced features and it can be used on the move from a USB flash drive! Here&#39;s how.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
You can download the portable version of Thunderbird from the portable apps website.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiZmgI1spczlWgKzO3HwIqCNAYCANaTstta3SczHfxPrJ9eAJGywKu_Vmr_aWZb_gz-MjKwOYOf2xZ4fsO7nNst7fseTFHhsmg4ep7Lnypl6Vo4O6a-Jn63lKkvCKYu4BGgqAII1VIPFE-/s1600-h/image%25255B2%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBHCy-Z2giwWo81ugLqenNGU9B-HLHw7OjT0Lf-0e49CjNwRbDNIgeuwfhszCFYpgjDVk5Zhghyphenhyphen7r2P1mn_57VjkEXSPO_S9hsbfwx1hPLaiHQuUW9mLmJ-dyuRWaUO0-fLlC-Pn6Llxsv/?imgmax=800&quot; height=&quot;162&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
To install Thunderbird Portable on your USB flash drive, &lt;b&gt;double-click&lt;/b&gt; the downloaded installer file and select your &lt;b&gt;USB flash drive&lt;/b&gt; as the location to install the application and click ‘&lt;b&gt;Install&lt;/b&gt;’.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbfe6pVbSB9MNzOSj7FiCutRGNGsVQRT1MzfRsYtn3ZiLbJv2JYtyvzFp2nkRALsiSwErnyW6hR8eOry8vfhRX3x8XW6DqeqkH8nTcv7hFoMApILIBongw5uInKYrVDdr5Bb9hyphenhyphenQ2G0Z79/s1600-h/image%25255B5%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgyESAfZyeOJLWPjeyzJUbrADD7iuzpwgUUfNbVMIaOM89NL-Cu-j6wS2C3HwA2WFRmsyS-Sp6e5ZaVyrRwkWxcRHTXzezEGFZTtPOFBPB_hlGDUDVMaT7VenXGmdUnQgNxOU0jWi0uC5yi/?imgmax=800&quot; height=&quot;345&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
This will create a Portable Thunderbird directory and associated files on your flash drive.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiuYaUMXB_mdcnZjxZUidOsPokI0dutwGHdd_qLNWlIjfeDlpSWQH9EUOiB5tcUvkAPHEtzfNi1CGd6UjDk6UWrlAfMZBsEYSpr7l5nP73eHhi_ooeN88Zp6QENw-YTXnpOswO2uqeHYP7/s1600-h/image%25255B9%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieEfue4Rdd7D34GuXcSxdeD4ieYoQeldMwRZyhODdWXXrZMnLEAEwwHXvRZ5OjhXaLhxmB2um1fy39KUsune_u1RJePBpj2zwoeRnd3-2qFLxQ0r0Ik06JTxqyNdduo5ZfHX_bbumQkk6F/?imgmax=800&quot; height=&quot;329&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;469&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;b&gt;Double click&lt;/b&gt; the &lt;b&gt;.exe&lt;/b&gt; file to get started.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuU5eL6Aa5E0WoKlgeX5qcTfRa5yRUJrTxz6daIcYVUWA7xpn3mM65wwjTkFcS5x1Nr0McIWBZElI4rJL6StrWua7wBINpYwg8R4PjObGAvfHSp2w7tIxVqSh-BZOWwT-hdBu3J1vKp3Dq/s1600-h/image%25255B13%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOcfOwPBkBe8_RehGnK9hqWGEIxeRtxKcdaG9eVlKPEjzKx3AgPtHetppPqLo_CI98qYq1CvG1fGkc0VeHgF3Tq1OvLn_I5pPLrssefvTIE-wp1uJihD23ckifhDkgK6vmvmV-SOq4KnwH/?imgmax=800&quot; height=&quot;353&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;470&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
In an earlier article we discussed the portable apps suite, which has a huge list of goodies that can be used on USB flash drives. The PortableApps.com Suite includes Mozilla Thunderbird by default.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhvZsPIhu06Qqs1ZAUG5AxrAEeNLR3cgsu75-VddADYY-k1rr_bVStwzhpIL2u5401ezmqp3AVMa0vu3E9fcAjYbRkr8KSWZgH84UMf6bUSgavW7L1r2ms37l-4ImHbge1SgnKWZ-8VFDtu/s1600-h/image%25255B17%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtWUNU-n1729IGU9QBBKMRQz9fCfbxHfQV8tO-uI8WYXthAYDvDVCDS1e-LtbtOB1U7ImoGiJ_NKiaoR-_Hi20lid2YwaiY1nN-uwypaGFfk4Xw6OcEuzW72uYsB5kj6sbeLaLcgfCMUJd/?imgmax=800&quot; height=&quot;561&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;396&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
Portable Thunderbird simply works like any application on your hard drive. With the portable edition of Mozilla Thunderbird, your email, address book and account settings are always available to you on your USB flash drive. Thunderbird supports email services such as Yahoo, Hotmail, MailDotCom, Gmail, Libero, and AOL.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
You can manage multiple e-mail, newsgroup and RSS accounts and identities with Thunderbird. If you wish to upgrade Thunderbird, you only need to install a new copy over the existing one. This will preserve your data. Thunderbird will also work from a write-protected USB flash drive. [Note: Thunderbird will not automatically save addresses to the address book].&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
The advantage of using Thunderbird Portable from a USB drive is that it does not leave any data behind on your netbook or notebook. All the data remains on the USB flash drive. You can easily access your emails from any server provider (like Hotmail, Yahoo, Lycos, mail.com, Gmail, and AOL) both online and offline with Thunderbird Portable. Although an offline version of Gmail is available, it is in experimental stages and could still have a lot bugs. In addition to this, accessing Gmail offline requires the installation of Google Gears on your netbook or notebook. Offline Gmail running from a USB drive is not available yet. However, in the case of Thunderbird Portable, the software is installed on the USB flash drive and does not require the installation of any software on your notebook.&lt;/div&gt;
&lt;div align=&quot;justify&quot;&gt;
Please note that it is important to change the default Thunderbird settings from “download and remove your mail from the server” to “keep a copy of all emails in the server” so that all emails will be available online and for downloading on other computers. Make sure that this is done before you download your emails to Thunderbird Portable.&lt;/div&gt;
&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/1134395981935244449/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/email-on-your-usb-flash-drive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/1134395981935244449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/1134395981935244449'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/email-on-your-usb-flash-drive.html' title='Email on your USB flash drive'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEjBHCy-Z2giwWo81ugLqenNGU9B-HLHw7OjT0Lf-0e49CjNwRbDNIgeuwfhszCFYpgjDVk5Zhghyphenhyphen7r2P1mn_57VjkEXSPO_S9hsbfwx1hPLaiHQuUW9mLmJ-dyuRWaUO0-fLlC-Pn6Llxsv/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-3125210938634118260</id><published>2014-05-30T11:14:00.001-07:00</published><updated>2014-05-30T11:14:26.784-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Android SDK Features</title><content type='html'>&lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;   &lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/professional-android-application.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;Professional Android Application Development- Reto Meier&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The true appeal of Android as a development environment lies in the APIs it provides.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;As an application-neutral platform, Android gives you the opportunity to create applications that are as much a part of the phone as anything provided out of the box. The following list highlights some of the most noteworthy Android features:&lt;/div&gt;    &lt;ul&gt;     &lt;li&gt;No licensing, distribution, or development fees &lt;/li&gt;      &lt;li&gt;Wi-Fi hardware access &lt;/li&gt;      &lt;li&gt;GSM, EDGE, and 3G networks for telephony or data transfer, allowing you to make or receive calls or SMS messages, or to send and retrieve data across mobile networks &lt;/li&gt;      &lt;li&gt;Comprehensive APIs for location-based services such as GPS &lt;/li&gt;      &lt;li&gt;Full multimedia hardware control including playback and recording using the camera and microphone &lt;/li&gt;      &lt;li&gt;APIs for accelerometer and compass hardware &lt;/li&gt;      &lt;li&gt;IPC message passing &lt;/li&gt;      &lt;li&gt;Shared data stores &lt;/li&gt;      &lt;li&gt;An integrated open source WebKit-based browser &lt;/li&gt;      &lt;li&gt;Full support for applications that integrate Map controls as part of their user interface &lt;/li&gt;      &lt;li&gt;Peer-to-peer (P2P) support using Google Talk &lt;/li&gt;      &lt;li&gt;Mobile-optimized hardware-accelerated graphics including a path-based 2D graphics library and support for 3D graphics using OpenGL ES &lt;/li&gt;      &lt;li&gt;Media libraries for playing and recording a variety of audio/video or still image formats &lt;/li&gt;      &lt;li&gt;An application framework that encourages reuse of application components and the replacement of native applications &lt;/li&gt;   &lt;/ul&gt;   &lt;b&gt;Access to Hardware including Camera, GPS, and Accelerometer&lt;/b&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Android includes API libraries to simplify development involving the device hardware. These ensure that you don’t need to create specific implementations of your software for different devices, so you can create Android applications that work as expected on any device that supports the Android software stack.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The Android SDK includes APIs for location-based hardware (such as GPS), camera, network connections, Wi-Fi, Bluetooth, accelerometers, touch screen, and power management. You can explore the possibilities of some of Android’s hardware APIs in more detail later in this blog.&lt;/div&gt;   &lt;b&gt;Native Google Maps, Geocoding, and Location-Based Services&lt;/b&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Native map support lets you create a range of map-based applications that leverage the mobility of Android devices. Android lets you create activities that include interactive Google Maps as part of your user interface with full access to maps that you can control programmatically and annotate using Android’s rich graphics library.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Android’s location-based services manage technologies like GPS and Google’s GSM cell-based location technology to determine the device’s current position. These services enforce an abstraction from specific location-detecting technology and let you specify minimum requirements (e.g., accuracy or cost) rather than choosing a particular technology. It also means that your location-based applications will work no matter what technology the host handset supports.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;To combine maps with locations, Android includes an API for forward and reverse geocoding that lets you fi nd map coordinates for an address, and the address of a map position.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;You’ll learn the details of using maps, the geocoder, and location-based services later in this blog.&lt;/div&gt;   &lt;b&gt;Background Services&lt;/b&gt;     &lt;br /&gt;Android supports applications and services designed to run invisibly in the background.     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Modern mobiles are by nature multifunction devices; however, their limited screen size means that generally only one interactive application can be visible at any time. Platforms that don’t support background execution limit the viability of applications that don’t need your constant attention.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Background services make it possible to create invisible application components that perform automatic processing without direct user action. Background execution allows your applications to become eventdriven and to support regular updates, which is perfect for monitoring game scores or market prices, generating location-based alerts, or prioritizing and pre-screening incoming calls and SMS messages.&lt;/div&gt;   &lt;b&gt;SQLite Database for Data Storage and Retrieval&lt;/b&gt;     &lt;br /&gt;Rapid and efficient data storage and retrieval are essential for a device whose storage capacity is limited by its compact nature.     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Android provides a lightweight relational database for each application using SQLite. Your applications can take advantage of the managed relational database engine to store data securely and efficiently.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;By default, each application database is sandboxed — its content is available only to the application that created it — but Content Providers supply a mechanism for the managed sharing of these application databases.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Shared Data and Interapplication Communication&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Android includes three techniques for transmitting information from your applications for use elsewhere: Notifications, Intents, and Content Providers.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;i&gt;Notifications&lt;/i&gt; are the standard ways in which a mobile device traditionally alerts users. Using the API, you can trigger audible alerts, cause vibration, and flash the device’s LED, as well as control status bar notification icons.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;i&gt;Intents&lt;/i&gt; provide a mechanism for message passing within and between applications. Using Intents, you can broadcast a desired action (such as dialing the phone or editing a contact) system-wide for other applications to handle. Intents are an important core component of Android.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Finally, &lt;i&gt;Content Providers&lt;/i&gt; are a way to give managed access to your application’s private database. The data stores for native applications, such as the Contact Manager, are exposed as Content Providers so you can create your own applications that read or modify these data stores.&lt;/div&gt;   &lt;b&gt;P2P Services with Google Talk&lt;/b&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Based on earlier SDK versions, it’s expected that in later releases you will once again be able to send structured messages from your application to any other Android mobile using Android’s peer-to-peer (P2P) communications service.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The Android P2P service uses a specialized version of XMPP (Extensible Messaging and Presence Protocol). Based on Google’s Google Talk instant messaging service, it creates a persistent socket connection between your device and any other online Android handset that ensures communication with low latency and rapid response times.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;When made available, you’ll be able to use the Google Talk service for conventional instant messaging, or an interface to send data between application instances on separate devices. This is strong sauce for creating interactive applications that involve multiple users, such as real-time multiplayer games or social applications.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The P2P service also offers presence notification, which is used to see if a contact is online. While the P2P service is very attractive in itself, it also plays very well with other Android features. Imagine a background service that transmits locations between friends and a corresponding mapping application that displays these locations or alerts you when friends are nearby.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Owing to security concerns, sending data messages with Google Talk isn’t possible in Android 1.0. An instant messaging client is available, and it’s expected that XMPP-compatible IM and data messaging will be made available to developers in a future SDK release.&lt;/div&gt;   &lt;b&gt;Extensive Media Support and 2D/3D Graphics&lt;/b&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Bigger screens and brighter, higher-resolution displays have helped make mobiles multimedia devices. To make the most of the hardware available, Android provides graphics libraries for 2D canvas drawing and 3D graphics with OpenGL.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Android also offers comprehensive libraries for handling still images, video, and audio fi les including the MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, and GIF formats.&lt;/div&gt;   &lt;b&gt;Optimized Memory and Process Management&lt;/b&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Android’s process and memory management is a little unusual. Like Java and .NET, Android uses its own run time and virtual machine to manage application memory. Unlike either of these frameworks, the Android run time also manages the process lifetimes. Android ensures application responsiveness by stopping and killing processes as necessary to free resources for higher-priority applications.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;In this context, priority is determined depending on the application with which the user is interacting. Ensuring that your applications are prepared for a swift death but are still able to remain responsive and update or restart in the background if necessary, is an important consideration in an environment that does not allow applications to control their own lifetimes.&lt;/div&gt; next &lt;b&gt;Introducing the Open Hands set Alliance&lt;/b&gt;     &lt;br /&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/3125210938634118260/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/android-sdk-features.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/3125210938634118260'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/3125210938634118260'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/android-sdk-features.html' title='Android SDK Features'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-5238240827203099932</id><published>2014-05-30T11:08:00.001-07:00</published><updated>2014-05-30T11:08:59.395-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Professional Android Application Development- Reto Meier</title><content type='html'>&lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;   &lt;div align=&quot;justify&quot;&gt;Whether you’re an experienced mobile engineer, a desktop or web developer, or a complete programming novice, Android represents an exciting new opportunity to write innovative applications for mobile devices.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Despite the name, Android will not help you create an unstoppable army of emotionless robot warriors on a relentless quest to cleanse the earth of the scourge of humanity. Instead, Android is an open source software stack that includes the operating system, middleware, and key applications along with a set of API libraries for writing mobile applications that can shape the look, feel, and function of mobile handsets.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Small, stylish, and versatile, modern mobile phones have become powerful tools that incorporate cameras, media players, GPS systems, and touch screens. As technology has evolved, mobile devices have become about more than simply making calls, but their software and development platforms have struggled to keep pace.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Until recently, mobile phones were largely closed environments built on proprietary operating systems that required proprietary development tools. The phones themselves often prioritized native applications over those written by third parties. This has introduced an artificial barrier for developers hoping to build on increasingly powerful mobile hardware.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;In Android, native and third-party applications are written using the same APIs and executed on the same run time. These APIs feature hardware access, location-based services, support for background services, map-based activities, relational databases, interdevice peer-to-peer messaging, and 2D and 3D graphics.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Using this series of articles, you will learn how to use these APIs to create your own Android applications. In this chapter, you’ll learn some mobile development guidelines and be introduced to the features available from the Android development platform.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Android has powerful APIs, excellent documentation, a thriving developer community, and no development or distribution costs. As mobile devices continue to increase in popularity, this is an exciting opportunity to create innovative mobile phone applications no matter what your development background.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;A Little Bac kground&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;In the days before Twitter and Facebook, when Google was still a twinkle in its founders’ eyes and dinosaurs roamed the earth, mobile phones were just that — portable phones small enough to fit inside a briefcase, featuring batteries that could last up to several hours; they offered the freedom to make calls without being physically connected to a landline.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Increasingly small, stylish, and powerful mobile phones are now as ubiquitous as they are indispensable. Hardware advancements have made mobiles smaller and more efficient while including an increasing number of peripherals.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Beginning with cameras and media players, mobiles now include GPS systems, accelerometers, and touch screens. While these hardware innovations should prove fertile ground for software development, the applications available for mobile phones have generally lagged behind the hardware.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;The Not So Distant Past&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Historically, developers, generally coding in low-level C or C++, have needed to understand the specific hardware they were coding for, generally a single device or possibly a range of devices from a single manufacturer. As hardware technology has advanced, this closed approach has struggled to keep pace.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;More recently, platforms like Symbian have been created to provide developers a wider target audience. These systems have proved more successful in encouraging mobile developers to provide rich applications that better leverage the hardware available.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;These platforms offer some access to the device hardware, but require writing complex C/C++ code and making heavy use of proprietary APIs that are notoriously difficult to use. This difficulty is amplified when developing applications that must work on different hardware implementations and is particularly true when developing for a particular hardware feature like GPS.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;In recent years, the biggest advance in mobile phone development has been the introduction of Javahosted MIDlets. MIDlets are executed on a Java virtual machine, abstracting the underlying hardware and letting developers create applications that run on the wide variety of hardware that supports the Java run time. Unfortunately, this convenience comes at the price of restricted access to the device hardware.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;In mobile development, it’s considered normal for third-party applications to receive different hardware access and execution rights compared to native applications written by the phone manufacturers, with MIDlets often receiving few of either.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The introduction of Java MIDlets has expanded developers’ audiences, but the lack of low-level hardware access and sandboxed execution have meant that most mobile applications are desktop programs designed to run on a smaller screen rather than take advantage of the inherent mobility of the handheld platform.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;The Future&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Android sits alongside a new wave of mobile operating systems designed for increasingly powerful mobile hardware. Windows Mobile and Apple’s iPhone now provide a richer, simplified development environment for mobile applications. However, unlike Android, they’re built on proprietary operating systems that often prioritize native applications over those created by third parties and restrict communication among applications and native phone data. Android offers new possibilities for mobile applications by offering an open development environment built on an open source Linux kernel. Hardware access is available to all applications through a series of API libraries, and application interaction, while carefully controlled, is fully supported.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;In Android, all applications have equal standing. Third-party and native Android applications are written using the same APIs and are executed on the same run time. Users can remove and replace any native application with a third-party developer alternative; even the dialer and home screens can be replaced.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;What It Is n’t&lt;/b&gt;&lt;/div&gt; As a disruptive addition to a mature field, it’s not hard to see why there has been some confusion about what exactly Android is. Android is not:     &lt;br /&gt;    &lt;ul&gt;     &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A Java ME implementation Android applications are written using the Java language, but they are not run within a Java ME virtual machine, and Java-compiled classes and executables will not run natively in Android.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Part of the Linux Phone Standards Forum (LiPS) or the Open Mobile Alliance (OMA) Android runs on an open source Linux kernel, but, while their goals are similar, Android’s complete software stack approach goes further than the focus of these standards defining organizations.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Simply an application layer (like UIQ or S60) While it does include an application layer, “Android” also describes the entire software stack encompassing the underlying operating system, API libraries, and the applications themselves.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A mobile phone handset Android includes a reference design for mobile handset manufacturers, but unlike the iPhone, there is no single “Android Phone.” Instead, Android has been designed to support many alternative hardware devices.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Google’s answer to the iPhone The iPhone is a fully proprietary hardware and software platform released by a single company (Apple), while Android is an open source software stack produced and supported by the Open Handset Alliance and designed to operate on any handset that meets the requirements. There’s been a lot of speculation regarding a Google-branded Android phone, but even should Google produce one, it will be just one company’s hardware implementation of the Android platform.&lt;/div&gt;     &lt;/li&gt;   &lt;/ul&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;An Open Platform for Mobile Development&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Google describes Android as:&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;i&gt;The first truly open and comprehensive platform for mobile devices, all of the software to run a mobile hone but without the proprietary obstacles that have hindered mobile innovation.&lt;/i&gt;       &lt;br /&gt;http://googleblog.blogspot.com/2007/11/wheres-my-gphone.html&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Android is made up of several necessary and dependent parts including the following:&lt;/div&gt;    &lt;ul&gt;     &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A hardware reference design that describes the capabilities required of a mobile device in order to support the software stack&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A Linux operating system kernel that provides the low-level interface with the hardware, memory management, and process control, all optimized for mobile devices&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Open source libraries for application development including SQLite, WebKit, OpenGL, and a media manager A run time used to execute and host Android applications, including the Dalvik virtual machine and the core libraries that provide Android specific c functionality. The run time is designed to be small and effi cient for use on mobile devices.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;An application framework that agnostically exposes system services to the application layer, including the window manager, content providers, location manager, telephony, and peer-to-peer services&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A user interface framework used to host and launch applications&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Preinstalled applications shipped as part of the stack&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A software development kit used to create applications, including the tools, plug-ins, and documentation&lt;/div&gt;     &lt;/li&gt;   &lt;/ul&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;i&gt;At this stage, not all of the Android stack has been released as open source, although this is expected to happen by the time phones are released to market. It’s also worth noting that the applications you develop for Android do not have to be open source.&lt;/i&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;What really makes Android compelling is its open philosophy, which ensures that any deficiencies in user interface or native application design can be fixed by writing an extension or replacement. Android provides you, as a developer, the opportunity to create mobile phone interfaces and applications designed to look, feel, and function exactly as you image them.&lt;/div&gt;   &lt;b&gt;Native Android Applications&lt;/b&gt;     &lt;br /&gt;Android phones will normally come with a suite of preinstalled applications including, but not limited to:     &lt;br /&gt;    &lt;ul&gt;     &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;An e-mail client compatible with Gmail but not limited to it&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;An SMS management application&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A full PIM (personal information management) suite including a calendar and contacts list, both tightly integrated with Google’s online services&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A fully featured mobile Google Maps application including StreetView, business finder, driving directions, satellite view, and traffic conditions&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A WebKit-based web browser&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;An Instant Messaging Client&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;A music player and picture viewer&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;The Android Marketplace client for downloading third-party Android applications.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;The Amazon MP3 store client for purchasing DRM free music.&lt;/div&gt;     &lt;/li&gt;   &lt;/ul&gt; All the native applications are written in Java using the Android SDK and are run on Dalvik.     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;The data stored and used by the native applications — like contact details — are also available to third-party applications. Similarly, your applications can handle events such as an incoming call or a new SMS message.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The exact makeup of the applications available on new Android phones is likely to vary based on the hardware manufacturer and/or the phone carrier or distributor. This is especially true in the United States, where carriers have significant influence on the software included on shipped devices.&lt;/div&gt; next&lt;b&gt; Android SDK Features&lt;/b&gt;     &lt;br /&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/5238240827203099932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/professional-android-application.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/5238240827203099932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/5238240827203099932'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/professional-android-application.html' title='Professional Android Application Development- Reto Meier'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-6654877887985326905</id><published>2014-05-12T13:15:00.000-07:00</published><updated>2014-05-30T21:59:43.462-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="android cell phone plans"/><category scheme="http://www.blogger.com/atom/ns#" term="communications"/><title type='text'>The Android Platform</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Mobile phone applications require s oftware one of which is the Android software which is widely used in developing the applications of a mobile phone. If you are asking what Android is, the answer is that it consists of an operating system with middleware and some key applications. The Android platform can be used along with its tools and APIs which have been produced with the Java programming language.&lt;br /&gt;There is a fixed application in the form of maps, calendar, browser, email client, contacts and other such basic features of a cell phone and these applications have all been created with the help of the Java programming language.&lt;br /&gt;The biggest advantage in using the Android application framework is that it provides an open development platform so that the developers can create a rich and novel application. Developers can optimize the device hardware and attain information regarding location. They can set alarms, put in other additional services and personalize the status bar and do so much more. The developers can use the same APIs that are used for the core applications. The components can be reused ina simple manner so that if one application publishes its capabilities then another application can make use of it and components can be replaced by the customer.&lt;br /&gt;Those interested in knowing what Android is should know that it has certain functionalities such as Views for helping to create grids, buttons and list. There are Content providers which enable the user to get data from other applications and transfer it to his mobile device. This could be in the form of contacts and he can even share data with another application. A Resource Manager is present in the Android system which assists the developer to gain access to graphics and layout files which are non-code resources. The Notification Manager enables all created applications to show custom alerts in the mobile phone status bar. The working of the Applications is completely controlled with the help of an Activity Manager which provides one common backstack to the mobile device.&lt;br /&gt;The Android software has various libraries and helps to provide the resources in creating the basic functionalities of the mobile device. These consist of the Media Libraries, the System C Library, and SGL for LibWEBCore and 3D libraries. The 2.6 Linux version has been incorporated for enabling processing, memory, network, security and other features.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/6654877887985326905/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/the-android-platform.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6654877887985326905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6654877887985326905'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2014/05/the-android-platform.html' title='The Android Platform'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-4607894085580257319</id><published>2012-12-07T21:07:00.001-08:00</published><updated>2012-12-07T21:07:59.385-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Interfacing"/><title type='text'>IBM-PC Parallel Printer Port Programming Considerations</title><content type='html'>&lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;link rel=&quot;File-List&quot; href=&quot;file:///C:%5CDOCUME%7E1%5CSajib%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml&quot; /&gt;&lt;/link&gt;&lt;link rel=&quot;themeData&quot; href=&quot;file:///C:%5CDOCUME%7E1%5CSajib%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx&quot; /&gt;&lt;/link&gt;&lt;link rel=&quot;colorSchemeMapping&quot; href=&quot;file:///C:%5CDOCUME%7E1%5CSajib%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml&quot; /&gt;&lt;/link&gt;&lt;m:smallfrac m:val=&quot;off&quot;&gt;&lt;m:dispdef&gt;&lt;m:lmargin m:val=&quot;0&quot;&gt;&lt;m:rmargin m:val=&quot;0&quot;&gt;&lt;m:defjc m:val=&quot;centerGroup&quot;&gt;&lt;m:wrapindent m:val=&quot;1440&quot;&gt;&lt;m:intlim m:val=&quot;subSup&quot;&gt;&lt;m:narylim m:val=&quot;undOvr&quot;&gt;&lt;/m:narylim&gt;&lt;/m:intlim&gt;&lt;/m:wrapindent&gt;&lt;style&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--&lt;br /&gt; /* Font Definitions */&lt;br /&gt; @font-face&lt;br /&gt; {font-family:&quot;Cambria Math&quot;;&lt;br /&gt; panose-1:2 4 5 3 5 4 6 3 2 4;&lt;br /&gt; mso-font-charset:0;&lt;br /&gt; mso-generic-font-family:roman;&lt;br /&gt; mso-font-pitch:variable;&lt;br /&gt; mso-font-signature:-1610611985 1107304683 0 0 159 0;}&lt;br /&gt;@font-face&lt;br /&gt; {font-family:Calibri;&lt;br /&gt; panose-1:2 15 5 2 2 2 4 3 2 4;&lt;br /&gt; mso-font-charset:0;&lt;br /&gt; mso-generic-font-family:swiss;&lt;br /&gt; mso-font-pitch:variable;&lt;br /&gt; mso-font-signature:-1610611985 1073750139 0 0 159 0;}&lt;br /&gt; /* Style Definitions */&lt;br /&gt; p.MsoNormal, li.MsoNormal, div.MsoNormal&lt;br /&gt; {mso-style-unhide:no;&lt;br /&gt; mso-style-qformat:yes;&lt;br /&gt; mso-style-parent:&quot;&quot;;&lt;br /&gt; margin-top:0in;&lt;br /&gt; margin-right:0in;&lt;br /&gt; margin-bottom:10.0pt;&lt;br /&gt; margin-left:0in;&lt;br /&gt; line-height:115%;&lt;br /&gt; mso-pagination:widow-orphan;&lt;br /&gt; font-size:11.0pt;&lt;br /&gt; font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;&lt;br /&gt; mso-ascii-font-family:Calibri;&lt;br /&gt; mso-ascii-theme-font:minor-latin;&lt;br /&gt; mso-fareast-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-fareast-theme-font:minor-fareast;&lt;br /&gt; mso-hansi-font-family:Calibri;&lt;br /&gt; mso-hansi-theme-font:minor-latin;&lt;br /&gt; mso-bidi-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-bidi-theme-font:minor-bidi;}&lt;br /&gt;.MsoChpDefault&lt;br /&gt; {mso-style-type:export-only;&lt;br /&gt; mso-default-props:yes;&lt;br /&gt; mso-ascii-font-family:Calibri;&lt;br /&gt; mso-ascii-theme-font:minor-latin;&lt;br /&gt; mso-fareast-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-fareast-theme-font:minor-fareast;&lt;br /&gt; mso-hansi-font-family:Calibri;&lt;br /&gt; mso-hansi-theme-font:minor-latin;&lt;br /&gt; mso-bidi-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-bidi-theme-font:minor-bidi;}&lt;br /&gt;.MsoPapDefault&lt;br /&gt; {mso-style-type:export-only;&lt;br /&gt; margin-bottom:10.0pt;&lt;br /&gt; line-height:115%;}&lt;br /&gt;@page Section1&lt;br /&gt; {size:8.5in 11.0in;&lt;br /&gt; margin:1.0in 1.0in 1.0in 1.0in;&lt;br /&gt; mso-header-margin:.5in;&lt;br /&gt; mso-footer-margin:.5in;&lt;br /&gt; mso-paper-source:0;}&lt;br /&gt;div.Section1&lt;br /&gt; {page:Section1;}&lt;br /&gt;&lt;/style&gt;&lt;/m:defjc&gt;&lt;/m:rmargin&gt;&lt;/m:lmargin&gt;&lt;/m:dispdef&gt;&lt;/m:smallfrac&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;The printer adapter responds to five I/O instructions: two output and three input. The output instructions transfer data into two latches whose outputs are presented on the pins of a 25-pin D-type female connector. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Two of the three input instructions allow the processor to read back the contents of the two latches. The third allows the processor to read the realtime status of a group of pins on the connector. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;A description of each instruction follows &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Output to address 278/378/3BC Hex&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Bit&amp;#160;&amp;#160; 7&amp;#160;&amp;#160; 6&amp;#160;&amp;#160; 5&amp;#160;&amp;#160; 4&amp;#160;&amp;#160; 3&amp;#160;&amp;#160; 2&amp;#160;&amp;#160; 1&amp;#160;&amp;#160; 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Pin&amp;#160;&amp;#160; 9&amp;#160;&amp;#160; 8&amp;#160;&amp;#160; 7&amp;#160;&amp;#160; 6&amp;#160;&amp;#160; 5&amp;#160;&amp;#160; 4&amp;#160;&amp;#160; 3&amp;#160;&amp;#160; 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;The instruction captures data from the data bus and is present on the respective pins. These pins are each capable of sourcing 2.6 mA and sinking 24 mA. It is &lt;b&gt;essential&lt;/b&gt; that the external device not try to pull these lines to ground. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Output to address 27A/37A/3BE Hex&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Bit&amp;#160;&amp;#160;&amp;#160; 7&amp;#160;&amp;#160;&amp;#160; 6&amp;#160;&amp;#160;&amp;#160; 5&amp;#160;&amp;#160;&amp;#160; 4&amp;#160;&amp;#160; ~3&amp;#160;&amp;#160;&amp;#160; 2&amp;#160;&amp;#160; ~1&amp;#160;&amp;#160; ~0&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Pin&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160; IRQ&amp;#160; 17&amp;#160;&amp;#160; 16&amp;#160;&amp;#160;&amp;#160; 14&amp;#160;&amp;#160; 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; enable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;This instruction causes the latch to capture the least significant bits of the data bus. The four least significant bits present their outputs, or inverted versions of their outputs, to the respective pins shown above. If bit 4 is written as 1, the card will interrupt the processor on the condition that pin 10 transitions high to low. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;These pins are driven by open collector drivers pulled to +5 Vdc through 4.7 k-ohm resistors. They can each sink approximately 7 mA and maintain 0.8 volts down-level. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Input from address 278/378/3BC Hex&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;This command presents the processor with data present on the pins associated with the corresponding output address. This should normally reflect the exact value that was last written. If an external device should be driving data on these pins (in violation of usage groundrules) at the time of an input, this data will be ORed with the latch contents. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Input from address 279/379/3BD Hex&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;This command presents realtime status to the processor from the pins as follows. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Bit&amp;#160;&amp;#160;&amp;#160; 7&amp;#160;&amp;#160;&amp;#160; 6&amp;#160;&amp;#160;&amp;#160; 5&amp;#160;&amp;#160;&amp;#160; 4&amp;#160;&amp;#160;&amp;#160; 3&amp;#160;&amp;#160;&amp;#160; 2&amp;#160;&amp;#160;&amp;#160; 1&amp;#160;&amp;#160;&amp;#160; 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Pin&amp;#160;&amp;#160; 11&amp;#160;&amp;#160; 10&amp;#160;&amp;#160; 12&amp;#160;&amp;#160; 13&amp;#160;&amp;#160; 15&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160;&amp;#160; -&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Input from address 27A/37A/3BE Hex&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;This instruction causes the data present on pins 1, 14, 16, 17 and the IRQ bit to be read by the processor. In the absence of external drive applied to these pins, data read by the processor will exactly match data last written to the corresponding output address in the same bit positions. Note that data bits 0-2 are not included. If external drivers are dotted to these pins, that data will be ORed with data applied to the pins by the output latch. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Bit&amp;#160;&amp;#160;&amp;#160; 7&amp;#160;&amp;#160;&amp;#160; 6&amp;#160;&amp;#160;&amp;#160; 5&amp;#160;&amp;#160;&amp;#160; 4&amp;#160;&amp;#160;&amp;#160; 3&amp;#160;&amp;#160;&amp;#160; 2&amp;#160;&amp;#160;&amp;#160; 1&amp;#160;&amp;#160;&amp;#160; 0&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Pin&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160; IRQ&amp;#160; ~17&amp;#160; 16&amp;#160;&amp;#160; ~14&amp;#160; ~1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; enable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; state assumed after processor reset&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: justify; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 0&amp;#160;&amp;#160;&amp;#160; 1&amp;#160;&amp;#160;&amp;#160; 0&amp;#160;&amp;#160;&amp;#160; 1&amp;#160;&amp;#160;&amp;#160; 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div&gt;&lt;/div&gt; &lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/4607894085580257319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/12/ibm-pc-parallel-printer-port_7.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4607894085580257319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4607894085580257319'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/12/ibm-pc-parallel-printer-port_7.html' title='IBM-PC Parallel Printer Port Programming Considerations'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-4967562245120904198</id><published>2012-12-07T11:22:00.001-08:00</published><updated>2012-12-07T11:22:25.466-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Interfacing"/><title type='text'>IBM-PC Parallel Printer Port</title><content type='html'>&lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;link rel=&quot;File-List&quot; href=&quot;file:///C:%5CDOCUME%7E1%5CSajib%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml&quot; /&gt;&lt;/link&gt;&lt;link rel=&quot;Edit-Time-Data&quot; href=&quot;file:///C:%5CDOCUME%7E1%5CSajib%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_editdata.mso&quot; /&gt;&lt;/link&gt;&lt;link rel=&quot;themeData&quot; href=&quot;file:///C:%5CDOCUME%7E1%5CSajib%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx&quot; /&gt;&lt;/link&gt;&lt;link rel=&quot;colorSchemeMapping&quot; href=&quot;file:///C:%5CDOCUME%7E1%5CSajib%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml&quot; /&gt;&lt;/link&gt;&lt;m:smallfrac m:val=&quot;off&quot;&gt;&lt;m:dispdef&gt;&lt;m:lmargin m:val=&quot;0&quot;&gt;&lt;m:rmargin m:val=&quot;0&quot;&gt;&lt;m:defjc m:val=&quot;centerGroup&quot;&gt;&lt;m:wrapindent m:val=&quot;1440&quot;&gt;&lt;m:intlim m:val=&quot;subSup&quot;&gt;&lt;m:narylim m:val=&quot;undOvr&quot;&gt;&lt;/m:narylim&gt;&lt;/m:intlim&gt;&lt;/m:wrapindent&gt;&lt;style&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--&lt;br /&gt; /* Font Definitions */&lt;br /&gt; @font-face&lt;br /&gt; {font-family:&quot;Cambria Math&quot;;&lt;br /&gt; panose-1:2 4 5 3 5 4 6 3 2 4;&lt;br /&gt; mso-font-charset:0;&lt;br /&gt; mso-generic-font-family:roman;&lt;br /&gt; mso-font-pitch:variable;&lt;br /&gt; mso-font-signature:-1610611985 1107304683 0 0 159 0;}&lt;br /&gt;@font-face&lt;br /&gt; {font-family:Calibri;&lt;br /&gt; panose-1:2 15 5 2 2 2 4 3 2 4;&lt;br /&gt; mso-font-charset:0;&lt;br /&gt; mso-generic-font-family:swiss;&lt;br /&gt; mso-font-pitch:variable;&lt;br /&gt; mso-font-signature:-1610611985 1073750139 0 0 159 0;}&lt;br /&gt; /* Style Definitions */&lt;br /&gt; p.MsoNormal, li.MsoNormal, div.MsoNormal&lt;br /&gt; {mso-style-unhide:no;&lt;br /&gt; mso-style-qformat:yes;&lt;br /&gt; mso-style-parent:&quot;&quot;;&lt;br /&gt; margin-top:0in;&lt;br /&gt; margin-right:0in;&lt;br /&gt; margin-bottom:10.0pt;&lt;br /&gt; margin-left:0in;&lt;br /&gt; line-height:115%;&lt;br /&gt; mso-pagination:widow-orphan;&lt;br /&gt; font-size:11.0pt;&lt;br /&gt; font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;&lt;br /&gt; mso-ascii-font-family:Calibri;&lt;br /&gt; mso-ascii-theme-font:minor-latin;&lt;br /&gt; mso-fareast-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-fareast-theme-font:minor-fareast;&lt;br /&gt; mso-hansi-font-family:Calibri;&lt;br /&gt; mso-hansi-theme-font:minor-latin;&lt;br /&gt; mso-bidi-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-bidi-theme-font:minor-bidi;}&lt;br /&gt;.MsoChpDefault&lt;br /&gt; {mso-style-type:export-only;&lt;br /&gt; mso-default-props:yes;&lt;br /&gt; mso-ascii-font-family:Calibri;&lt;br /&gt; mso-ascii-theme-font:minor-latin;&lt;br /&gt; mso-fareast-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-fareast-theme-font:minor-fareast;&lt;br /&gt; mso-hansi-font-family:Calibri;&lt;br /&gt; mso-hansi-theme-font:minor-latin;&lt;br /&gt; mso-bidi-font-family:&quot;Times New Roman&quot;;&lt;br /&gt; mso-bidi-theme-font:minor-bidi;}&lt;br /&gt;.MsoPapDefault&lt;br /&gt; {mso-style-type:export-only;&lt;br /&gt; margin-bottom:10.0pt;&lt;br /&gt; line-height:115%;}&lt;br /&gt;@page Section1&lt;br /&gt; {size:8.5in 11.0in;&lt;br /&gt; margin:1.0in 1.0in 1.0in 1.0in;&lt;br /&gt; mso-header-margin:.5in;&lt;br /&gt; mso-footer-margin:.5in;&lt;br /&gt; mso-paper-source:0;}&lt;br /&gt;div.Section1&lt;br /&gt; {page:Section1;}&lt;br /&gt;&lt;/style&gt;&lt;/m:defjc&gt;&lt;/m:rmargin&gt;&lt;/m:lmargin&gt;&lt;/m:dispdef&gt;&lt;/m:smallfrac&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 18pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Registers &amp;amp; Pinouts &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Registers (- unavailable)&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;    &lt;div class=&quot;separator&quot; style=&quot;text-align: center; clear: both&quot;&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;Pinouts&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;    &lt;div class=&quot;separator&quot; style=&quot;text-align: center; clear: both&quot;&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;&amp;#160;&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Register&amp;#160; DB-25&amp;#160;&amp;#160;&amp;#160;&amp;#160; I/O&amp;#160;&amp;#160; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;Signal Name&amp;#160;&amp;#160;&amp;#160; Bit&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Pin&amp;#160;&amp;#160; Direction&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;===========&amp;#160; ========&amp;#160; =====&amp;#160; =========&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;-Strobe&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ¬C0&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 1&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 0&amp;#160;&amp;#160;&amp;#160;&amp;#160; D0&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 2&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 1&amp;#160;&amp;#160;&amp;#160;&amp;#160; D1&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 3&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 2&amp;#160;&amp;#160;&amp;#160;&amp;#160; D2&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 4&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 3&amp;#160;&amp;#160;&amp;#160;&amp;#160; D3&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 5&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 4&amp;#160;&amp;#160;&amp;#160;&amp;#160; D4&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 6&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 5&amp;#160;&amp;#160;&amp;#160;&amp;#160; D5&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 7&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 6&amp;#160;&amp;#160;&amp;#160;&amp;#160; D6&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 8&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Data Bit 7&amp;#160;&amp;#160;&amp;#160;&amp;#160; D7&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 9&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;-Acknowledge&amp;#160;&amp;#160;&amp;#160; S6&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 10&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Input &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Busy&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ¬S7&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 11&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Input &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Paper End&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; S5&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 12&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Input &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;+Select In&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; S4&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 13&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Input &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;-Auto Feed&amp;#160;&amp;#160;&amp;#160;&amp;#160; ¬C1&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 14&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;-Error&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; S3&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 15&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Input &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;-Initialize&amp;#160;&amp;#160;&amp;#160;&amp;#160; C2&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 16&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;-Select&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ¬C3&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 17&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Output &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;Ground&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160;&amp;#160;&amp;#160; 18-25&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; -&amp;#160;&amp;#160; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;(Note again that the S7, C0, C1 &amp;amp; C3 signals are inverted) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;IBM-PC Parallel Printer Port Female DB-25 Socket external Pin layout&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;______________________________________________________ &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;/&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; \&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;\&amp;#160; 13&amp;#160; 12&amp;#160; 11&amp;#160; 10&amp;#160;&amp;#160; 9&amp;#160;&amp;#160; 8&amp;#160;&amp;#160; 7&amp;#160;&amp;#160; 6&amp;#160;&amp;#160; 5&amp;#160;&amp;#160; 4&amp;#160;&amp;#160; 3&amp;#160;&amp;#160; 2&amp;#160;&amp;#160; 1&amp;#160; /&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;\&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; / &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160; \&amp;#160; 25&amp;#160; 24&amp;#160; 23&amp;#160; 22&amp;#160; 21&amp;#160; 20&amp;#160; 19&amp;#160; 18&amp;#160; 17&amp;#160; 16&amp;#160; 15&amp;#160; 14&amp;#160; /&amp;#160; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;&quot;&gt;&amp;#160;&amp;#160; \________________________________________________/&amp;#160;&amp;#160; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; text-align: center; line-height: normal&quot; align=&quot;center&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;&quot;&gt;So it&#39;s also the Pin layout on the solder side of the Male DB-25 Cable Connector that plugs into it.&lt;/span&gt;&lt;/div&gt; &lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/4967562245120904198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/12/ibm-pc-parallel-printer-port.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4967562245120904198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4967562245120904198'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/12/ibm-pc-parallel-printer-port.html' title='IBM-PC Parallel Printer Port'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-3197492365508984617</id><published>2012-12-07T11:13:00.001-08:00</published><updated>2012-12-07T11:13:43.173-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Interfacing"/><title type='text'>I/O Port Access in Microsoft Visual C++</title><content type='html'>&lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;   &lt;div style=&quot;text-align: justify&quot;&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;#39;Times New Roman&amp;#39;,&amp;#39;serif&amp;#39;&quot;&gt;Microsoft Visual C/C++ provides access to the I/O ports on the 80x86 CPU via the predefined functions &lt;b&gt;_inp&lt;/b&gt; / &lt;b&gt;_inpw&lt;/b&gt; and &lt;b&gt;_outp&lt;/b&gt; / &lt;b&gt;_outpw&lt;/b&gt;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;/span&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;&quot;&gt;int _inp(unsigned &lt;i&gt;portid&lt;/i&gt;); /* returns a byte read from the I/O port &lt;i&gt;portid&lt;/i&gt; */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;&quot;&gt;unsigned _inpw(unsigned &lt;i&gt;portid&lt;/i&gt;); /* returns a word read from the I/O port &lt;i&gt;portid&lt;/i&gt; */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;&quot;&gt;int _outp(unsigned &lt;i&gt;portid&lt;/i&gt;,&amp;#160; /* writes the byte &lt;i&gt;value&lt;/i&gt; to the I/O port &lt;i&gt;portid&lt;/i&gt; */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;&quot;&gt;int &lt;i&gt;value&lt;/i&gt;);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /* returns the data actually written&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;&quot;&gt;unsigned _outpw(unsigned &lt;i&gt;portid&lt;/i&gt;,&amp;#160; /* writes the word &lt;i&gt;value&lt;/i&gt; to the I/O port &lt;i&gt;portid&lt;/i&gt; */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;&quot;&gt;unsigned &lt;i&gt;value&lt;/i&gt;);&amp;#160; /* returns the data actually written&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;i&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;#39;Times New Roman&amp;#39;,&amp;#39;serif&amp;#39;&quot;&gt;portid&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-size: 12pt; font-family: &amp;#39;Times New Roman&amp;#39;,&amp;#39;serif&amp;#39;&quot;&gt; can be any unsigned integer in the range 0-65535 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;&lt;/span&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;#include &lt;conio   .h=&quot;.h&quot;&gt;/* required only for function declarations */&lt;o:p&gt;&lt;/o:p&gt;&lt;/conio&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;#define Data&amp;#160;&amp;#160;&amp;#160; 0x378&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;#define Status&amp;#160; 0x379&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;#define Control 0x37a&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;int Bits,&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /* 0 &amp;lt;= Bits &amp;lt;= 255 */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;&amp;#160;&amp;#160;&amp;#160; Dummy;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&amp;#160;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700&quot;&gt;Dummy = _outp(Data,Bits); /* output data */&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;    &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0pt; line-height: normal&quot;&gt;&amp;#160;&lt;/div&gt;   &lt;span style=&quot;font-size: 10pt; font-family: &amp;#39;Courier New&amp;#39;; color: #007700; line-height: 115%&quot;&gt;Bits = _inp(Status);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /*&amp;#160; input data */&lt;/span&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/3197492365508984617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/12/io-port-access-in-microsoft-visual-c.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/3197492365508984617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/3197492365508984617'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/12/io-port-access-in-microsoft-visual-c.html' title='I/O Port Access in Microsoft Visual C++'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-4873133934277371944</id><published>2012-05-25T08:44:00.000-07:00</published><updated>2014-05-30T21:58:17.825-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>The Android Application Life Cycle</title><content type='html'>&lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/creating-applications-and-activities.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;Creating Applications and Activities&lt;/b&gt;&lt;/a&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Unlike most traditional environments, Android applications have no control over their own life cycles Instead, application components must listen for changes in the application state and react accordingly, taking particular care to be prepared for untimely termination.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;As mentioned before, by default, each Android application is run in its own process that’s running a separate instance of Dalvik. Memory and process management of each application is handled exclusively by the run time.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;i&gt;While uncommon, it’s possible to force application components within the same application to run in different processes or to have multiple applications share the same process using the android:process attribute on the affected component nodes within the manifest.&lt;/i&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Android aggressively manages its resources, doing whatever it takes to ensure that the device remains responsive. This means that processes (and their hosted applications) will be killed, without warning if necessary, to free resources for higher-priority applications — generally those that are interacting directly with the user at the time. The prioritization process is discussed in the next section.&lt;/div&gt;   &lt;b&gt;Understanding Application Priority and Process States&lt;/b&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;The order in which processes are killed to reclaim resources is determined by the priority of the hosted applications. An application’s priority is equal to its highest-priority component.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Where two applications have the same priority, the process that has been at a lower priority longest will be killed first. Process priority is also affected by interprocess dependencies; if an application has a dependency on a Service or Content Provider supplied by a second application, the secondary application will have at least as high a priority as the application it supports.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;i&gt;All Android applications will remain running and in memory until the system needs its resources for other applications.&lt;/i&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Figure 3-3 shows the priority tree used to determine the order of application termination.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdpsJPwqkIcs4xBZqjSYLpMdECkQubXbPZQkWF6JGU9y0MDyreBiGBEbVqwHjAYOSE5WQuo4T8wfqxiGHK6sP9IIheafxGdAtIqXWdENZK7NYOi66K_omDQ1ZsbNVt4PUZ6NXzhQfNMsSh/s1600-h/image%25255B4%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img style=&quot;background-image: none; border-right-width: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiimQAF8zL2RSYHqca1NlaNLqmdsav3m7F76Qd6obv0vO5p_ogI77_BQziPFqwmO5BvFm0-ayCzgqVmRFwXGRqymbW3L29dScIrZRPsf77fBjwQT3UG5ZGMHBOwLxh5OJMCSXcd5fiJhnjM/?imgmax=800&quot; width=&quot;259&quot; height=&quot;265&quot; /&gt;&lt;/a&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;It’s important to structure your application correctly to ensure that its priority is appropriate for the work it’s doing. If you don’t, your application could be killed while it’s in the middle of something important.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The following list details each of the application states shown in Figure 3-3, explaining how the state is determined by the application components comprising it:&lt;/div&gt;    &lt;ul&gt;     &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Active Processes&lt;/b&gt; Active (foreground) processes are those hosting applications with components currently interacting with the user. These are the processes Android is trying to keep responsive by reclaiming resources. There are generally very few of these processes, and they will be killed only as a last resort.&lt;/div&gt;        &lt;div align=&quot;justify&quot;&gt;Active processes include:&lt;/div&gt;        &lt;ul&gt;         &lt;li&gt;           &lt;div align=&quot;justify&quot;&gt;Activities in an “active” state; that is, they are in the foreground and responding to user events. You will explore Activity states in greater detail later in this chapter.&lt;/div&gt;         &lt;/li&gt;          &lt;li&gt;           &lt;div align=&quot;justify&quot;&gt;Activities, Services, or Broadcast Receivers that are currently executing an onReceive event handler.&lt;/div&gt;         &lt;/li&gt;          &lt;li&gt;           &lt;div align=&quot;justify&quot;&gt;Services that are executing an onStart, onCreate, or onDestroy event handler.&lt;/div&gt;         &lt;/li&gt;       &lt;/ul&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Visible Processes Visible, but inactive processes are those hosting “visible” Activities. As the name suggests, visible Activities are visible, but they aren’t in the foreground or responding to user events. This happens when an Activity is only partially obscured (by a non-full-screen or transparent Activity). There are generally very few visible processes, and they’ll only be killed in extreme circumstances to allow active processes to continue.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Started Service Processes Processes hosting Services that have been started. Services support ongoing processing that should continue without a visible interface. Because Services don’t interact directly with the user, they receive a slightly lower priority than visible Activities. They are still considered to be foreground processes and won’t be killed unless resources are needed for active or visible processes.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Background Processes Processes hosting Activities that aren’t visible and that don’t have any Services that have been started are considered background processes. There will generally be a large number of background processes that Android will kill using a last-seen-first-killed pattern to obtain resources for foreground processes.&lt;/div&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;div align=&quot;justify&quot;&gt;Empty Processes To improve overall system performance, Android often retains applications in memory after they have reached the end of their lifetimes. Android maintains this cache to improve the start-up time of applications when they’re re-launched. These processes are routinely killed as required.&lt;/div&gt;     &lt;/li&gt;   &lt;/ul&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Externalizing Resources&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;No matter what your development environment, it’s always good practice to keep non-code resources like images and string constants external to your code. Android supports the externalization of resources ranging from simple values such as strings and colors to more complex resources like images (drawables), animations, and themes. Perhaps the most powerful resources available for externalization are layouts.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;By externalizing resources, they become easier to maintain, update, and manage. This also lets you easily define alternative resource values to support different hardware and internationalization.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Among other things, this lets you change the layout based on the screen size and orientation and customize text prompts based on language and country.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Creating Resources&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Application resources are stored under the res/ folder of your project hierarchy. In this folder, each of the available resource types can have a subfolder containing its resources.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;If you start a project using the ADT wizard, it will create a res folder that contains subfolders for the values, drawable, and layout resources that contain the default layout, application icon, and string resource definitions, respectively, as shown in Figure 3-4.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNM18hyphenhyphenUAaHgDYD1DpAySN9Eqx_sivbn8sIxkUpILCK2E8JgdD8VAxhJWt2dosOARIGUi_lbLxaeAAr_5sOv8ekNn52P0dAPqT52_JEHOJSANmn2QpI04kT-bmntLsdXvQ2PbAoWGY4mtY/s1600-h/image%25255B4%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img style=&quot;background-image: none; border-right-width: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCQ8XwgCuEN4jv2RQCQsJd3pexo_vTVTeg2dvRxg8sVPl9VrDdPNa2p4bRp-z5qUU8Qz3QBlH_XQjUzgRlYT6XbTGtaXHiNNiXBQkqVC3HzxJB9PYeIXNdPMEQcN-wUzt6kbHK3JZii2f3/?imgmax=800&quot; width=&quot;144&quot; height=&quot;204&quot; /&gt;&lt;/a&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;There are seven primary resource types that have different folders: simple values, drawables, layouts, animations, XML, styles, and raw resources. When your application is built, these resources will be compiled as efficiently as possible and included in your application package.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;This process also creates an R class fi le that contains references to each of the resources you include in your project. This lets you reference the resources in your code, with the advantage of design time syntax checking.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;The following sections describe the specific resource types available within these categories and how to create them for your applications.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;In all cases, the resource filenames should contain only lowercase letters, numbers, and the period (.) and underscore (_) symbols.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Creating Simple Values&lt;/b&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Supported simple values include strings, colors, dimensions, and string or integer arrays. All simple values are stored within XML fi les in the res/values folder.&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;Within each XML fi le, you indicate the type of value being stored using tags as shown in the sample XML fi le below:&lt;/div&gt;   &lt;span style=&quot;font-family: georgia; color: #9e7c7c&quot;&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;      &lt;br /&gt;&amp;lt;resources&amp;gt;       &lt;br /&gt;&amp;lt;string name=”app_name”&amp;gt;To Do List&amp;lt;/string&amp;gt;       &lt;br /&gt;&amp;lt;color name=”app_background”&amp;gt;#FF0000FF&amp;lt;/color&amp;gt;       &lt;br /&gt;&amp;lt;dimen name=”default_border”&amp;gt;5px&amp;lt;/dimen&amp;gt;       &lt;br /&gt;&amp;lt;array name=”string_array”&amp;gt;       &lt;br /&gt;&amp;lt;item&amp;gt;Item 1&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;item&amp;gt;Item 2&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;item&amp;gt;Item 3&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;/array&amp;gt;       &lt;br /&gt;&amp;lt;array name=”integer_array”&amp;gt;       &lt;br /&gt;&amp;lt;item&amp;gt;3&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;item&amp;gt;2&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;item&amp;gt;1&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;/array&amp;gt;       &lt;br /&gt;&amp;lt;/resources&amp;gt;&lt;/span&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;This example includes all of the simple value types. By convention, resources are separated into separate files for each type; for example, res/values/strings.xml would contain only string resources.&lt;/div&gt; The following sections detail the options for defining simple resources.     &lt;br /&gt;&lt;b&gt;Strings&lt;/b&gt;     &lt;br /&gt;Externalizing your strings helps maintain consistency within your application and makes it much easier to create localized versions.     &lt;br /&gt;String resources are specified using the string tag as shown in the following XML snippet:     &lt;br /&gt;&lt;span style=&quot;font-family: georgia; color: #9e7c7c&quot;&gt;&amp;lt;string name=”stop_message”&amp;gt;Stop.&amp;lt;/string&amp;gt;&lt;/span&gt;     &lt;br /&gt;    &lt;div align=&quot;justify&quot;&gt;Android supports simple text styling, so you can use the HTML tags &amp;lt;b&amp;gt;, &amp;lt;i&amp;gt;, and &amp;lt;u&amp;gt; to apply bold, italics, or underlining to parts of your text strings as shown in the example below:&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;span style=&quot;color: #9e7c7c&quot;&gt;&amp;lt;string name=”stop_message”&amp;gt;&amp;lt;b&amp;gt;Stop.&amp;lt;/b&amp;gt;&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;You can use resource strings as input parameters for the String.format method. However, String.format does not support the text styling described above. To apply styling to a format string, you have to escape the HTML tags when creating your resource, as shown below:&lt;/div&gt;    &lt;div align=&quot;justify&quot;&gt;&lt;span style=&quot;font-family: georgia; color: #9e7c7c&quot;&gt;&amp;lt;string name=”stop_message”&amp;gt;&amp;amp;lt;b&amp;gt;Stop&amp;amp;lt;/b&amp;gt;. %1$s&amp;lt;/string&amp;gt;&lt;/span&gt;&lt;/div&gt;    &lt;p&gt;Within your code, use the Html.fromHtml method to convert this back into a styled character sequence:&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;String rString = getString(R.string.stop_message);      &lt;br /&gt;String fString = String.format(rString, “Collaborate and listen.”);       &lt;br /&gt;CharSequence styledString = Html.fromHtml(fString);&lt;/font&gt;&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Colors&lt;/strong&gt;     &lt;br /&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;Use the color tag to define a new color resource. Specify the color value using a # symbol followed by the (optional) alpha channel, then the red, green, and blue values using one or two hexadecimal numbers with any of the following notations:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;#RGB&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;#RRGGBB&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;#ARGB&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;#ARRGGBB&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;The following example shows how to specify a fully opaque blue and a partially transparent green:&lt;/div&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;color name=”opaque_blue”&amp;gt;#00F&amp;lt;/color&amp;gt;      &lt;br /&gt;&amp;lt;color name=”transparent_green”&amp;gt;#7700FF00&amp;lt;/color&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Dimensions&lt;/strong&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;Dimensions are most commonly referenced within style and layout resources. They’re useful for creating layout constants such as borders and font heights.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;To specify a dimension resource, use the dimen tag, specifying the dimension value, followed by an identifier describing the scale of your dimension:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;px Screen pixels&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;in Physical inches&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;pt Physical points&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;mm Physical millimeters&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;dp Density-independent pixels relative to a 160-dpi screen&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;sp Scale-independent pixels&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;These alternatives let you define a dimension not only in absolute terms, but also using relative scales that account for different screen resolutions and densities to simplify scaling on different hardware.&lt;/p&gt;  &lt;p&gt;The following XML snippet shows how to specify dimension values for a large font size and a standard border:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;dimen name=”standard_border”&amp;gt;5px&amp;lt;/dimen&amp;gt;      &lt;br /&gt;&amp;lt;dimen name=”large_font_size”&amp;gt;16sp&amp;lt;/dimen&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Styles and Themes&lt;/strong&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;Style resources let your applications maintain a consistent look and feel by specifying the attribute values used by Views. The most common use of themes and styles is to store the colors and fonts for an application.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;To create a style, use a style tag that includes a name attribute, and contains one or more item tags. Each item tag should include a name attribute used to specify the attribute (such as font size or color) being defined. The tag itself should then contain the value, as shown in the skeleton code below:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;      &lt;br /&gt;&amp;lt;resources&amp;gt;       &lt;br /&gt;&amp;lt;style name=”StyleName”&amp;gt;       &lt;br /&gt;&amp;lt;item name=”attributeName”&amp;gt;value&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;/style&amp;gt;       &lt;br /&gt;&amp;lt;/resources&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Styles support inheritance using the parent attribute on the style tag, making it easy to create simple variations.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The following example shows two styles that can also be used as a theme; a base style that sets several text properties and a second style that modifies the first to specify a smaller font.&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;      &lt;br /&gt;&amp;lt;resources&amp;gt;       &lt;br /&gt;&amp;lt;style name=”BaseText”&amp;gt;       &lt;br /&gt;&amp;lt;item name=”android:textSize”&amp;gt;14sp&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;item name=”android:textColor”&amp;gt;#111&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;/style&amp;gt;       &lt;br /&gt;&amp;lt;style name=”SmallText” parent=”BaseText”&amp;gt;       &lt;br /&gt;&amp;lt;item name=”android:textSize”&amp;gt;8sp&amp;lt;/item&amp;gt;       &lt;br /&gt;&amp;lt;/style&amp;gt;       &lt;br /&gt;&amp;lt;/resources&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; align=&quot;justify&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Drawables&lt;/strong&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;Drawable resources include bitmaps and NinePatch (stretchable PNG) images. They are stored as individual files in the res/drawable folder.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The resource identifier for a bitmap resource is the lowercase filename without an extension.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;em&gt;The preferred format for a bitmap resource is PNG, although JPG and GIF fi les are also supported.&lt;/em&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;NinePatch (or stretchable) images are PNG fi les that mark the parts of an image that can be stretched. NinePatch images must be properly defi ned PNG files that end in .9.png. The resource identifier for NinePatches is the filename without the trailing .9.png.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;A NinePatch is a variation of a PNG image that uses a 1-pixel border to defi ne the area of the image that can be stretched if the image is enlarged. To create a NinePatch, draw single-pixel black lines that represent stretchable areas along the left and top borders of your image. The unmarked sections won’t be resized, and the relative size of each of the marked sections will remain the same as the image size changes.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;em&gt;NinePatches are a powerful technique for creating images for the backgrounds of Views or Activities that may have a variable size; for example, Android uses NinePatches for creating button backgrounds.&lt;/em&gt;&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; align=&quot;justify&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Layouts&lt;/strong&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;Layout resources let you decouple your presentation layer by designing user-interface layouts in XML rather than constructing them in code.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The most common use of a layout is to define the user interface for an Activity. Once defined in XML, the layout&amp;#160; is “inflated” within an Activity using setContentView, usually within the onCreate method.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;You can also reference layouts from within other layout resources, such as layouts for each row in a List View.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Using layouts to create your screens is best-practice UI design in Android. The decoupling of the layout from the code lets you create optimized layouts for different hardware configurations, such as varying screen sizes, orientation, or the presence of keyboards and touch screens.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Each layout definition is stored in a separate fi le, each containing a single layout, in the res/layout folder. The filename then becomes the resource identifier.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;A thorough explanation of layout containers and View elements is included in the next chapter, but as an example, the following code snippet shows the layout created by the New Project Wizard. It uses a LinearLayout as a layout container for a TextView that displays the “Hello World” greeting.&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;     &lt;br /&gt;&amp;lt;LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”      &lt;br /&gt;android:orientation=”vertical”      &lt;br /&gt;android:layout_width=”fill_parent”      &lt;br /&gt;android:layout_height=”fill_parent”&amp;gt;      &lt;br /&gt;&amp;lt;TextView      &lt;br /&gt;android:layout_width=”fill_parent”      &lt;br /&gt;android:layout_height=”wrap_content”      &lt;br /&gt;android:text=”Hello World!”      &lt;br /&gt;/&amp;gt;      &lt;br /&gt;&amp;lt;/LinearLayout&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; align=&quot;justify&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Animations&lt;/strong&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;Android supports two types of animation. Tweened animations can be used to rotate, move, stretch, and fade a View; or you can create frame-by-frame animations to display a sequence of drawable images.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Defining animations as external resources allows you to reuse the same sequence in multiple places and provides you with the opportunity to present an alternative animation based on device hardware or orientation.&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; align=&quot;justify&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Tweened Animations&lt;/strong&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;Each tweened animation is stored in a separate XML fi le in the project’s res/anim folder. As with layouts and drawable resources, the animation’s filename is used as its resource identifier.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;An animation can be defined for changes in alpha (fading), scale (scaling), translate (moving), or rotate (rotating).&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; align=&quot;justify&quot; trbidi=&quot;on&quot;&gt;Each of these animation types supports attributes to define what the sequence will do:&lt;/div&gt;  &lt;p&gt;   &lt;table border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;637&quot;&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign=&quot;top&quot; width=&quot;62&quot;&gt;&lt;strong&gt;Alpha&lt;/strong&gt;&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;153&quot;&gt;fromAlpha and toAlpha&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;420&quot;&gt;Float from 0 to 1&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign=&quot;top&quot; width=&quot;62&quot;&gt;&lt;strong&gt;Scale&lt;/strong&gt;&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;153&quot;&gt;fromXScale/toXScale           &lt;br /&gt;fromYScale/toYScale            &lt;br /&gt;pivotX/pivotY&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;420&quot;&gt;Float from 0 to 1           &lt;br /&gt;Float from 0 to 1            &lt;br /&gt;String of the percentage of graphic width/height from 0% to 100%&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign=&quot;top&quot; width=&quot;62&quot;&gt;&lt;strong&gt;Translate&lt;/strong&gt;&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;153&quot;&gt;fromX/toX           &lt;br /&gt;fromY/toY&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;420&quot;&gt;Float from 0 to 1           &lt;br /&gt;Float from 0 to 1&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign=&quot;top&quot; width=&quot;62&quot;&gt;&lt;strong&gt;Rotate&lt;/strong&gt;&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;153&quot;&gt;fromDegrees/toDegrees           &lt;br /&gt;pivotX/pivotY&lt;/td&gt;          &lt;td valign=&quot;top&quot; width=&quot;420&quot;&gt;Float from 0 to 360           &lt;br /&gt;String of the percentage of graphic width/height from 0% to 100%&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;You can create a combination of animations using the set tag. An animation set contains one or more animation transformations and supports various additional tags and attributes to customize when and how each animation within the set is run.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The following list shows some of the set tags available:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;&lt;strong&gt;duration&lt;/strong&gt; Duration of the animation in milliseconds.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;&lt;strong&gt;startOffset&lt;/strong&gt; Millisecond delay before starting this animation.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;&lt;strong&gt;fillBefore&lt;/strong&gt; True to apply the animation transformation before it begins.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;&lt;strong&gt;fillAfter&lt;/strong&gt; True to apply the animation transformation after it begins.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;interpolator&lt;/strong&gt; Interpolator to set how the speed of this effect varies over time. To specify an interpolator, reference the system animation resources at android:anim/interpolatorName.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;em&gt;If you do not use the startOffset tag, all the animation effects within a set will execute simultaneously.&lt;/em&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The following example shows an animation set that spins the target 360 degrees while it shrinks and fades out:&lt;/p&gt;  &lt;p&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;   &lt;br /&gt;&amp;lt;set xmlns:android=”http://schemas.android.com/apk/res/android”    &lt;br /&gt;android:interpolator=”@android:anim/accelerate_interpolator”&amp;gt;    &lt;br /&gt;&amp;lt;rotate    &lt;br /&gt;android:fromDegrees=”0”    &lt;br /&gt;android:toDegrees=”360”    &lt;br /&gt;android:pivotX=”50%”    &lt;br /&gt;android:pivotY=”50%”    &lt;br /&gt;android:startOffset=”500”    &lt;br /&gt;android:duration=”1000” /&amp;gt;    &lt;br /&gt;&amp;lt;scale    &lt;br /&gt;android:fromXScale=”1.0”    &lt;br /&gt;android:toXScale=”0.0”    &lt;br /&gt;android:fromYScale=”1.0”    &lt;br /&gt;android:toYScale=”0.0”    &lt;br /&gt;android:pivotX=”50%”    &lt;br /&gt;android:pivotY=”50%”    &lt;br /&gt;android:startOffset=”500”    &lt;br /&gt;android:duration=”500” /&amp;gt;    &lt;br /&gt;&amp;lt;alpha    &lt;br /&gt;android:fromAlpha=”1.0”    &lt;br /&gt;android:toAlpha=”0.0”    &lt;br /&gt;android:startOffset=”500”    &lt;br /&gt;android:duration=”500” /&amp;gt;    &lt;br /&gt;&amp;lt;/set&amp;gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Frame-by-Frame Animations&lt;/strong&gt;    &lt;br /&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Frame-by-frame animations let you create a sequence of drawables, each of which will be displayed for a specified duration, on the background of a View.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Because frame-by-frame animations represent animated drawables, they are stored in the res/drawble folder, rather than with the tweened animations, and use their filenames (without the xml extension) as their resource IDs.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The following XML snippet shows a simple animation that cycles through a series of bitmap resources, displaying each one for half a second. In order to use this snippet, you will need to create new image resources rocket1 through rocket3.&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;animation-list     &lt;br /&gt;xmlns:android=”http://schemas.android.com/apk/res/android”      &lt;br /&gt;android:oneshot=”false”&amp;gt;      &lt;br /&gt;&amp;lt;item android:drawable=”@drawable/rocket1” android:duration=”500” /&amp;gt;      &lt;br /&gt;&amp;lt;item android:drawable=”@drawable/rocket2” android:duration=”500” /&amp;gt;      &lt;br /&gt;&amp;lt;item android:drawable=”@drawable/rocket3” android:duration=”500” /&amp;gt;      &lt;br /&gt;&amp;lt;/animation-list&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Using Resources     &lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;As well as the resources you create, Android supplies several system resources that you can use in your applications. The resources can be used directly from your application code and can also be referenced from within other resources (e.g., a dimension resource might be referenced in a layout definition).&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It’s important to note that when using resources you cannot choose a particular specialized version. Android will automatically select the most appropriate value for a given resource identifier based on the current hardware and device settings.&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; align=&quot;justify&quot; trbidi=&quot;on&quot;&gt;&lt;strong&gt;Using Resources in Code     &lt;br /&gt;&lt;/strong&gt;&lt;/div&gt;  &lt;p align=&quot;justify&quot;&gt;You access resources in code using the static R class. R is a generated class based on your external resources and created by compiling your project. The R class contains static subclasses for each of the resource types for which you’ve defined at least one resource. For example, the default new project includes the R.string and R.drawable subclasses.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;em&gt;If you are using the ADT plug-in in Eclipse, the R class will be created automatically when you make any change to an external resource fi le or folder. If you are not using the plug-in, use the AAPT tool to compile your project and generate the R class. R is a compiler-generated class, so don’t make any manual modifications to it as they will be lost when the fi le is regenerated.&lt;/em&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Each of the subclasses within R exposes its associated resources as variables, with the variable names matching the resource identifiers — for example, R.string.app_name or R.drawable.icon.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The value of these variables is a reference to the corresponding resource’s location in the resource table, not an instance of the resource itself.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Where a constructor or method, such as setContentView, accepts a resource identifier, you can pass in the resource variable, as shown in the code snippet below:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;// Inflate a layout resource.     &lt;br /&gt;setContentView(R.layout.main);      &lt;br /&gt;// Display a transient dialog box that displays the      &lt;br /&gt;// error message string resource.      &lt;br /&gt;Toast.makeText(this, R.string.app_error, Toast.LENGTH_LONG).show();&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;When you need an instance of the resource itself, you’ll need to use helper methods to extract them from the resource table, represented by an instance of the Resources class.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Because these methods perform lookups on the application’s resource table, these helper methods can’t be static. Use the getResources method on your application context as shown in the snippet below to access your application’s Resource instance:&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;Resources myResources = getResources();&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The Resources class includes getters for each of the available resource types and generally works by passing in the resource ID you’d like an instance of. The following code snippet shows an example of using the helper methods to return a selection of resource values:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;Resources myResources = getResources();     &lt;br /&gt;CharSequence styledText = myResources.getText(R.string.stop_message);      &lt;br /&gt;Drawable icon = myResources.getDrawable(R.drawable.app_icon);      &lt;br /&gt;int opaqueBlue = myResources.getColor(R.color.opaque_blue);      &lt;br /&gt;float borderWidth = myResources.getDimension(R.dimen.standard_border);      &lt;br /&gt;Animation tranOut;      &lt;br /&gt;tranOut = AnimationUtils.loadAnimation(this, R.anim.spin_shrink_fade);      &lt;br /&gt;String[] stringArray;      &lt;br /&gt;stringArray = myResources.getStringArray(R.array.string_array);      &lt;br /&gt;int[] intArray = myResources.getIntArray(R.array.integer_array);&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Frame-by-frame animated resources are infl ated into AnimationResources. You can return the value using getDrawable and casting the return value as shown below:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;AnimationDrawable rocket;     &lt;br /&gt;rocket = (AnimationDrawable)myResources.getDrawable(R.drawable.frame_by_frame);&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#4f81bd&quot;&gt;&lt;em&gt;At the time of going to print, there is a bug in the AnimationDrawable class. Currently, AnimationDrawable resources are not properly loaded until some time after an Activity’s onCreate method has completed. Current work-arounds use timers to force a delay before loading a frame-by-frame resource.&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;  &lt;div style=&quot;text-align: left&quot; dir=&quot;ltr&quot; align=&quot;justify&quot; trbidi=&quot;on&quot;&gt;   &lt;br /&gt;    &lt;br /&gt;to be continued . . . . . .     &lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin:0px; padding:0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt; &lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;http://tweetmeme.com/i/scripts/button.js&quot;&gt;&lt;/script&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/4873133934277371944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/the-android-application-life-cycle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4873133934277371944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4873133934277371944'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/the-android-application-life-cycle.html' title='The Android Application Life Cycle'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEiimQAF8zL2RSYHqca1NlaNLqmdsav3m7F76Qd6obv0vO5p_ogI77_BQziPFqwmO5BvFm0-ayCzgqVmRFwXGRqymbW3L29dScIrZRPsf77fBjwQT3UG5ZGMHBOwLxh5OJMCSXcd5fiJhnjM/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-7905156316870978693</id><published>2012-05-24T08:31:00.000-07:00</published><updated>2014-05-30T21:58:17.855-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Creating Applications and Activities</title><content type='html'>&lt;p&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/android-development-tools.html&quot; target=&quot;_blank&quot;&gt;previous &lt;strong&gt;Android Development Tools&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Before you start writing Android applications, it’s important to understand how they’re constructed and have an understanding of the Android application life cycle. In this chapter, you’ll be introduced to the loosely coupled components that make up Android applications (and how they’re bound together using the Android manifest). Next you’ll see how and why you should use external resources, before getting an introduction to the Activity component.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;In recent years, there’s been a move toward development frameworks featuring managed code, such as the Java virtual machine and the .NET Common Language Runtime.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Mobile devices now come in many shapes and sizes and are used internationally. In this chapter, you’ll learn how to give your applications the flexibility to run seamlessly on different hardware, in different countries, and using multiple languages by externalizing resources.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Next you’ll examine the Activity component. Arguably the most important of the Android building blocks, the Activity class forms the basis for all your user interface screens. You’ll learn how to create new Activities and gain an understanding of their life cycles and how they affect the application lifetime.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Finally, you’ll be introduced to some of the Activity subclasses that wrap up resource management for some common user interface components such as maps and lists.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;What Makes an Android Application?&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android applications consist of loosely coupled components, bound using a project manifest that describes each component and how they interact.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;There are six components that provide the building blocks for your applications:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Activities&lt;/strong&gt; Your application’s presentation layer. Every screen in your application will be an extension of the Activity class. Activities use Views to form graphical user interfaces that display information and respond to user actions. In terms of desktop development, an Activity is equivalent to a Form.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Services&lt;/strong&gt; The invisible workers of your application. Service components run invisibly, updating your data sources and visible Activities and triggering Notifications. They’re used to perform regular processing that needs to continue even when your application’s Activities aren’t active or visible.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Content Providers&lt;/strong&gt; A shareable data store. Content Providers are used to manage and share application databases. Content Providers are the preferred way of sharing data across application boundaries. This means that you can configure your own Content Providers to permit access from other applications and use Content Providers exposed by others to access their stored data. Android devices include several native Content Providers that expose useful databases like contact information.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Intents&lt;/strong&gt; A simple message-passing framework. Using Intents, you can broadcast messages system- wide or to a target Activity or Service, stating your intention to have an action performed. The system will then determine the target(s) that will perform any actions as appropriate.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Broadcast Receivers&lt;/strong&gt; Intent broadcast consumers. By creating and registering a Broadcast Receiver, your application can listen for broadcast Intents that match specific filter criteria. Broadcast Receivers will automatically start your application to respond to an incoming Intent, making them ideal for event-driven applications.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;Notifications A user notification framework. Notifications let you signal users without stealing focus or interrupting their current Activities. They’re the preferred technique for getting a user’s attention from within a Service or Broadcast Receiver. For example, when a device receives a text message or an incoming call, it alerts you by flashing lights, making sounds, displaying icons, or showing dialog messages. You can trigger these same events from your own applications using Notifications.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;By decoupling the dependencies between application components, you can share and interchange individual pieces, such as Content Providers or Services, with other applications — both your own and those of third parties.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Introducing the Application Manifest&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Each Android project includes a manifest fi le, AndroidManifest.xml, stored in the root of the project hierarchy. The manifest lets you define the structure and metadata of your application and its components.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It includes nodes for each of the components (Activities, Services, Content Providers, and Broadcast Receivers) that make up your application and, using Intent Filters and Permissions, determines how they interact with each other and other applications.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It also offers attributes to specify application metadata (like its icon or theme), and additional top-level nodes can be used for security settings and unit tests as described below.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The manifest is made up of a root manifest tag with a package attribute set to the project’s package. It usually includes an xmlns:android attribute that supplies several system attributes used within the file. A typical manifest node is shown in the XML snippet below:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;manifest xmlns:android=http://schemas.android.com/apk/res/android      &lt;br /&gt;package=”com.my_domain.my_app”&amp;gt;       &lt;br /&gt;[ ... manifest nodes ... ]       &lt;br /&gt;&amp;lt;/manifest&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The manifest tag includes nodes that define the application components, security settings, and test classes that make up your application. The following list gives a summary of the available manifest node tags, and an XML snippet demonstrating how each one is used:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;application A manifest can contain only one application node. It uses attributes to specify the metadata for your application (including its title, icon, and theme). It also acts as a container that includes the Activity, Service, Content Provider, and Broadcast Receiver tags used to specify the application components.        &lt;br /&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;application android:icon=”@drawable/icon”          &lt;br /&gt;android:theme=”@style/my_theme”&amp;gt;           &lt;br /&gt;[ ... application nodes ... ]           &lt;br /&gt;&amp;lt;/application&amp;gt;&lt;/font&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;activity An activity tag is required for every Activity displayed by your application, using the android:name attribute to specify the class name. This must include the main launch Activity and any other screen or dialogs that can be displayed. Trying to start an Activity that’s not defi ned in the manifest will throw a runtime exception. Each Activity node supports intent-filter child tags that specify which Intents launch the Activity.        &lt;br /&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;activity android:name=”.MyActivity” android:label=”@string/app_name”&amp;gt;          &lt;br /&gt;&amp;lt;intent-filter&amp;gt;           &lt;br /&gt;&amp;lt;action android:name=”android.intent.action.MAIN” /&amp;gt;           &lt;br /&gt;&amp;lt;category android:name=”android.intent.category.LAUNCHER” /&amp;gt;           &lt;br /&gt;&amp;lt;/intent-filter&amp;gt;           &lt;br /&gt;&amp;lt;/activity&amp;gt;&lt;/font&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;service As with the activity tag, create a new service tag for each Service class used in your application. Service tags also support intent-filter child tags to allow late runtime binding.        &lt;br /&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;service android:enabled=”true” android:name=”.MyService”&amp;gt;&amp;lt;/service&amp;gt;&lt;/font&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;provider Provider tags are used for each of your application’s Content Providers. Content Providers are used to manage database access and sharing within and between applications.        &lt;br /&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;provider android:permission=”com.paad.MY_PERMISSION”          &lt;br /&gt;android:name=”.MyContentProvider”           &lt;br /&gt;android:enabled=”true”           &lt;br /&gt;android:authorities=”com.paad.myapp.MyContentProvider”&amp;gt;           &lt;br /&gt;&amp;lt;/provider&amp;gt;&lt;/font&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;receiver By adding a receiver tag, you can register a Broadcast Receiver without having to launch your application first. As you’ll see in Chapter 5, Broadcast Receivers are like global event listeners that, once registered, will execute whenever a matching Intent is broadcast by an application. By registering a Broadcast Receiver in the manifest, you can make this process entirely autonomous. If a matching Intent is broadcast, your application will be started automatically and the registered Broadcast Receiver will be run.        &lt;br /&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;receiver android:enabled=”true”          &lt;br /&gt;android:label=”My Broadcast Receiver”           &lt;br /&gt;android:name=”.MyBroadcastReceiver”&amp;gt;           &lt;br /&gt;&amp;lt;/receiver&amp;gt;&lt;/font&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;uses-permission As part of the security model, uses-permission tags declare the permissions you’ve determined that your application needs for it to operate properly. The permissions you include will be presented to the user, to grant or deny, during installation. Permissions are required for many of the native Android services, particularly those with a cost or security implication (such as dialing, receiving SMS, or using the location-based services). As shown in the item below, third-party applications, including your own, can also specify permissions before providing access to shared application components.        &lt;br /&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;uses-permission android:name=”android.permission.ACCESS_LOCATION”&amp;gt;          &lt;br /&gt;&amp;lt;/uses-permission&amp;gt;&lt;/font&gt;&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;permission Before you can restrict access to an application component, you need to define a permission in the manifest. Use the permission tag to create these permission definitions. Application components can then require them by adding the android:permission attribute. Other applications will then need to include a uses-permission tag in their manifests (and have it granted) before they can use these protected components. &lt;/p&gt;      &lt;p&gt;Within the permission tag, you can specify the level of access the permission will permit (normal, dangerous, signature, signature Or System), a label, and an external resource containing the description that explain the risks of granting this permission.&lt;/p&gt;     &lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;permission android:name=”com.paad.DETONATE_DEVICE”        &lt;br /&gt;android:protectionLevel=”dangerous”         &lt;br /&gt;android:label=”Self Destruct”         &lt;br /&gt;android:description=”@string/detonate_description”&amp;gt;         &lt;br /&gt;&amp;lt;/permission&amp;gt;&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;instrumentation Instrumentation classes provide a framework for running tests on your Activities and Services at run time. They provide hooks to monitor your application and its interaction with the system resources. Create a new node for each of the test classes you’ve created for your application.       &lt;br /&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;instrumentation android:label=”My Test”         &lt;br /&gt;android:name=”.MyTestClass”          &lt;br /&gt;android:targetPackage=”com.paad.aPackage”&amp;gt;          &lt;br /&gt;&amp;lt;/instrumentation&amp;gt;&lt;/font&gt;&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;A more detailed description of the manifest and each of these nodes can be found at   &lt;br /&gt;http://code.google.com/android/devel/bblocks-manifest.html    &lt;br /&gt;The ADT New Project Wizard automatically creates a new manifest fi le when it creates a new project.    &lt;br /&gt;You’ll return to the manifest as each of the application components is introduced.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Using the Manifest Editor&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The ADT plug-in includes a visual Manifest Editor to manage your manifest, rather than your having to manipulate the underlying XML directly.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;To use the Manifest Editor in Eclipse, right-click the AndroidManifest.xml fi le in your project folder, and select &lt;strong&gt;Open With ➪ Android Manifest Editor&lt;/strong&gt;. This presents the Android Manifest Overview screen, as shown in Figure 3-1. This gives you a high-level view of your application structure and provides shortcut links to the Application, Permissions, Instrumentation, and raw XML screens.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj93QkLB1eEr-DGZFkAeeSKW3L_hqgJ5aQCbbyq_onE7GO9smX71yRDaoWeREw_hCMtLKE3h5SAvxmTzVt6FM6gwY5bPPvQXbW1aYWj98x5l8Uh0VG7rOrUTopwUqqrIARVw5MKVUbtuUSI/s1600-h/image%25255B3%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5lmWMsuG2Jd5AOHgFvdOrgRIMz8KSCXgUgBTrX1x5Cn8oMk8q4KUotRIVFGDfBq2UbWD8clvw4WmqxDpn_5kgA4-_12Y2XNUdRzS-2BSnZb1l68cylspmcixaczthMzSsP8hX40MQTmsQ/?imgmax=800&quot; width=&quot;502&quot; height=&quot;450&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Each of the next three tabs contains a visual interface for managing the application, security, and instrumentation (testing) settings, while the last tag (using the manifest’s fi lename) gives access to the raw XML.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Of particular interest is the Application tab, shown in Figure 3-2. Use it to manage the application node and the application component hierarchy, where you specify the application components.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmQEV5Lr7_etqQ2rpcR886xVIqXKPq2RQg2XaYtEXXhd92_uu6j-Dj444MTitB7hPYZpLH3aHneZWOi0SLHDTT304fgGdcTxAzZbuMLIul5_FyH5JeOOe8lBmyI4_lI7sKPsRBfyQ0DIsg/s1600-h/image%25255B8%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpqu_htkO9uqeRLlEDF60FYwJkr5H03fhezGeqgsXrj3FUr_BT-nGi2ruCvAuG5_Pu9MQMld8psuA2ny3PUpzBQZp7t-9wfEkzVEax5XFmphkK5qZNggoJEdIJYdUULSlvWDuiROLAaUgS/?imgmax=800&quot; width=&quot;545&quot; height=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;You can specify an application’s attributes — including its Icon, Label, and Theme — in the Application Attributes panel. The Application Nodes tree beneath it lets you manage the application components, including their attributes and any associated Intent Filter subnodes.&lt;/p&gt;  &lt;p&gt;next&lt;strong&gt; The Android Application Life Cycle&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin:0px; padding:0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt; &lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;http://tweetmeme.com/i/scripts/button.js&quot;&gt;&lt;/script&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/7905156316870978693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/creating-applications-and-activities.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/7905156316870978693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/7905156316870978693'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/creating-applications-and-activities.html' title='Creating Applications and Activities'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEg5lmWMsuG2Jd5AOHgFvdOrgRIMz8KSCXgUgBTrX1x5Cn8oMk8q4KUotRIVFGDfBq2UbWD8clvw4WmqxDpn_5kgA4-_12Y2XNUdRzS-2BSnZb1l68cylspmcixaczthMzSsP8hX40MQTmsQ/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-3957954787615874143</id><published>2012-05-21T10:16:00.000-07:00</published><updated>2014-05-30T21:58:17.810-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Android Development Tools</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/developing-for-android.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;Developing for Android&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The Android SDK includes several tools and utilities to help you create, test, and debug your projects. A detailed examination of each developer tool is outside the scope of this book, but it’s worth briefly reviewing what’s available. For more detail than is included here, check out the Android documentation at:&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;http://code.google.com/android/intro/tools.html&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;As mentioned earlier, the ADT plug-in conveniently incorporates most of these tools into the Eclipse IDE, where you can access them from the DDMS perspective, including:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;The Android Emulator&lt;/b&gt; An implementation of the Android virtual machine designed to run on your development computer. You can use the emulator to test and debug your android applications.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Dalvik Debug Monitoring Service (DDMS)&lt;/b&gt; Use the DDMS perspective to monitor and control the Dalvik virtual machines on which you’re debugging your applications.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;b&gt;Android Asset Packaging Tool (AAPT)&lt;/b&gt; Constructs the distributable Android package fi les (.apk).&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Android Debug Bridge (ADB)&lt;/b&gt; The ADB is a client-server application that provides a link to a running emulator. It lets you copy fi les, install compiled application packages (.apk), and run shell commands.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;The following additional tools are also available:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;SQLite3&lt;/b&gt; A database tool that you can use to access the SQLite database fi les created and used by Android&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Traceview&lt;/b&gt; Graphical analysis tool for viewing the trace logs from your Android application&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;b&gt;MkSDCard&lt;/b&gt; Creates an SDCard disk image that can be used by the emulator to simulate an external storage card.&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     &lt;b&gt;dx&lt;/b&gt; Converts Java .class bytecode into Android .dex bytecode.&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     &lt;b&gt;activityCreator&lt;/b&gt; Script that builds Ant build fi les that you can then use to compile your Android applications without the ADT plug-in&lt;br /&gt;   &lt;/li&gt;&lt;/ul&gt;Let’s take a look at some of the more important tools in more detail.&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;The Android Emulator&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The emulator is the perfect tool for testing and debugging your applications, particularly if you don’t have a real device (or don’t want to risk it) for experimentation.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The emulator is an implementation of the Dalvik virtual machine, making it as valid a platform for running Android applications as any Android phone. Because it’s decoupled from any particular hardware, it’s an excellent baseline to use for testing your applications.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;A number of alternative user interfaces are available to represent different hardware configurations, each with different screen sizes, resolutions, orientations, and hardware features to simulate a variety of mobile device types.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Full network connectivity is provided along with the ability to tweak the Internet connection speed and latency while debugging your applications. You can also simulate placing and receiving voice calls and SMS messages.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The ADT plug-in integrates the emulator into Eclipse so that it’s launched automatically when you run or debug your projects. If you aren’t using the plug-in or want to use the emulator outside of Eclipse, you can telnet into the emulator and control it from its console. For more details on controlling the emulator, check the documentation at http://code.google.com/android/reference/emulator.html.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;At this stage, the emulator doesn’t implement all the mobile hardware features supported by Android, including the camera, vibration, LEDs, actual phone calls, the accelerometer, USB connections, Bluetooth, audio capture, battery charge level, and SD card insertion/ejection.&lt;/i&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Dalvik Debug Monitor Service (DDMS)&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The emulator lets you see how your application will look, behave, and interact, but to really see what’s happening under the surface, you need the DDMS. The Dalvik Debug Monitoring Service is a powerful debugging tool that lets you interrogate active processes, view the stack and heap, watch and pause active threads, and explore the filesystem of any active emulator.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The DDMS perspective in Eclipse also provides simplified access to screen captures of the emulator and the logs generated by LogCat.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If you’re using the ADT plug-in, the DDMS is fully integrated into Eclipse and is available from the DDMS perspective. If you aren’t using the plug-in or Eclipse, you can run DDMS from the command line, and it will automatically connect to any emulator that’s running.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;The Android Debug Bridge (ADB)&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The Android debug bridge (ADB) is a client-service application that lets you connect with an Android Emulator or device. It’s made up of three components: a daemon running on the emulator, a service that runs on your development hardware, and client applications (like the DDMS) that communicate with the daemon through the service.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;As a communications conduit between your development hardware and the Android device/emulator, the ADB lets you install applications, push and pull fi les, and run shell commands on the target device. Using the device shell, you can change logging settings, and query or modify SQLite databases available on the device.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The ADT tool automates and simplifies a lot of the usual interaction with the ADB, including application installation and update, log fi les, and fi le transfer (through the DDMS perspective).&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;next &lt;b&gt;Creating Applications and Activities&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/3957954787615874143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/android-development-tools.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/3957954787615874143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/3957954787615874143'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/android-development-tools.html' title='Android Development Tools'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-5979262405172315939</id><published>2012-05-21T08:45:00.000-07:00</published><updated>2014-05-30T21:58:17.833-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Developing for Android</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/understanding-hello-world.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;Understanding Hello World&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Nothing covered so far is specific to Android; the design considerations above are just as important when developing applications for any mobile. In addition to these general guidelines, Android has some particular considerations.&lt;/div&gt;To start with, it’s worth taking a few minutes to read Google’s Android design philosophy at http://code.google.com/android/toolbox/philosophy.html.&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;The Android design philosophy demands that applications be:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Fast &lt;/li&gt;&lt;li&gt;Responsive &lt;/li&gt;&lt;li&gt;Secure &lt;/li&gt;&lt;li&gt;Seamless &lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Being Fast and Efficient&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;In a resource-constrained environment, being fast means being efficient. A lot of what you already know about writing efficient code will be just as effective in Android, but the limitations of embedded systems and the use of the Dalvik VM mean you can’t take things for granted.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The smart bet for advice is to go to the source. The Android team has published some specific guidance on writing efficient code for Android, so rather than rehash their advice, I suggest you visit http://code.google.com/android/toolbox/performance.html and take note of their suggestions.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;You may find that some of these performance suggestions contradict established design practices — for example, avoiding the use of internal setters and getters or preferring virtual over interface. When writing software for resource-constrained systems like embedded devices, there’s often a compromise between conventional design principles and the demand for greater efficiency.&lt;/i&gt;&lt;/div&gt;One of the keys to writing efficient Android code is to not carry over assumptions from desktop and server environments to embedded devices.&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;At a time when 2 to 4 GB of memory is standard for most desktop and server rigs, even advanced smartphones are lucky to feature 32 MB of RAM. With memory such a scarce commodity, you need to take special care to use it efficiently. This means thinking about how you use the stack and heap, limiting object creation, and being aware of how variable scope affects memory use.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Being Responsive&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Android takes responsiveness very seriously.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Android enforces responsiveness with the Activity Manager and Window Manager. If either service detects an unresponsive application, it will display the unambiguous Application unresponsive (AUR) message, as shown in Figure 2-8.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;This alert is modal, steals focus, and won’t go away until you hit a button or your application starts responding — it’s pretty much the last thing you ever want to confront a user with.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Android monitors two conditions to determine responsiveness:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     An application must respond to any user action, such as a key press or screen touch, within 5 seconds.&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     A Broadcast Receiver must return from its onReceive handler within 10 seconds.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDFIYeSK38fAW4c7hOAto3_-7hz9ZK32nmlV1srDfZXzKtOgR0XUiv9fQd2q-GgMpl5X0MrSc1m9zea6vT0yFmVlYG6nJ8dJeI8mCdYDWzwS_bdVdMuOCFarZN4I03WhiEgl1Me0NvTy4W/s1600-h/image%25255B2%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;270&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIYNy_RD1q0R1FSU6_0zfkZNGeZUGaRMBYp2xr_wP1HyhpRYmxQFNb5LKKzI5x471dhM-A6ikP3_8NvKfOQnXr9YW33GHo2Ye6asrAGni-JcdtXhtsqd7Ly9B5H6jLAHbJFNuecsfAIIC4/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;269&quot; /&gt;&lt;/a&gt;&lt;br /&gt;   &lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;The most likely culprits for causing unresponsiveness are network lookups, complex processing (such as calculating game moves), and fi le I/O. There are a number of ways to ensure that these actions don’t exceed the responsiveness conditions, in particular, using services and worker threads.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;The AUR dialog is a last resort of usability; the generous 5-second limit is a worst-case scenario, not a benchmark to aim for. Users will notice a regular pause of anything more than half a second between key press and action. Happily, a side effect of the efficient code you’re already writing will be faster, more responsive applications.&lt;/i&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Developing Secure Applications&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Android applications have direct hardware access, can be distributed independently, and are built on an open source platform featuring open communication, so it’s not particularly surprising that security is a big concern.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;For the most part, users will take responsibility for what applications they install and what permissions they grant them. The Android security model restricts access to certain services and functionality by forcing applications to request permission before using them. During installation, users then decide if the application should be granted the permissions requested.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;This doesn’t get you off the hook. You not only need to make sure your application is secure for its own sake, but you also need to ensure that it can’t be hijacked to compromise the device. You can use several techniques to help maintain device security, and they’ll be covered in more detail as you learn the technologies involved. In particular, you should:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     Consider requiring permissions for any services you create or broadcasts you transmit.&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     Take special care when accepting input to your application from external sources such as the Internet, SMS messages, or instant messaging (IM).&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     Be cautious when your application may expose access to lower-level hardware.&lt;br /&gt;   &lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;For reasons of clarity and simplicity, many of the examples in this book take a fairly relaxed approach to security. When creating your own applications, particularly ones you plan to distribute, this is an area that should not be overlooked.&lt;/i&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Ensuring a Seamless User Experience&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The idea of a seamless user experience is an important, if somewhat nebulous, concept. What do we mean by seamless? The goal is a consistent user experience where applications start, stop, and transition instantly and without noticeable delays or jarring transitions.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The speed and responsiveness of a mobile device shouldn’t degrade the longer it’s on. Android’s process management helps by acting as a silent assassin, killing background applications to free resources as required. Knowing this, your applications should always present a consistent interface, regardless of whether they’re being restarted or resumed.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;With an Android device typically running several third-party applications written by different developers, it’s particularly important that these applications interact seamlessly.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Use a consistent and intuitive approach to usability. You can still create applications that are revolutionary and unfamiliar, but even they should integrate cleanly with the wider Android environment.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Persist data between sessions, and suspend tasks that use processor cycles, network bandwidth, or battery life when the application isn’t visible. If your application has processes that need to continue running while your activity is out of sight, use a Service, but hide these implementation decisions from your users.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;When your application is brought back to the front, or restarted, it should seamlessly return to its last visible state. As far as your users are concerned, each application should be sitting silently ready to be used but just out of sight.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You should also follow the best-practice guidelines for using Notifications and use generic UI elements and themes to maintain consistency between applications.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;To -Do List Example&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;In this example, you’ll be creating a new Android application from scratch. This simple example creates a new to-do list application using native Android View controls. It’s designed to illustrate the basic steps involved in starting a new project.   &lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;Don’t worry if you don’t understand everything that happens in this example. Some of the features used to create this application, including ArrayAdapters, ListViews, and KeyListeners, won’t be introduced properly until later chapters, where they’re explained in detail. You’ll also return to this example later to add new functionality as you learn more about Android.&lt;/i&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Start by creating a new Android project. Within Eclipse, select &lt;b&gt;File ➪ New ➪ Project&lt;/b&gt; …, then choose &lt;b&gt;Android&lt;/b&gt; (as shown in Figure 2-9) before clicking Next.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBgEGuvxGcWKyKuRVDTG9FzeKC0VOmjhJH8FNPnzhD3hvRNuLGLZds56dfG19BHMu0E12RBG4HI41pHUh56S31RthwjT5c5dqJYlkru9k5gEO1gWgA8LJOrf2IcvE2gwPSjvQM9kUgqKTb/s1600-h/image%25255B6%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;335&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8ILm3PZBwAqnaGXjlaNrBzUaQGySqKIEv4MYmyoIWYi8fpMywixWeFVG_qnQVAYulsVcv0czsTbxuF5GVEVseAjFPqOFDqr7rteSYVUmRZ5FW0ZiBSCBJVNG_0VT5zSsoKvlUQm1ANstb/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;354&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;In the dialog box that appears (shown in Figure 2-10), enter the details for your new project. The “Application name” is the friendly name of your application, and the “Activity name” is the name of your Activity subclass. With the details entered, click Finish to create your new project.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOO83oRhI7MLkhul7eM6d_J2jyJbLK6p4Qm_aAUEQ1flzNkVttn-ldv2WLmqfUIb2vnwIxq5uXfI7-Etdr56CWsqbaszJUlz7irug_9KHQaBULwIDzTvkqi_aP9UHmwovuTri-ZiC7uKX4/s1600-h/image%25255B10%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;387&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiFpuGogSrN8LlXd7NmPxyvvlsUf2H0fuTzLYnuBf0GfCqRydysv3qAIj4pJ0nizPzbfw8sw7K4Y6dhTwzwmeqcBfjUpVZle9hx5ji6blX92xwl2yhX1a_tvW1_IugfXzjdQ46m5Jll7FC/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;384&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Take this opportunity to set up debug and run configurations by selecting &lt;b&gt;Run ➪ Open Debug Dialog&lt;/b&gt; … and then &lt;b&gt;Run ➪ Open Run Dialog&lt;/b&gt; …, creating a new configuration for each, specifying the Todo_List project. You can leave the launch actions as &lt;b&gt;Launch Default Activity&lt;/b&gt; or explicitly set them to launch the new ToDoList Activity, as shown in Figure 2-11.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4w_vhyxRRV-9Q4GPL5l-IPCfBlIrbd4uZpt0m_e4Omk4wnKIjLFgqyVdtDSWxK_4PNTi5iavar7BukDe96ND3s1PNbinAcUCn5SwOAr958jmgEIkbCVOunRVSt7dpwhfZpnPgpqgKjotr/s1600-h/image%25255B14%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;172&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEis52pGT3LOqrKpp_ritJHxPPCag0OLaCxKt0NWB10ytwS1HSzxe6mefp0iPYMCfQqEq6HlLnS3P96TpLIg6m1KbeZCL-vZjzTizfGWL5RTEm-hClHoH1BD9OygTIqzFRGaE-SoPMQakoo0/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;281&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Now decide what you want to show the users and what actions they’ll need to perform. Design a user interface that will make this as intuitive as possible.&lt;/div&gt;In this example, we want to present users with a list of to-do items and a text entry box to add new ones. There’s both a list and a text entry control (View) available from the Android libraries. The preferred method for laying out your UI is using a layout resource fi le. Open the main.xml layout file in the res/layout project folder, as shown in Figure 2-12.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7VJI7wEMfTjQ50FTkNekBNo5lRJh7y7DvX6UjRNCCrlG6GKakm31MivzRxa_6waIxgFSzIiKNVy8o8iTzrZ9wMYUI0IQ1Gn7x16YIeQdsELdusLlEao4Pm5ujycz27cObyAqA_yLqmLEi/s1600-h/image%25255B22%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;257&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_NYQ8Hl4UsTUjQ93ToUzJ2Im1SEDPOrmoL4-o5LXvVp3a8caLDvnmGbUybqbOetKYCL8tOhWlV4awAYeF7hLRkOzhjWKJpjJhyQYnMtDrf9imp4ZygDB6MxfeVA0SB83-cBI6gXS62C3L/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;235&quot; /&gt;&lt;/a&gt; &lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Modify the main layout to include a ListView and an EditText within a LinearLayout. It’s important to give both the EditText and ListView controls IDs so you can get references to them in code.&lt;/div&gt;&lt;span style=&quot;color: #9e7c7c; font-family: Georgia;&quot;&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;        &lt;br /&gt;&amp;lt;LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”         &lt;br /&gt;android:orientation=”vertical”         &lt;br /&gt;android:layout_width=”fill_parent”         &lt;br /&gt;android:layout_height=”fill_parent”&amp;gt;         &lt;br /&gt;&amp;lt;EditText         &lt;br /&gt;android:id=”@+id/myEditText”         &lt;br /&gt;android:layout_width=”fill_parent”         &lt;br /&gt;android:layout_height=”wrap_content”         &lt;br /&gt;android:text=”New To Do Item”         &lt;br /&gt;/&amp;gt;         &lt;br /&gt;&amp;lt;ListView         &lt;br /&gt;android:id=”@+id/myListView”         &lt;br /&gt;android:layout_width=”fill_parent”         &lt;br /&gt;android:layout_height=”wrap_content” /&amp;gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;With your user interface defined, open the ToDoList.java Activity class from your project’s source folder. In this example, you’ll make all your changes by overriding the onCreate method. Start by inflating your UI using setContentView and then get references to the ListView and EditText using findViewById.&lt;/div&gt;&lt;span style=&quot;color: #9e7c7c; font-family: Georgia;&quot;&gt;public void onCreate(Bundle icicle) {        &lt;br /&gt;// Inflate your view         &lt;br /&gt;setContentView(R.layout.main);         &lt;br /&gt;// Get references to UI widgets         &lt;br /&gt;ListView myListView = (ListView)findViewById(R.id.myListView);         &lt;br /&gt;final EditText myEditText = (EditText)findViewById(R.id.myEditText);         &lt;br /&gt;}&lt;/span&gt; &lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Still within onCreate, defi ne an ArrayList of Strings to store each to-do list item. You can bind a ListView to an ArrayList using an ArrayAdapter, so create a new ArrayAdapter instance to bind the to-do item array to the ListView.&lt;/div&gt;&lt;span style=&quot;color: #9e7c7c; font-family: Georgia;&quot;&gt;public void onCreate(Bundle icicle) {        &lt;br /&gt;setContentView(R.layout.main);         &lt;br /&gt;ListView myListView = (ListView)findViewById(R.id.myListView);         &lt;br /&gt;final EditText myEditText = (EditText)findViewById(R.id.myEditText);         &lt;br /&gt;// Create the array list of to do items         &lt;br /&gt;final ArrayList&amp;lt;String&amp;gt; todoItems = new ArrayList&amp;lt;String&amp;gt;();         &lt;br /&gt;// Create the array adapter to bind the array to the listview         &lt;br /&gt;final ArrayAdapter&amp;lt;String&amp;gt; aa;         &lt;br /&gt;aa = new ArrayAdapter&amp;lt;String&amp;gt;(this,         &lt;br /&gt;android.R.layout.simple_list_item_1,         &lt;br /&gt;todoItems);         &lt;br /&gt;// Bind the array adapter to the listview.         &lt;br /&gt;myListView.setAdapter(aa);         &lt;br /&gt;}&lt;/span&gt; &lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;The final step to make this to-do list functional is to let users add new to-do items. Add an onKeyListener to the EditText that listens for a “D-pad center button” click before adding the contents of the EditText to the to-do list array and notifying the ArrayAdapter of the change. Then clear the EditText to prepare for another item.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;span style=&quot;color: #9e7c7c; font-family: Georgia;&quot;&gt;public void onCreate(Bundle icicle) {          &lt;br /&gt;setContentView(R.layout.main);           &lt;br /&gt;ListView myListView = (ListView)findViewById(R.id.myListView);           &lt;br /&gt;final EditText myEditText = (EditText)findViewById(R.id.myEditText);           &lt;br /&gt;final ArrayList&amp;lt;String&amp;gt; todoItems = new ArrayList&amp;lt;String&amp;gt;();           &lt;br /&gt;final ArrayAdapter&amp;lt;String&amp;gt; aa;           &lt;br /&gt;aa = new ArrayAdapter&amp;lt;String&amp;gt;(this,           &lt;br /&gt;android.R.layout.simple_list_item_1,           &lt;br /&gt;todoItems);           &lt;br /&gt;myListView.setAdapter(aa);           &lt;br /&gt;myEditText.setOnKeyListener(new OnKeyListener() {           &lt;br /&gt;public boolean onKey(View v, int keyCode, KeyEvent event) {           &lt;br /&gt;if (event.getAction() == KeyEvent.ACTION_DOWN)           &lt;br /&gt;if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER)           &lt;br /&gt;{           &lt;br /&gt;todoItems.add(0, myEditText.getText().toString());           &lt;br /&gt;aa.notifyDataSetChanged();           &lt;br /&gt;myEditText.setText(“”);           &lt;br /&gt;return true;           &lt;br /&gt;}           &lt;br /&gt;return false;           &lt;br /&gt;}           &lt;br /&gt;});           &lt;br /&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Run or debug the application, and you’ll see a text entry box above a list, as shown in Figure 2-13.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwIYzYeIWLY3v6SUHEf5a50yIJSu8qmU5xXgScrUJKmyNtrmV4l3svgjv8XJUe8aWNziI7CD_Sn_ET9OYnZ_0abPHA_Wpo4Zzk1KS_BU6qMSPRfrTwcEtUyhgCWpGIx2u7Mxs1jLB7Ce05/s1600-h/image%25255B26%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;386&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy0MFudZ4nSjrJK9LaTxtRyIYoVOkmpQI-aZFGmyPI9Vd_vuIUJa09MwkC3_87NhuqUwGlDp8_34hsXNZk6Z-k0O2TowLuS7TjbV_bPLtMG2LAqzp3RuwcB0b6MABzHY32OiXrlzdTLGTy/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;243&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     You’ve now finished your first “real” Android application. Try adding breakpoints to the code to test the debugger and experiment with the DDMS perspective.&lt;br /&gt;   &lt;/li&gt;&lt;/ol&gt;&lt;div align=&quot;justify&quot;&gt;As it stands, this to-do list application isn’t spectacularly useful. It doesn’t save to-do list items between sessions, you can’t edit or remove an item from the list, and typical task list items like due dates and task priority aren’t recorded or displayed. On balance, it fails most of the criteria laid out so far for a good mobile application design.&lt;/div&gt;next &lt;b&gt;Android Development Tools&lt;/b&gt;&lt;br /&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/5979262405172315939/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/developing-for-android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/5979262405172315939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/5979262405172315939'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/developing-for-android.html' title='Developing for Android'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEhIYNy_RD1q0R1FSU6_0zfkZNGeZUGaRMBYp2xr_wP1HyhpRYmxQFNb5LKKzI5x471dhM-A6ikP3_8NvKfOQnXr9YW33GHo2Ye6asrAGni-JcdtXhtsqd7Ly9B5H6jLAHbJFNuecsfAIIC4/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-4711072369526722317</id><published>2012-05-20T10:32:00.000-07:00</published><updated>2014-05-30T21:58:17.820-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Understanding Hello World</title><content type='html'>&lt;p&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/creating-your-first-android-activity.html&quot; target=&quot;_blank&quot;&gt;previous &lt;strong&gt;Creating Your First Android Activity&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;With that confirmed, let’s take a step back and have a real look at your first Android application.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Activity is the base class for the visual, interactive components of your application; it is roughly equivalent to a Form in traditional desktop development. The following snippet shows the skeleton code for an Activity-based class; note that it extends Activity, overriding the onCreate method.&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;package com.paad.helloworld;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;import android.app.Activity;     &lt;br /&gt;import android.os.Bundle;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;public class HelloWorld extends Activity {&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;/** Called when the activity is first created. */     &lt;br /&gt;@Override      &lt;br /&gt;public void onCreate(Bundle icicle) {      &lt;br /&gt;super.onCreate(icicle);      &lt;br /&gt;}      &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;What’s missing from this template is the layout of the visual interface. In Android, visual components are called &lt;em&gt;Views&lt;/em&gt;, which are similar to controls in traditional desktop development.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;In the Hello World template created by the wizard, the onCreate method is overridden to call setContentView, which lays out the user interface by inflating a layout resource, as highlighted below:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;@Override     &lt;br /&gt;public void onCreate(Bundle icicle) {      &lt;br /&gt;super.onCreate(icicle);      &lt;br /&gt;&lt;font color=&quot;#0000ff&quot;&gt;setContentView(R.layout.main);&lt;/font&gt;      &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The resources for an Android project are stored in the res folder of your project hierarchy, which includes drawable, layout, and values subfolders. The ADT plug-in interprets these XML resources to provide design time access to them through the R variable.&lt;/p&gt;  &lt;p&gt;The following code snippet shows the UI layout defined in the main.xml fi le created by the Android project template:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;?xml version=”1.0” encoding=”utf-8”?&amp;gt;     &lt;br /&gt;&amp;lt;LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”      &lt;br /&gt;android:orientation=”vertical”      &lt;br /&gt;android:layout_width=”fill_parent”      &lt;br /&gt;android:layout_height=”fill_parent”&amp;gt;      &lt;br /&gt;&amp;lt;TextView      &lt;br /&gt;android:layout_width=”fill_parent”      &lt;br /&gt;android:layout_height=”wrap_content”      &lt;br /&gt;android:text=”Hello World, HelloWorld”      &lt;br /&gt;/&amp;gt;      &lt;br /&gt;&amp;lt;/LinearLayout&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Defining your UI in XML and inflating it is the preferred way of implementing your user interfaces, as it neatly decouples your application logic from your UI design.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;To get access to your UI elements in code, you add identifier attributes to them in the XML definition. You can then use the findViewById method to return a reference to each named item. The following XML snippet shows an ID attribute added to the TextView widget in the Hello World template:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;&amp;lt;TextView     &lt;br /&gt;&lt;font color=&quot;#0000ff&quot;&gt;android:id=”@+id/myTextView”&lt;/font&gt;      &lt;br /&gt;android:layout_width=”fill_parent”      &lt;br /&gt;android:layout_height=”wrap_content”      &lt;br /&gt;android:text=”Hello World, HelloWorld”      &lt;br /&gt;/&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;And the following snippet shows how to get access to it in code:&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;TextView myTextView = (TextView)findViewById(R.id.myTextView);&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Alternatively (although it’s not considered good practice), if you need to, you can create your layout directly in code as shown below:&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;public void onCreate(Bundle icicle) {     &lt;br /&gt;super.onCreate(icicle);&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;LinearLayout.LayoutParams lp;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;lp = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,     &lt;br /&gt;LayoutParams.FILL_PARENT);&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;LinearLayout.LayoutParams textViewLP;     &lt;br /&gt;textViewLP = new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,      &lt;br /&gt;LayoutParams.WRAP_CONTENT);&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color=&quot;#9e7c7c&quot; face=&quot;Georgia&quot;&gt;LinearLayout ll = new LinearLayout(this);     &lt;br /&gt;ll.setOrientation(LinearLayout.VERTICAL);      &lt;br /&gt;TextView myTextView = new TextView(this);      &lt;br /&gt;myTextView.setText(“Hello World, HelloWorld”);      &lt;br /&gt;ll.addView(myTextView, textViewLP);      &lt;br /&gt;this.addContentView(ll, lp);      &lt;br /&gt;}&lt;/font&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;All the properties available in code can be set with attributes in the XML layout. As well as allowing easier substitution of layout designs and individual UI elements, keeping the visual design decoupled from the application code helps keep the code more concise.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;em&gt;The Android web site (http://code.google.com/android/documentation.html) includes several excellent step-by-step guides that demonstrate many of the features and good practices you will be using as an Android developer. They’re easy to follow and give a good idea of how Android applications fi t together.&lt;/em&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Types of Android Applications&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Most of the applications you create in Android will fall into one of the following categories:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;Foreground Activity An application that’s only useful when it’s in the foreground and is effectively suspended when it’s not visible. Games and map mashups are common examples.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;Background Service An application with limited interaction that, apart from when being configured, spends most of its lifetime hidden. Examples of this include call screening applications or SMS auto-responders.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;Intermittent Activity Expects some interactivity but does most of its work in the background. Often these applications will be set up and then run silently, notifying users when appropriate. A common example would be a media player.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;Complex applications are difficult to pigeonhole into a single category and include elements of all three. When creating your application, you need to consider how it’s likely to be used and then design it accordingly. Let’s look more closely at some of the design considerations for each application type described above.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Foreground Activities&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;When creating foreground applications, you need to consider the Activity life cycle carefully so that the Activity switches seamlessly between the foreground and the background.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Applications have no control over their life cycles, and a backgrounded application, with no Services, is a prime candidate for cleanup by Android’s resource management. This means that you need to save the state of the application when the Activity becomes invisible, and present the exact same state when it returns to the foreground.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It’s also particularly important for foreground Activities to present a slick and intuitive user experience.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Background Services&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;These applications run silently in the background with very little user input. They often listen for messages or actions caused by the hardware, system, or other applications, rather than rely on user interaction.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It’s possible to create completely invisible services, but in practice, it’s better form to provide at least some sort of user control. At a minimum, you should let users confirm that the service is running and let them configure, pause, or terminate it as needed.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Intermittent Activities&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Often you’ll want to create an application that reacts to user input but is still useful when it’s not the active foreground Activity. These applications are generally a union of a visible controller Activity with an invisible background Service.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;These applications need to be aware of their state when interacting with the user. This might mean updating the Activity UI when it’s visible and sending notifications to keep the user updated when it’s in the background.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Developing for Mobile Devices&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android does a lot to simplify mobile-device software development, but it’s still important to understand the reasons behind the conventions. There are several factors to account for when writing software for mobile and embedded devices, and when developing for Android, in particular.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Hardware-Imposed Design Considerations&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Small and portable, mobile devices offer exciting opportunities for software development. Their limited screen size and reduced memory, storage, and processor power are far less exciting, and instead present some unique challenges.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Compared to desktop or notebook computers, mobile devices have relatively:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;Low processing power&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Limited RAM&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Limited permanent storage capacity&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Small screens with low resolution&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Higher costs associated with data transfer&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Slower data transfer rates with higher latency&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Less reliable data connections&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Limited battery life&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;It’s important to keep these restrictions in mind when creating new applications.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Be Efficient&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Manufacturers of embedded devices, particularly mobile devices, value small size and long battery life over potential improvements in processor speed. For developers, that means losing the head start traditionally afforded thanks to Moore’s law. The yearly performance improvements you’ll see in desktop and server hardware usually translate into smaller, more power-efficient mobiles without much improvement in processor power.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;In practice, this means that you always need to optimize your code so that it runs quickly and responsively, assuming that hardware improvements over the lifetime of your software are unlikely to do you any favors.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Since code efficiency is a big topic in software engineering, I’m not going to try and capture it here. This chapter covers some Android-specific efficiency tips below, but for now, just note that efficiency is particularly important for resource-constrained environments like mobile devices.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Expect Limited Capacity&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Advances in flash memory and solid-state disks have led to a dramatic increase in mobile-device storage capacities (although people’s MP3 collections tend to expand to fill the available space). In practice, most devices still offer relatively limited storage space for your applications. While the compiled size of your application is a consideration, more important is ensuring that your application is polite in its use of system resources.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;You should carefully consider how you store your application data. To make life easier, you can use the Android databases and Content Providers to persist, reuse, and share large quantities of data. For smaller data storage, such as preferences or state settings, Android provides an optimized framework.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Of course, these mechanisms won’t stop you from writing directly to the file system when you want or need to, but in those circumstances, always consider how you’re structuring these files, and ensure that yours is an efficient solution.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Part of being polite is cleaning up after yourself. Techniques like caching are useful for limiting repetitive network lookups, but don’t leave fi les on the file system or records in a database when they’re no longer needed.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Design for Small Screens&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The small size and portability of mobiles are a challenge for creating good interfaces, particularly when users are demanding an increasingly striking and information-rich graphical user experience.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Write your applications knowing that users will often only glance at the (small) screen. Make your applications intuitive and easy to use by reducing the number of controls and putting the most important information front and center.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Graphical controls are an excellent way to convey dense information in an easy-to-understand way. Rather than a screen full of text with lots of buttons and text entry boxes, use colors, shapes, and graphics to display information.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;If you’re planning to include touch-screen support (and if you’re not, you should be), you’ll need to consider how touch input is going to affect your interface design. The time of the stylus has passed; now it’s all about finger input, so make sure your Views are big enough to support interaction using a finger on the screen.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Of course, mobile-phone resolutions and screen sizes are increasing, so it’s smart to design for small screens, but also make sure your UIs scale.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Expect Low Speeds, High Latency&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The mobile Web unfortunately isn’t as fast, reliable, or readily available as we’d often like, so when you’re developing your Internet-based applications, it’s best to assume that the network connection will be slow, intermittent, and expensive. With unlimited 3G data plans and city-wide Wi-Fi, this is changing, but designing for the worst case ensures that you always deliver a high-standard user experience.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;This also means making sure that your applications can handle losing (or not finding) a data connection.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The Android Emulator lets you control the speed and latency of your network connection when setting up an Eclipse launch configuration. Figure 2-7 shows the emulator’s network connection speed and latency set up to simulate a distinctly suboptimal EDGE connection.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFUGHqtiUJCpxMrKO9n4yCfI7Vo7n07FbyA3r4JxFT6YBgS3etGLzU_5sWLGfNOS_ReJoWLwB3viUUg4CTrau1u-YdyXYI5vn1TDHWYUejjK6avVs46fwAG0Ynyj54kJZTD0-L2UrV7SsI/s1600-h/image%25255B3%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL3ZYLMJR5FbBr7NnR5MN4jXvzEpZu1hA8RX1OhLCDo-x7RBn99msSEu0xaJdqEAUqRj4EpjaxFzhP6fsogFSjKIR43wJaGxI0WusyepYKd5SJlaN_wpwE1bio4cz2H5ypkhrSkF9KmTxU/?imgmax=800&quot; width=&quot;247&quot; height=&quot;280&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Experiment to ensure responsiveness no matter what the speed, latency, and availability of network access. You might find that in some circumstances, it’s better to limit the functionality of your application or reduce network lookups to cached bursts, based on the network connection(s) available.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;At What Cost?&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;If you’re a mobile owner, you know all too well that some of the more powerful features on your mobile can literally come at a price. Services like SMS, GPS, and data transfer often incur an additional tariff from your service provider.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It’s obvious why it’s important that any costs associated with functionality in your applications are minimized, and that users are aware when an action they perform might result in them being charged.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It’s a good approach to assume that there’s a cost associated with any action involving an interaction with the outside world. Minimize interaction costs by the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;Transferring as little data as possible&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Caching data and GPS results to eliminate redundant or repetitive lookups&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Stopping all data transfers and GPS updates when your activity is not visible in the foreground if they’re only being used to update the UI&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Keeping the refresh/update rates for data transfers (and location lookups) as low as practicable&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;Scheduling big updates or transfers at “off peak” times using alarms&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Often the best solution is to use a lower-quality option that comes at a lower cost.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;When using the location-based services, you can select a location provider based on whether there is an associated cost. Within your location-based applications, consider giving users the choice of lower cost or greater accuracy.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;In some circumstances, costs are hard to define, or they’re different for different users. Charges for services vary between service providers and user plans. While some people will have free unlimited data transfers, others will have free SMS.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Rather than enforcing a particular technique based on which seems cheaper, consider letting your users choose. For example, when downloading data from the Internet, you could ask users if they want to use any network available or limit their transfers to only when they’re connected via Wi-Fi.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Considering the Users’ Environment&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;You can’t assume that your users will think of your application as the most important feature of their phones.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Generally, a mobile is first and foremost a phone, secondly an SMS and e-mail communicator, thirdly a camera, and fourthly an MP3 player. The applications you write will most likely be in a fifth category of “useful mobile tools.”&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;That’s not a bad thing — it’s in good company with others including Google Maps and the web browser. That said, each user’s usage model will be different; some people will never use their mobiles to listen to music, and some phones don’t include a camera, but the multitasking principle inherent in a device as ubiquitous as it is indispensable is an important consideration for usability design.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;It’s also important to consider when and how your users will use your applications. People use their mobiles all the time — on the train, walking down the street, or even while driving their cars. You can’t make people use their phones appropriately, but you can make sure that your applications don’t distract them any more than necessary.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;What does this mean in terms of software design? Make sure that your application:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Is well behaved&lt;/strong&gt; Start by ensuring that your Activities suspend when they’re not in the foreground. Android triggers event handlers when your Activity is suspended or resumed so you can pause UI updates and network lookups when your application isn’t visible — there’s no point updating your UI if no one can see it. If you need to continue updating or processing in the background, Android provides a Service class designed to run in the background without the UI overheads.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Switches seamlessly from the background to the foreground&lt;/strong&gt; With the multitasking nature of mobile devices, it’s very likely that your applications will regularly switch into and out of the background. When this happens, it’s important that they “come to life” quickly and seamlessly. Android’s nondeterministic process management means that if your application is in the background, there’s every chance it will get killed to free up resources. This should be invisible to the user. You can ensure this by saving the application state and queuing updates so that your users don’t notice a difference between restarting and resuming your application. Switching back to it should be seamless with users being shown the exact UI and application state they last saw.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Is polite&lt;/strong&gt; Your application should never steal focus or interrupt a user’s current activity. Use Notifications and Toasts (detailed in Chapter 8) instead to inform or remind users that their attention is requested if your application isn’t in the foreground. There are several ways for mobile devices to alert users. For example, when a call is coming in, your phone rings; when you have unread messages, the LED flashes; and when you have new voice mail, a small “mail” icon appears in your status bar. All these techniques and more are available through the notification mechanism.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Presents a consistent user interface&lt;/strong&gt; Your application is likely to be one of several in use at any time, so it’s important that the UI you present is easy to use. Don’t force users to interpret and relearn your application every time they load it. Using it should be simple, easy, and obvious— particularly given the limited screen space and distracting user&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;Is responsive Responsiveness is one of the most important design considerations on a mobile device. You’ve no doubt experienced the frustration of a “frozen” piece of software; the multifunction nature of a mobile makes it even more annoying. With possible delays due to slow and unreliable data connections, it’s important that your application use worker threads and background services to keep your activities responsive and, more importantly, stop them from preventing other applications from responding in a timely manner.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;next &lt;strong&gt;Developing for Android&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin:0px; padding:0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt; &lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;http://tweetmeme.com/i/scripts/button.js&quot;&gt;&lt;/script&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/4711072369526722317/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/understanding-hello-world.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4711072369526722317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4711072369526722317'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/understanding-hello-world.html' title='Understanding Hello World'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEgL3ZYLMJR5FbBr7NnR5MN4jXvzEpZu1hA8RX1OhLCDo-x7RBn99msSEu0xaJdqEAUqRj4EpjaxFzhP6fsogFSjKIR43wJaGxI0WusyepYKd5SJlaN_wpwE1bio4cz2H5ypkhrSkF9KmTxU/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-153730363107394804</id><published>2012-05-18T22:58:00.000-07:00</published><updated>2014-05-30T21:58:17.803-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Creating Your First Android Activity</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/getting-started-with-android.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;Getting Started with Android&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;You’ve downloaded the SDK, installed Eclipse, and plugged in the plug-in. You’re now ready to start programming for Android. Start by creating a new project and setting up your Eclipse run and debug configurations.&lt;/div&gt;&lt;b&gt;Starting a New Android Project&lt;/b&gt;&lt;br /&gt;To create a new Android project using the Android New Project Wizard:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Select &lt;b&gt;File ➪ New ➪ Project&lt;/b&gt;.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Select the &lt;b&gt;Android Project&lt;/b&gt; application type from the Android folder, and click &lt;b&gt;Finish&lt;/b&gt;.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;In the dialog that appears (shown in Figure 2-4), enter the details for your new project. The “Project name” is the name of your project fi le; the “Package name” specifies its package; the “Activity name” is the name of the class that is your initial Activity; and the “Application name” is the friendly name for your application.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRMmlA4Mv2gHqme0hRzNPdhL6Xln4YZv4gPc_n8E8TMEXHSnnD_lya07lN0jTg_sYGq-aB4cA54HFxzVjcsPUGdgPmYjytxrepp1tVAVpDO-9C71a2TZ5t29wqArInLXuQXYMCPD_PvRVr/s1600-h/image%25255B2%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;444&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWHNmxGdSfKSpiF3IHlxam7GdUUb4mIkRuDm7lx_PfbiTR5wDcERG96QkyUURJAxB42umbTgY4N6UJxzH2qXjNLjU45exSjAnR8uhKx_mKAmpv72Xzu9jf_Pv9BBmsHWIScg5SLYeob56V/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;When you’ve entered the details, click &lt;b&gt;Finish&lt;/b&gt;.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div align=&quot;justify&quot;&gt;The ADT plug-in then creates a new project that includes a new class that extends Activity. Rather than being completely empty, the default template implements “Hello World.” Before modifying the project, take this opportunity to configure run and debug launch configurations.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Creating a Launch Configuration&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Launch configurations let you specify runtime options for running and debugging applications. Using a launch configuration you can specify the following:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;The Project and Activity to launch&lt;/li&gt;&lt;li&gt;The emulator options to use&lt;/li&gt;&lt;li&gt;Input/output settings (including console defaults)&lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;You can specify different launch configurations for Run and Debug modes. The following steps show how to create a launch configuration for an Android application:&lt;/div&gt;&lt;ol&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Select &lt;b&gt;Run ➪ Open Run Dialog&lt;/b&gt; … (or &lt;b&gt;Run ➪ Open Debug Dialog&lt;/b&gt; …).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Right-click &lt;b&gt;Android Application&lt;/b&gt; on the project type list, and select &lt;b&gt;New&lt;/b&gt;.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Enter a name for the configuration. You can create multiple configurations for each project, so create a descriptive title that will help you identify this particular setup.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Now choose your start-up options. The first (&lt;b&gt;Android&lt;/b&gt;) tab lets you select the project and Activity that you want to start when you run (or debug) the application. Figure 2-5 shows the settings for the project you created earlier.&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9mI5cfnvwJJPobNEZ3e4hfQCQDaBFPJfEF3MVOGpcxdi9bFjV2jINdRX-pc5QpD8h7alwwFMmuuWMzD4KiX7yvvbIiZwSvOmAo6TIPGGZQTaHxOdtsqORd1woo7yUHAhumXIUSrjXL_5p/s1600-h/image%25255B5%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;308&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgl55Yn0Ah1dpr92Oc-fcdIaiG7UjFbC4QoZfLOrakCgF7fv5QUCOCk_d5t-KRTaNfmgHbjQtTwi5uwabk4IveBuTzt2R_mR1jg6O4hvxvQeUARxqVhQs-OlpQ5m-Do976ay8f0P22A99nE/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;284&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Use the &lt;b&gt;Target&lt;/b&gt; tab to configure the emulator. There are options to choose the screen size, device skin, and network connection settings. You can also optionally wipe the user data on the emulator and enable or disable the start-up animation. Using the command-line textbox, you can specify additional emulator start-up options if needed.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Finally, set any additional properties in the &lt;b&gt;Common&lt;/b&gt; tab.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Click &lt;b&gt;Apply&lt;/b&gt;, and your launch configuration will be saved.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Running and Debugging Your Android Applications&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You’ve created your first project and created the run and debug configurations for it. Before making any changes, test your installation and configurations by running and debugging the Hello World project.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;From the &lt;b&gt;Run&lt;/b&gt; menu, select &lt;b&gt;Run&lt;/b&gt; or &lt;b&gt;Debug&lt;/b&gt; to launch the most recently selected configuration, or select &lt;b&gt;Open Run Dialog&lt;/b&gt; … or &lt;b&gt;Open Debug Dialog&lt;/b&gt; … to select a configuration to use.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If you’re using the ADT plug-in, running or debugging your application:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Compiles the current project and converts it to an Android executable (.dex).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Packages the executable and external resources into an Android package (.apk).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Starts the emulator (if it’s not already running).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Installs your application onto the emulator.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Starts your application.&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;If you’re debugging, the Eclipse debugger will then be attached, allowing you to set breakpoints and debug your code.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If everything is working correctly, you’ll see a new Activity running in the emulator, as shown in Figure 2-6.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgSEXK5fd_yx70eWlEVTrnSU_V_D8tTZX_B4i1qJlJXdddGZUp_YDJ1KqS-zTbF9lyJuRPG2HPzOJDW0PNETw8PZhZm3qLKZzNk098meqcRzIfhkm3jYx5EtN_w-_oRl5HlZdxtRzokxMxZ/s1600-h/image%25255B8%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;396&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiD9GUewEUIIy9etZxwQPS364CrmI4Ez271TjkBm4WsRtlY9VUlOaaE3sHB77Jb37wsUWGT3DG2RY2SoQ2IrYguc1p8x4bCCdBYlj5XBCc6T-dy4TqPGXjGQAVtcKU2xjemssJubJNHhq0r/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;250&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;next&lt;b&gt; Understanding Hello World&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/153730363107394804/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/creating-your-first-android-activity.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/153730363107394804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/153730363107394804'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/creating-your-first-android-activity.html' title='Creating Your First Android Activity'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEiWHNmxGdSfKSpiF3IHlxam7GdUUb4mIkRuDm7lx_PfbiTR5wDcERG96QkyUURJAxB42umbTgY4N6UJxzH2qXjNLjU45exSjAnR8uhKx_mKAmpv72Xzu9jf_Pv9BBmsHWIScg5SLYeob56V/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-9067611098195175596</id><published>2012-05-17T11:35:00.000-07:00</published><updated>2014-05-30T21:58:17.888-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Getting Started with Android</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/dalvik-virtual-machine.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;The Dalvik Virtual Machine&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;All you need to start writing your own Android applications is a copy of the Android SDK and the Java development kit. Unless you’re a masochist, you’ll probably want a Java IDE — Eclipse is particularly well supported — to make development a little easier.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Versions of the SDK, Java, and Eclipse are available for Windows, Mac OS, and Linux, so you can explore Android from the comfort of whatever OS you favor. The SDK includes an emulator for all three OS environments, and because Android applications are run on a virtual machine, there’s no advantage to developing from any particular operating system.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Android code is written using Java syntax, and the core Android libraries include most of the features from the core Java APIs. Before they can be run, though, your projects are first translated into Dalvik byte code. As a result, you get the benefits of using Java, while your applications have the advantage of running on a virtual machine optimized for Android devices.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The SDK download includes all the Android libraries, full documentation, and excellent sample applications. It also includes tools to help you write and debug your applications, like the Android Emulator to run your projects and the Dalvik Debug Monitoring Service (DDMS) to help debug them.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;By the end of this chapter, you’ll have downloaded the Android SDK, set up your development environment, completed two new applications, and run and debugged them using the emulator and DDMS.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If you’ve developed for mobile devices before, you already know that their small-form factor, limited power, and restricted memory create some unique design challenges. Even if you’re new to the game, it’s obvious that some of the things you can take for granted on the desktop or the Web aren’t going to work on a mobile.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;As well as the hardware limitations, the user environment brings its own challenges. Mobile devices are used on the move and are often a distraction rather than the focus of attention, so your applications need to be fast, responsive, and easy to use.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Developing for Android&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The Android SDK includes all the tools and APIs you need to write compelling and powerful mobile applications. The biggest challenge with Android, as with any new development toolkit, is learning the features and limitations of its APIs.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If you have experience in Java development, you’ll find that the techniques, syntax, and grammar you’ve been using will translate directly into Android, although some of the specific optimization techniques may seem counterintuitive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If you don’t have experience with Java but have used other object-oriented languages (such as C#), you should find the transition straightforward. The power of Android comes from its APIs, not from Java, so being unfamiliar with all the Java specific classes won’t be a big disadvantage.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;What You Need to Begin&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Because Android applications run within the Dalvik virtual machine, you can write them on any platform that supports the developer tools. This currently includes the following:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     Microsoft Windows (XP or Vista)&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     Mac OS X 10.4.8 or later (Intel chips only)&lt;br /&gt;   &lt;/li&gt;&lt;li&gt;     Linux&lt;br /&gt;   &lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;To get started, you’ll need to download and install the following:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;The Android SDK &lt;/li&gt;&lt;li&gt;Java Development Kit (JDK) 5 or 6 &lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;You can download the latest JDK from Sun at&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;http://java.sun.com/javase/downloads/index.jsp&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;If you already have a JDK installed, make sure that it meets the version requirements listed above, and note that the Java runtime environment (JRE) is not sufficient.&lt;/i&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Downloading and Installing the SDK&lt;/b&gt;&lt;/div&gt;The Android SDK is completely open. There’s no cost to download and use the API, and Google doesn’t charge to allow distribution of your finished programs. You can download the latest version of the SDK for your development platform from the Android development home page at&lt;br /&gt;http://code.google.com/android/download.html&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;Unless otherwise noted, the version of the Android SDK used for writing this book was version 1.0 r1.&lt;/i&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The SDK is presented as a ZIP fi le containing the API libraries, developer tools, documentation, and several sample applications and API demos that highlight the use of particular API features. Install it by unzipping the SDK into a new folder. (Take note of this location, as you’ll need it later.)&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The examples and step-by-step instructions provided are targeted at developers using Eclipse with the Android Developer Tool (ADT) plug-in. Neither is required, though — you can use any text editor or Java IDE you’re comfortable with and use the developer tools in the SDK to compile, test, and debug the code snippets and sample applications.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;The examples included in the SDK are well documented and are an excellent source for full, working examples of applications written for Android. Once you’ve finished setting up your development environment, it’s worth going through them.&lt;/i&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Developing with Eclipse&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Using Eclipse with the ADT plug-in for your Android development offers some significant advantages.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Eclipse is an open source IDE (integrated development environment) particularly popular for Java development. It’s available to download for each of the development platforms supported by Android (Windows, Mac OS, and Linux) from the Eclipse foundation homepage:&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;www.eclipse.org/downloads/&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;There are many variations available when selecting your Eclipse download; the following is the recommended configuration for Android:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Eclipse 3.3, 3.4 (Ganymede)&lt;/div&gt;&lt;ul&gt;&lt;li&gt;         &lt;div align=&quot;justify&quot;&gt;Eclipse JDT plug-in&lt;/div&gt;&lt;/li&gt;&lt;li&gt;         &lt;div align=&quot;justify&quot;&gt;WST&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;WST and the JDT plug-in are included in most Eclipse IDE packages.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Installing Eclipse consists of uncompressing the download into a new folder. When that’s done, run the Eclipse executable. When it starts for the first time, create a new workspace for your Android development.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Using the Eclipse Plug-in&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The ADT plug-in for Eclipse simplifies your Android development by integrating the developer tools, including the emulator and .class-to-.dex converter, directly into the IDE. While you don’t have to use the ADT plug-in, it does make creating, testing, and debugging your applications faster and easier.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The ADT plug-in integrates the following into Eclipse:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;An Android Project Wizard that simplifies creating new projects and includes a basic application&amp;nbsp; template&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Forms-based manifest, layout, and resource editors to help create, edit, and validate your XML resources&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Automated building of Android projects, conversion to Android executables (.dex), packaging to package fi les (.apk), and installation of packages onto Dalvik virtual machines&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;The Android Emulator, including control of the emulator’s appearance, network connection settings, and the ability to simulate incoming calls and SMS messages&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;The Dalvik Debug Monitoring Service (DDMS), which includes port forwarding; stack, heap, and thread viewing; process details; and screen capture facilities&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Access to the device or emulator’s filesystem, allowing you to navigate the folder tree and transfer files&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Runtime debugging, so you can set breakpoints and view call stacks&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;All Android/Dalvik log and console outputs&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;Figure 2-1 shows the DDMS perspective within Eclipse with the ADT plug-in installed.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhseY4i3N8igdWNYA_td3gKITCFJvnlH1r32JUYyG_8l3qkb7ARxlvmKvCXV3SxNxb0M_byngP9tiAIZa6DCeMWD2QVZfAXGBdpporPpPFSlOWzm-LiWtksR72n19CFgMpPOz5ekVrQJt0Y/s1600-h/image4.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;404&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTjFf9TtWUVchK2GEhKMylfSU8AolCgm0QNjBnBn0oPQsqtZrKGNQitErNQyiZFkQCfY3nLoUR0EWLt7jQz3BRcOF90mu8M5BrzNwRIfa5iyNbzbFkaDipvgmu-_sqgTmR0SPEj6VeYDx0/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;505&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Installing the ADT Plug-in&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Install the developer tools plug-in by the following steps:&lt;/div&gt;&lt;ol&gt;&lt;li&gt;Select &lt;b&gt;Help ➪ Software Updates ➪ Find and Install&lt;/b&gt; … from within Eclipse. &lt;/li&gt;&lt;li&gt;In the resulting dialog box, choose &lt;b&gt;Search for new features to install&lt;/b&gt;. &lt;/li&gt;&lt;li&gt;Select &lt;b&gt;New Remote Site&lt;/b&gt;, and enter the following address into the dialog box, as shown in Figure 2-2: https://dl-ssl.google.com/android/eclipse/&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtzxmDV6qoMOpdjcuWvTHz6v7XvfC-pgmjRw30F98l6qCtQ49EzeFxl0xXeW4IuXGOoGBqmivyMD-DXGVlf0WzibImveUMaIxaTz8f-JryocI-R4-UKuz2H_kix41qVRUaWNNNjxFZkCC7/s1600-h/image12.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;534&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg87HvgjyFgub7RhLTt6PX153mwa3Gc5JoGMPN7YKlZqkoB8B0BWNk0ihIXX-1I8L4lxSNx-smMZsCEGLH582-VAK1k8w0LtFihyphenhyphen9inMbyJrIrchJMtULO2RdqaB8wgatyMPLnKfOFFoYN1/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;522&quot; /&gt;&lt;/a&gt; &lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;The new site you entered should now be checked. Click &lt;b&gt;Finish&lt;/b&gt;.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Eclipse will now download the plug-in. When it’s fi nished, select Android &lt;b&gt;Plugin ➪ Developer Tools&lt;/b&gt; from the resulting Search Results dialog box, and click &lt;b&gt;Next&lt;/b&gt;.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Read and then Accept the terms of the license agreement, and click Next and then Finish. As the ADT plug-in is not signed, you’ll be prompted before the installation continues.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;When complete, you’ll have to restart Eclipse and update the ADT preferences. Restart and select &lt;b&gt;Window ➪ Preferences&lt;/b&gt; … (or &lt;b&gt;Eclipse ➪ Preferences&lt;/b&gt; for the Mac OS).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Then select &lt;b&gt;Android&lt;/b&gt; from the left panel.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;Click &lt;b&gt;Browse&lt;/b&gt; …, and navigate to the folder into which you unzipped the Android SDK, as shown in Figure 2-3; then click &lt;b&gt;Apply&lt;/b&gt; and &lt;b&gt;OK&lt;/b&gt;.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivTQK9UN1xhzaGkR6Uo3972aHbdB2U50Xn5c_pIzuCX3wz6yRPjE1Ueh0a4_dfvRPZx2ee2545hyLhhqOYh6RYbPAzOKnIQ5tSThBSKqfT-zyO4HCtuu7XJjpcalaoMiYb82OuoEUqVnFi/s1600-h/image16.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;402&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjFazEcmP9j5PjKZxZTJfzUxj6rvGNLxUflPzH1K84ZrxnRsHCtXLwPF83_FU3QFilwxkdg-McrI5CztS1FxglOpFpW6HUFW1ABS6nejbwXkfRsrDT9Vd0osWw991dMF_f5yblZYh1WD02d/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;549&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;If you download a new version of the SDK and place it in a different location, you will need to update this preference to reflect the SDK with which the ADT should be building.&lt;/i&gt;&lt;/div&gt;&lt;b&gt;Updating the Plug-in&lt;/b&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;As the Android SDK matures, there are likely to be frequent updates to the ADT plug-in. In most cases, to update your plug-in, you simply:&lt;/div&gt;&lt;ol&gt;&lt;li&gt;Navigate to &lt;b&gt;Help ➪ Software Updates ➪ Find and Install&lt;/b&gt; … &lt;/li&gt;&lt;li&gt;Select &lt;b&gt;Search for updates of the currently installed features&lt;/b&gt;, and click &lt;b&gt;Finish &lt;/b&gt;… &lt;/li&gt;&lt;li&gt;If there are any ADT updates available, they will be presented. Simply select them and choose &lt;b&gt;Install&lt;/b&gt;. &lt;/li&gt;&lt;/ol&gt;&lt;div align=&quot;justify&quot;&gt;&lt;i&gt;Sometimes a plug-in upgrade is so significant that the dynamic update mechanism can’t be used. In those cases, you may have to remove the previous plug-in completely before installing the newer version as described in the previous section.&lt;/i&gt;&lt;/div&gt;next &lt;b&gt;Creating Your First Android Activity&lt;/b&gt;&lt;br /&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/9067611098195175596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/getting-started-with-android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/9067611098195175596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/9067611098195175596'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/getting-started-with-android.html' title='Getting Started with Android'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEiTjFf9TtWUVchK2GEhKMylfSU8AolCgm0QNjBnBn0oPQsqtZrKGNQitErNQyiZFkQCfY3nLoUR0EWLt7jQz3BRcOF90mu8M5BrzNwRIfa5iyNbzbFkaDipvgmu-_sqgTmR0SPEj6VeYDx0/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-6554203526598518408</id><published>2012-05-17T08:29:00.000-07:00</published><updated>2014-05-30T21:58:17.845-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>The Dalvik Virtual Machine</title><content type='html'>&lt;p&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/introducing-open-hands-set-alliance.html&quot; target=&quot;_blank&quot;&gt;previous &lt;strong&gt;Introducing the Open Hands set Alliance&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;One of the key elements of Android is the Dalvik virtual machine. Rather than use a traditional Java virtual machine (VM) such as Java ME (Java Mobile Edition), Android uses its own custom VM designed to ensure that multiple instances run efficiently on a single device.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The Dalvik VM uses the device’s underlying Linux kernel to handle low-level functionality including security, threading, and process and memory management. It’s also possible to write C/C++ applications that run directly on the underlying Linux OS. While you can do this, in most cases there’s no reason you should need to.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;em&gt;This book focuses exclusively on writing applications that run within Dalvik. If your inclinations run toward exploring the Linux kernel and C/C++ underbelly of Android, modifying Dalvik, or otherwise tinkering with things under the hood, check out the Android Internals Google Group at&lt;/em&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;http://groups.google.com/group/android-internals&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;All Android hardware and system service access is managed using Dalvik as a middle tier. By using a VM to host application execution, developers have an abstraction layer that ensures they never have to worry about a particular hardware implementation.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The Dalvik VM executes Dalvik executable fi les, a format optimized to ensure minimal memory footprint. The .dex executables are created by transforming Java language compiled classes using the tools supplied within the SDK.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Android Application Architecture&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android’s architecture encourages the concept of component reuse, allowing you to publish and share activities, services, and data with other applications with access managed by the security restrictions you put in place.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The same mechanism that lets you produce a replacement contact manager or phone dialer can let you expose your application components to let other developers create new UI front ends and functionality extensions, or otherwise build on them.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Android Libraries&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android offers a number of APIs for developing your applications. The following list of core APIs should provide an insight into what’s available; all Android devices will offer support for at least these APIs:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.util:&lt;/strong&gt; The core utility package contains low-level classes like specialized containers, string formatters, and XML parsing utilities.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.os:&lt;/strong&gt; The operating system package provides access to basic operating system services like message passing, interprocess communication, clock functions, and debugging.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.graphics:&lt;/strong&gt; The graphics API supplies the low-level graphics classes that support canvases, colors, and drawing primitives, and lets you draw on canvases.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.text:&lt;/strong&gt; The text processing tools for displaying and parsing text.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.database:&lt;/strong&gt; Supplies the low-level classes required for handling cursors when working with databases.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.content:&lt;/strong&gt; The content API is used to manage data access and publishing by providing services for dealing with resources, content providers, and packages.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.view:&lt;/strong&gt; Views are the core user interface class. All user interface elements are constructed using a series of Views to provide the user interaction components.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.widget:&lt;/strong&gt; Built on the View package, the widget classes are the “here’s one we created earlier” user-interface elements for you to use in your applications. They include lists, buttons, and layouts.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;com.google.android.maps:&lt;/strong&gt; A high-level API that provides access to native map controls that you can use within your application. Includes the MapView control as well as the Overlay and MapController classes used to annotate and control your embedded maps.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;android.app:&lt;/strong&gt; A high-level package that provides access to the application model. The application package includes the Activity and Service APIs that form the basis for all your Android applications.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;android.provider:&lt;/strong&gt; To ease developer access to certain standard Content Providers (such as the contacts database), the Provider package offers classes to provide access to standard databases included in all Android distributions.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;android.telephony:&lt;/strong&gt; The telephony APIs give you the ability to directly interact with the device’s phone stack, letting you make, receive, and monitor phone calls, phone status, and SMS messages.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;android.webkit:&lt;/strong&gt; The WebKit package features APIs for working with Web-based content, including a WebView control for embedding browsers in your activities and a cookie manager.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;In addition to the Android APIs, the Android stack includes a set of C/C++ libraries that are exposed through the application framework. These libraries include:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;OpenGL:&lt;/strong&gt; The library used to support 3D graphics based on the Open GL ES 1.0 API&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;FreeType:&lt;/strong&gt; Support for bitmap and vector font rendering&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;SGL:&lt;/strong&gt; The core library used to provide a 2D graphics engine&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;libc:&lt;/strong&gt; The standard C library optimized for Linux-based embedded devices&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;SQLite:&lt;/strong&gt; The lightweight relation database engine used to store application data&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;SSL:&lt;/strong&gt; Support for using the Secure Sockets Layer cryptographic protocol for secure Internet communications&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Advanced Android Libraries&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The core libraries provide all the functionality you need to start creating applications for Android, but it won’t be long before you’re ready to delve into the advanced APIs that offer the really exciting functionality.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android hopes to target a wide range of mobile hardware, so be aware that the suitability and implementation of the following APIs will vary depending on the device upon which they are implemented.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.location:&lt;/strong&gt; The location-based services API gives your applications access to the device’s current physical location. Location-based services provide generic access to location information using whatever position-fixing hardware or technology is available on the device.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.media:&lt;/strong&gt; The media APIs provide support for playback and recording of audio and video media fi les, including streamed media.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.opengl:&lt;/strong&gt; Android offers a powerful 3D rendering engine using the OpenGL ES API that you can use to create dynamic 3D user interfaces for your applications.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.hardware:&lt;/strong&gt; Where available, the hardware API exposes sensor hardware including the camera, accelerometer, and compass sensors.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;android.bluetooth, android.net.wifi , and android.telephony:&lt;/strong&gt; Android also provides low-level access to the hardware platform, including Bluetooth, Wi-Fi, and telephony hardware.&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;next &lt;strong&gt;Getting Started with Android&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin:0px; padding:0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt; &lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;http://tweetmeme.com/i/scripts/button.js&quot;&gt;&lt;/script&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/6554203526598518408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/the-dalvik-virtual-machine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6554203526598518408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6554203526598518408'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/the-dalvik-virtual-machine.html' title='The Dalvik Virtual Machine'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-8598431745983279020.post-450270350442547128</id><published>2012-05-17T07:50:00.000-07:00</published><updated>2014-05-30T21:58:17.815-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android Applications"/><title type='text'>Introducing the Open Hands set Alliance</title><content type='html'>&lt;p align=&quot;justify&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/android-sdk-features.html&quot; target=&quot;_blank&quot;&gt;previous &lt;strong&gt;Android SDK Features&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The Open Handset Alliance (OHA) is a collection of more than 30 technology companies including hardware manufacturers, mobile carriers, and software developers. Of particular note are the prominent mobile technology companies Motorola, HTC, T-Mobile, and Qualcomm. In their own words, the OHA represents:&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;em&gt;A commitment to openness, a shared vision for the future, and concrete plans to make the vision a reality. To accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience.&lt;/em&gt;&lt;/p&gt;  &lt;p align=&quot;center&quot;&gt;http://www.openhandsetalliance.com/oha_faq.html&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The OHA hopes to deliver a better mobile software experience for consumers by providing the platform needed for innovative mobile development at a faster rate and a higher quality without licensing fees for software developers or handset manufacturers.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Ultimately the success of Android as a mobile platform will depend largely on the success of OHA partners in releasing desirable handsets and mobile services that encourage the widespread adoption of Android phones. Developers meanwhile have the opportunity to create innovative new mobile applications for Android to encourage more mobile technology companies to become part of the OHA.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;What Does Android Run On ?&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The first Android mobile handset, the T-Mobile G1, was released in the US in October 2008 and in the UK in November 2008. The Open Handset Alliance has further committed to deploying additional handsets and services that support Android early in 2009.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Rather than a mobile OS created for a single hardware implementation, Android is designed to support a large variety of hardware platforms, from touch-screen phones to devices with no screens at all.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Beyond that, with no licensing fees or proprietary software, the cost to handset manufacturers for providing Android-compatible variations of their handsets is comparatively low. It’s hoped that once demand for hardware capable of running popular Android applications reaches a critical mass, more device manufacturers will produce increasingly tailored hardware to meet that demand.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Why Develop for Android?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If you have a background in mobile application development, this is meaningless to ask:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;A lot of what you can do with Android is already possible.&lt;/li&gt;    &lt;li&gt;But doing it is painful.&lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;Android represents a clean break, a mobile framework based on the reality of modern mobile devices.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;With a simple and powerful SDK, no licensing fees, excellent documentation, and a thriving developer community, Android is an excellent opportunity to create software that changes how and why people use their mobile phones.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android is backed by more than 30 OHA members and is surrounded by significant industry buzz.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;In market terms, the growth in portable devices is a worldwide phenomenon, with mobile-phone ownership outstripping computer ownership in many countries. The increasing popularity of smartphones — multifunction devices including a phone but featuring cameras, Internet access, media players, Wi-Fi, and GPS services — combined with the increasing availability of mobile broadband and Wi-Fi has created a growth market for advanced mobile applications.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;What Will Drive Android Adoption?&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android is targeted primarily at developers, with Google and the OHA betting that the way to deliver better mobile software to consumers is by making it easier for developers to write it themselves.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;As a development platform, Android is powerful and intuitive, letting developers who have never programmed for mobile devices create useful applications quickly and easily. It’s easy to see how innovative Android applications could create demand for the devices necessary to run them, particularly if developers write applications for Android because they can’t write them for other platforms.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Open access to the nuts and bolts of the underlying system is what’s always driven software development and platform adoption. The Internet’s inherent openness and neutrality have seen it become the platform for a multi-billion-dollar industry within 10 years of its inception. Before that, it was open systems like Linux and the powerful APIs provided as part of the Windows operating system that enabled the explosion in personal computers and the movement of computer programming from the arcane to the mainstream.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;This openness and power ensure that anyone with the inclination can bring a vision to life at minimal cost. So far, that’s not been the case for mobile phones, and that’s why there are so few good mobile phone applications and fewer still available for free.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Corporations will also be attracted to Android for the level of control it offers. By using a popular enterprise programming language in Java, no licensing fees, and offering the level of access and control users demand, Android offers an excellent enterprise platform.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;What Does It Have That Others Don’t?&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Many of the features listed previously, such as 3D graphics and native database support, are also available in other mobile SDKs. Here are some of the unique features that set Android apart:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Google Map Applications:&lt;/strong&gt; Google Maps for Mobile has been hugely popular, and Android offers a Google Map as an atomic, reusable control for use in your applications. The MapView widget lets you display, manipulate, and annotate a Google Map within your Activities to build map-based applications using the familiar Google Maps interface.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Background Services and Applications:&lt;/strong&gt; Background services let you create applications that use an event-driven model, working silently while other applications are being used or while your mobile sits ignored until it rings, flashes, or vibrates to get your attention. Maybe it’s an application that tracks the stock market, alerting you to significant changes in your portfolio, or a service that changes your ring tone or volume depending on your current location, the time of day, and the identity of the caller.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Shared Data and Interprocess Communication:&lt;/strong&gt; Using Intents and Content Providers, Android lets your applications exchange messages, perform processing, and share data. You can also use these mechanisms to leverage the data and functionality provided by the native Android applications. To mitigate the risks of such an open strategy, each application’s process, data storage, and files are private unless explicitly shared with other applications using a full permission-based security mechanism.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;All Applications Are Created Equal&lt;/strong&gt; Android doesn’t differentiate between native applications and those developed by third parties. This gives consumers unprecedented power to change the look and feel of their devices by letting them completely replace every native application with a third-party alternative that has access to the same underlying data and hardware. Every rule needs an exception and this one has two. The “unlock” and “in-call experience” screens can not be replaced in the initial SDK release.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;P2P Interdevice Application Messaging:&lt;/strong&gt; Android offers peer-to-peer messaging that supports presence, instant messaging, and interdevice/interapplication communication.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Changing the Mobile Development Landscape&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Existing mobile development platforms have created an aura of exclusivity around mobile development. Whether by design or as a side-effect of the cost or complexity involved in developing native applications, most mobile phones will remain nearly identical to what they were when first unwrapped.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;In contrast, Android allows, even encourages, radical change. As consumer devices, Android handsets ship with a core set of standard applications that consumers demand on a new phone, but the real power lies in the ability for users to completely change how their device looks, feels, and functions.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Android gives developers a great opportunity. All Android applications are a native part of the phone, not just software that’s run in a sandbox on top of it. Rather than writing small-screen versions of software that can be run on low-power devices, you can now write mobile applications that change the way people use their phones.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;While Android will still have to compete with existing and future mobile development platforms as an open source developer framework, the strength of use of the development environment is strongly in its favor. Certainly its free and open approach to mobile application development, with total access to the phone’s resources, is a giant step in the right direction.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Introducing the Development Framework&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;With the PR job done, it’s time to look at how you can start developing applications for Android. Android applications are written using Java as a programming language but are executed using a custom virtual machine called Dalvik rather than a traditional Java VM.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Each Android application runs in a separate process within its own Dalvik instance, relinquishing all responsibility for memory and process management to the Android run time, which stops and kills processes as necessary to manage resources.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;Dalvik and the Android run time sit on top of a Linux kernel that handles low-level hardware interaction including drivers and memory management, while a set of APIs provides access to all of the underlying services, features, and hardware.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;What Comes in the Box&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The Android software development kit (SDK) includes everything you need to start developing, testing, and debugging Android applications. Included in the SDK download are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;The Android APIs:&lt;/strong&gt; The core of the SDK is the Android API libraries that provide developer access to the Android stack. These are the same libraries used at Google to create native Android applications.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;&lt;strong&gt;Development Tools:&lt;/strong&gt; To turn Android source code into executable Android applications, the SDK includes several development tools that let you compile and debug your applications.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;The Android Emulator:&lt;/strong&gt; The Android Emulator is a fully interactive Android device emulator featuring several alternative skins. Using the emulator, you can see how your applications will look and behave on a real Android device. All Android applications run within the Dalvik VM so that the software emulator is an excellent environment — in fact, as it is hardware-neutral, it provides a better independent test environment than any single hardware implementation.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Full Documentation:&lt;/strong&gt; The SDK includes extensive code-level reference information detailing exactly what’s included in each package and class and how to use them. In addition to the code documentation, Android’s reference documentation explains how to get started and gives detailed explanations of the fundamentals behind Android development.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Sample Code:&lt;/strong&gt; The Android SDK includes a selection of sample applications that demonstrate some of the possibilities available using Android, as well as simple programs that highlight how to use individual API features.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;Online Support Despite its relative youth, Android has generated a vibrant developer community. The Google Groups at http://code.google.com/android/groups are active forums of Android developers with regular input from the Android development team at Google.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;For those using the popular Eclipse IDE, Android has released a special plug-in that simplifies project creation and tightly integrates Eclipse with the Android Emulator and debugging tools.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Understanding the Android Software Stack&lt;/strong&gt;&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;The Android software stack is composed of the elements shown in Figure 1-1 and described in further detail below it. Put simply, a Linux kernel and a collection of C/C++ libraries are exposed through an application framework that provides services for, and management of, the run time and applications.&lt;/p&gt;  &lt;p align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBiGwRmpCxGNptdAd7fllHoBRoXpvn8y78MJco8Nvccr7iFfIcZrP6W0m73st6mdrG0rQDvaau9vCHouzYIlyE4T4ekwA8kbYfFNFPxa7bM7mMnMUWJpKm92XN-UZ4_KlkXkr7_OQUZ3MG/s1600-h/image%25255B2%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px&quot; title=&quot;image&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhq4QU_n7bANZG6vdR9l7xzYDr-uwgwYGxow0z8Cywqy6bTqRpmooOilyZexHMwQ8tr4UnV41W9mqW6fx4A7RFdL6WcZcSm4WLY1Pa06Oax-YCxCS4dJhpgqSfQ3VaEPL178wtU9Xnxp4Z3/?imgmax=800&quot; width=&quot;438&quot; height=&quot;447&quot; /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align=&quot;justify&quot;&gt;&lt;strong&gt;Linux Kernel:&lt;/strong&gt; Core services (including hardware drivers, process and memory management, security, network, and power management) are handled by a Linux 2.6 kernel. The kernel also provides an abstraction layer between the hardware and the remainder of the stack.&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p&gt;&lt;strong&gt;Libraries:&lt;/strong&gt; Running on top of the kernel, Android includes various C/C++ core libraries such as libc and SSL, as well as:&lt;/p&gt;   &lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;       &lt;p&gt;A media library for playback of audio and video media&lt;/p&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;p&gt;A Surface manager to provide display management&lt;/p&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;p&gt;Graphics libraries that include SGL and OpenGL for 2D and 3D graphics&lt;/p&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;p&gt;SQLite for native database support&lt;/p&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;p&gt;SSL and WebKit for integrated web browser and Internet security&lt;/p&gt;     &lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Android Run Time:&lt;/strong&gt; What makes an Android phone an Android phone rather than a mobile Linux implementation is the Android run time. Including the core libraries and the Dalvik virtual machine, the Android run time is the engine that powers your applications and, along with the libraries, forms the basis for the application framework.&lt;/p&gt;   &lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;       &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Core Libraries:&lt;/strong&gt; While Android development is done in Java, Dalvik is not a Java VM. The core Android libraries provide most of the functionality available in the core Java libraries as well as the Android-specific libraries.&lt;/p&gt;     &lt;/li&gt;      &lt;li&gt;       &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Dalvik Virtual Machine:&lt;/strong&gt; Dalvik is a register-based virtual machine that’s been optimized to ensure that a device can run multiple instances efficiently. It relies on the Linux kernel for threading and low-level memory management.&lt;/p&gt;     &lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Application Framework:&lt;/strong&gt; The application framework provides the classes used to create Android applications. It also provides a generic abstraction for hardware access and manages the user interface and application resources.&lt;/p&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;p align=&quot;justify&quot;&gt;&lt;strong&gt;Application Layer:&lt;/strong&gt; All applications, both native and third party, are built on the application layer using the same API libraries. The application layer runs within the Android run time using the classes and services made available from the application framework.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align=&quot;justify&quot;&gt;next &lt;strong&gt;The Dalvik Virtual Machine&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin:0px; padding:0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt; &lt;/script&gt; &lt;script type=&quot;text/javascript&quot; src=&quot;http://tweetmeme.com/i/scripts/button.js&quot;&gt;&lt;/script&gt;&lt;/div&gt;  </content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/450270350442547128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/introducing-open-hands-set-alliance.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/450270350442547128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/450270350442547128'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/introducing-open-hands-set-alliance.html' title='Introducing the Open Hands set Alliance'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEhq4QU_n7bANZG6vdR9l7xzYDr-uwgwYGxow0z8Cywqy6bTqRpmooOilyZexHMwQ8tr4UnV41W9mqW6fx4A7RFdL6WcZcSm4WLY1Pa06Oax-YCxCS4dJhpgqSfQ3VaEPL178wtU9Xnxp4Z3/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-578879137346622302</id><published>2012-05-13T07:02:00.000-07:00</published><updated>2014-05-30T22:34:01.619-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>How to get more space on your hard drive</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;previous &lt;b&gt;Your customized desktop on a flash drive&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;There are a lot of disk cleaning software utilities available for analyzing disk usage and cleaning up folders. Making more space available on your hard drive helps to get the best performance out of your computer. Part of the process is to analyze how much space you have and which files or applications are using up your precious hard drive space. WinDirStart does all this and also cleans up your drive. Best of all it’s a portable app for Windows which can run straight from a USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You can download the free application from portableapps.com.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDDJnUphIaUoG6hrJ-THiZXMyU9z5cJYe_MOeTNo6nzXIxSeufu4YLFTmUXV2bIrS3kw3K0WSXQ8q5SOMJfcAAjWD4VKWjNMgDdcAH277BvxJh4MbCItkFdbA-EMB8XsFptsSd3dUibBpY/s1600-h/image%25255B2%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;124&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizGzm1HylyO7VSUM-GQZfWf8JufgR9UMpS4ohEqU8LBEKBSX5-syIN05p2h4HTp6fxZ29CYsvkVF0zqR8_66JO9jCxVRLdaaaNTiMIPTd1Mmh0AD_weC5rezABmZFn3LXPF6-3eylqwXPD/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Previous article in this blog gives an overview of the Portableapps.com suite. If you already have the portableApps.com suite on your USB flash drive, click &#39;Options&#39; on the PortableApps.com Menu and select &#39;&lt;b&gt;Install a New App&lt;/b&gt;&#39; to add WinDirStart to your suite.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitrWARHP5XWZfNAPjUfF3CO0XBn_9pu9cbq-w-C1a1Bf5Ucyz-XtxjKuhJd8Eu28iedsmYKGHzHAtO_jOZSh5xkSVDMH1gMp6yNrTMPBxHMgXOBeUkjrgoilZy6OE97y6-ox2K-I-FjSFS/s1600-h/image%25255B5%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;496&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizSnjgn4vDR4NxiRFzaDgJfNynYi9GiSCoAgKd_leTGZg_-PpXQ4wBQLJ8g5c3oZ8h2ntrYjZp9GgRwVmoQyD5RaV3i2XrdkLNzjbuoubnL7AWPsk96LA8f36hKA6VTkNewi7gzj6TYJFk/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;354&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Select the downloaded &lt;b&gt;portable .paf.exe file&lt;/b&gt; you just downloaded. WinDirStart will be automatically added to the menu.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-jBQkZiNyxXQEGJ6wdXOFMqIH4Ic3Y9cTvXYOtGzkux_rIkjtFLTVeWmDqPPfydBrzv0iIOlpy5b1bbUOTajVEQqqnEHq2ysbZbwtf8E0hsgk-X9woNqL4sPefkcOLF55t1n4NPHneqIH/s1600-h/image%25255B8%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;245&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg73GDzdt9McC1VjPa23qv819Xh7YBZvaDCDjafJDEOJ6Iqv6FfL_poNts8ICgoK1dDMChXftwmClhv3CK77pMRjpvU9g50HXhnwrKphx74CxU9_ZZHtxFLL_0JfUbW_pWKCq73qeP0dJ7p/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You can also install it separately, as a standalone app that’s not part of the suite. Now you can browse all of the folders on your computer and see what is really taking up all the space.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz408wpge2ECHWztgxcK3FEunOIArTMLT-cUcFjRRqDwUEhiHtE8YNUTK8pR4vPv9NdjFlAmLSoRBESHAzkeCODKIYZbwJCPgMNJnwgfXqjyV7WGiwpWzkmoD6HhK7ITEdl7nsb0_8RBoO/s1600-h/image%25255B12%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;344&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjUPhxwlwb0vjCAv0N1tZXJlPS84SAz-yNUjuMMl8epXu-rBwxhNZZyStKhetsQvO91sqGE_e9iVJAUO687qX0hU0fSPr6Jrwomvy6litiXgTTN0AYIowyMrSK1Nvf7rDNoDnAwtHvSgIKh/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;478&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You&#39;ll be surprised to find unnecessary files and applications which are otherwise hidden. It actually breaks down the results of the analysis in a colorful, easy to understand manner. You can track almost all files.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Clicking &#39;&lt;b&gt;Options&lt;/b&gt;&#39; on the menu allows you to check out free space, see the file types, and a lot more. You can also view the files in Directory list, Treemap and Extension list.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The &#39;&lt;b&gt;Clean up&lt;/b&gt;&#39; option offers you various options to remove unwanted and unused files.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpQW2oMoWrQn8s13QScDXlSx514bgPi5RRW8LyFqujmzP2ihnFr5QI4SaHdpo42iOBVAZJ31SZe-oqqI8xnD0NpA1f4kOe4kiv2kTExM3-xuUU4lmp3VlCXvJoDVtWjncNpLN65AlKg8kB/s1600-h/image%25255B15%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;357&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt8uSU3b3YwBrANGk83kHpCVG4wr5pe6GeR2wSIt8giGSccenO83iE1FgfxBgGnaAMpm-Up4kyMmazhJ5hHaBfYkBmTt1PiGzSN5XdjZcdDdpLbWqSZ5fAnPF9TLCThQp9w9zPgvq2oJ3n/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Little apps like WinDirStart on your USB flash drive, make flash drives more than just portable storage devices.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;next &lt;b&gt;Email on your USB flash drive&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/578879137346622302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-get-more-space-on-your-hard-drive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/578879137346622302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/578879137346622302'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-get-more-space-on-your-hard-drive.html' title='How to get more space on your hard drive'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEizGzm1HylyO7VSUM-GQZfWf8JufgR9UMpS4ohEqU8LBEKBSX5-syIN05p2h4HTp6fxZ29CYsvkVF0zqR8_66JO9jCxVRLdaaaNTiMIPTd1Mmh0AD_weC5rezABmZFn3LXPF6-3eylqwXPD/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-6166417872049506822</id><published>2012-05-13T04:59:00.000-07:00</published><updated>2014-05-30T22:34:01.624-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>Your customized desktop on a flash drive</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;previous &lt;b&gt;How to run portable apps from USB flash drives&lt;/b&gt;&lt;/div&gt;When you work between a desktop and a notebook, or between an office PC and a PC at home, don’t you wish you could be working with the same desktop, setup just the way you like it? That is now possible with MojoPac.&lt;br /&gt;MojoPac is not a remote access or desktop sharing software, it’s virtualization software which lets you carry a customized version of your desktop on your USB flash drive so that you can view it on multiple systems.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEju89kIhzfVXfLt8M-Klc4Ck6qte98_gj8w7mpaRDP2g5NQrBsvi66OADO9nDbmlc9SBTA9S1tKySchnbyE0-tPmjgHbbtGRt2q5IBWLgWzFYYq5_VBm2Qhafwis4YrNM6R5UdGqO_60Eim/s1600-h/image%25255B2%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;411&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhThTD2Tw7io_rfM3mfFWUkVO5JYWKMsh31Z1TrT3JWN5FOe4-FNNjew99gd6L8yY44YwINh5tgJgYDt3XTA5VsNDI8yhw6S-lxH9cpqYnp_4fjxAMfBsWq58tjvxfo9NlpODly3nOuWlNg/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;The virtualization software, from RingCube technologies, creates an extra desktop on a USB flash drive. You can load most of your favorite apps on a virtual desktop and enjoy them by just plugging in the flash drive to multiple systems.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;MojoPac software can be downloaded from the MojoPac website; the setup file is 21.6MB. During the installation process, select your USB flash drive as the location to install MojoPac.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlxadL1-TKVUJsrfV0DfoREflCmcUd65cYPUy9Iu797k3qUBlrWWwNTpvapYa38d0KXlFqeECSmP6ZlUbCdKmbWDKIeZ-zf5doJ6I49Fp7or8MXXTE10omf9QLO7HfdOAur1EsRVi336lz/s1600-h/image%25255B5%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;392&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPVPDLOwuGM_6tpRXvd7Fnhg8spoOyXgQ7u1uJyIFldbLz4SBCxL5f1NDPYowIM_5y-H34tKeE4rTKsMyV9VfgAltXkGjrgAzkthrcnFxTsM0yLFC4qx5JASErTlhl5aPzgeGC40chctHd/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;After the installation process, a virtual XP desktop will be created on the USB flash drive. By default it will include Internet Explorer, Outlook Express and Windows Messenger, along with My Documents, My Pictures and My Music.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Next, register at the MojoPac website and create a username and password for the MojoPac desktop.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMLyjGbXa-JAqyD0-tDvDPch9T1MI1Ig8b57caqRr-WoYb6IFwC8fHZZh28kN_WG5IiBvSw6dC1UEvYRtqP4hHTQIiopfQn2AgHlqe6nE_oDEJQ1GsxyBw9mQYEvLIN60auMVumBC7tfrI/s1600-h/image%25255B8%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;387&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnFLjocwU_LxgZRLRTHfE3RKHNMI8t_x5_dSZEE_gUD_Wq2K6pZtkYwefp08KqTVbp2bRvCBDn77fnU1CRb2JG1NCiTj1igzqJrTlvviFNbwdjaQpE7jLRf_foGhp8ytnZqgppBMJBJBZu/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The whole interface is fantastic and can be easily customized to suite your needs and style. It has a task bar, start menu, icons, and desktop shortcuts, all very familiar to an XP powered computer.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Software, desktop apps, and files can be uploaded directly from the host computer. When you plug in your USB flash drive with MojoPac installed there will be two desktops and two ‘My Computer’ sections. Similarly, there will be two kinds of drives, those on the host computer drive and those setup as the MojoPac drives. A person working on the desktop of the host computer can access all the drives of MojoPac desktop, but someone working on the MojoPac desktop from a USB flash drive can only access limited drives of the host computer via the MojoPac desktop.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCESzzuMfhHRRedNwjHWeS8ZiRYsWQKzhKKYz-P5RV3BlLyoeomUrBnsI447PYbkXCTwmGRRepUMXUA92cUTF0e_qyQCk048n8mTZuNzf-Tn2ArvyJ2WFjpdWUgW_QUJ8lNCffYWPO5GrN/s1600-h/image%25255B11%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;390&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMux5af59XEp4Zw9XfmPFDL0csHAQa3jDy5WiB8JkNcXMuFxIE1shQqwweO1wvVZYQoBwfDCeILLti5vS6FYnfq7FHZopn8ylbbm3lX_dxaSd_RxArnQZFTsNFtCLnQ5dDkreb8ghd1gnL/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You can customize the desktop wallpaper and other settings, just like any other desktop. Music, video, and games can be uploaded to the MojoPac desktop. You can also upload software like RealPlayer, games, Firefox and web messengers.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTCwO6cn3g7V4rkOAbKD5WHabJ5_eXqeano9UpEa2GPewVQMt_7HELFR4jRaXAMf9XvvuxqhaRMjoYvdmeNfG8XsaGQCmtQZrybkF8i0yV8NtRtet-blGHgEz90NHs3TBiEgccVSSsJx3E/s1600-h/image%25255B14%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;440&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBjYeai65HcEM9N7R7Xaf99bcIq7YQhLvgRj0hsn2trLiMMu5fKKeMnv3KG-IbB4C548fnUFpH55kh0WRqgqspzwAvHUeLrNoRAMIgFYt4fMZmO-M1wP7ndvjQ9z-CCWrm-2Cb8euV9pKU/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Another benefit is that the USB flash drive is not blocked and can be still used for data transfer. But the best part is that the host computer is not stalled; it is easy to swap between host computer and the MojoPac desktop at anytime; there is a switch button near the top. The only disadvantage is that it’s a bit slow since the whole interface is operating from a USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhG-3LXAv_fsTrE4EutXClNw4JiKaw3Cnj4p-9vk0VbirL4vXsdVrBCq81Wcp1QiNN48wjW2BWDweS3qlHsqp-FL-ZUV5ORZpgE8-5MiTlMw4lGhIXT-fOL0xVQyi6PuOaJgtaf2wq1ycVQ/s1600-h/image%25255B17%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;389&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEigQM95ZYH_fd8u0D_chWaYBzkkXTwGMQ32fdVuZLgr5PxMv3Ly_oUfjGTyHhdP1BK8z3qt7Im1e4y2Xt3f4ACEqlydck4WMsURYCdq88Nl6pUWQRGKj7eFR0HHJj2eR2d_Zhr_QNtjNnRS/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;MojoPac is a great way of carrying around a customized and familiar desktop so that you can use it on any PC. There is a lot of advanced virtualization software available in the market like Ceedo and VMware, but they have certain limitations. Ceedo requires you to purchase another product, Argo, to run a targeted application without modification. VMware is the best virtualization software out there, with many advanced features and support for different operating systems, but it is also a very expensive product costing nearly USD 6000. MojoPac is a great portable desktop option as it supports most popular software and replicates an entire desktop—plus, it’s free!&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;next&lt;b&gt; How to get more space on your hard drive&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/6166417872049506822/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/your-customized-desktop-on-flash-drive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6166417872049506822'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6166417872049506822'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/your-customized-desktop-on-flash-drive.html' title='Your customized desktop on a flash drive'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEhThTD2Tw7io_rfM3mfFWUkVO5JYWKMsh31Z1TrT3JWN5FOe4-FNNjew99gd6L8yY44YwINh5tgJgYDt3XTA5VsNDI8yhw6S-lxH9cpqYnp_4fjxAMfBsWq58tjvxfo9NlpODly3nOuWlNg/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-1305995948855348083</id><published>2012-05-13T04:49:00.000-07:00</published><updated>2014-05-30T22:34:01.598-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>How to run portable apps from USB flash drives</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/how-to-set-up-mp3-player-on-your-usb.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;How to set up an MP3 player on your USB drive&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Life becomes a lot simpler when you can travel light with your little netbook or notebook and a USB flash drive, which can literally carry your entire digital world. The PortableApps.com Suite allows you to run applications directly from your USB flash drive, without the need for installation. Here&#39;s what this suite has to offer.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The PortableApps.com Suite offers a collection of portable apps, which are preconfigured to work from portable devices such as USB flash drives. The suite includes portable versions of Mozilla Firefox for web browser, Mozilla Thunderbird for email client, office suite, Mozilla Sunbird for calendar/scheduler, Pidgin for instant messaging, Clamwin for antivirus, CoolPlayer for audio player, Sudoku game, KeePass Password Safe for password manager, Sumatra PDF for PDF reader, minesweeper clone, backup utility and integrated menu.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiI5-aSX9arjTOR8Mp0Q9j6m0_BgxDj062ZsgsnWLCF8FIKWKKh1R3aioG9aZDNuDbXbYVGSbmwhqmo1Z8ZSUl01LsAwE-34a44ZN_ScWiEInAchHdJEgj5PmxQYTx3-QzdH1ZLHvBNxnAJ/s1600-h/image%25255B2%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;496&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3b_ZCedqZ7Fch9tyGsySNHh8r1wE4rqfqL_13SDyG9fmFtcFK6qsgiY04yG6m_0AcUGFVbAFDENbX4AlQJYqY2M6XyMRhlJhMgHBwZQUA2IaeUSnzRMz5W3S-0Udm7NtNjAWwS-Bjp9es/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;348&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You can install the PortableApps.com Suite and Platform from its homepage here http://portableapps.com/&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifdGtE0PyKa1EdMt3yhvN83CMKvhpki19P4VthdAcZJ30N4zHaUgQI1KemGsTxjsaYbN8CHRjoXTA8UjkrcypA_TBeO42mO3btf5cWCkRhDHjZz7ZrDH3UeMhWYFXuvSoDqJl1uuTP0uFC/s1600-h/image%25255B5%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;169&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNj6oWzadFjo6OlsvrGcsGq2OTBEoz3CfQ-vJ5iux-lHL20iZ26dvlu0OhOBByQ5uPhl3C8M_4u6Lgxi9OZ_ZY-mkW4nqJXR_xFUd86ecc7Jj-seH0LfnUh597J3XSrEbZIioVxggk-FgQ/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Clicking the download button gives you the option of installing only the platform or one of the two suites, Suite Light and Suite Standard.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Suite Light replaces OpenOffice with AbiWord Portable. Suite Light can be installed on a 256MB+ devices and Suite Standard requires 512MB+ devices. You can download a suite of your choice. You need only to add the apps of your choice.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgnS72Cy0l46LejzwkVARXVF3oTIMOqEDX6aW-gUZfMF_LTHhr0C1kREDM04jEx6YHmOTlnv487pevl0eUrsRzriE_aMrkq3aNie46etYaYoT9niwLMTNPYNp1DsW4Kp_WBtwjNvwGIEQ-z/s1600-h/image%25255B9%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;178&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMOZ4Sma1M7Gnzspj12RtXzHwNr3OJJ0xZiZD70G_Logd3xBOaouwCSKhmxe6Wn6b-S1mTQVReQ9pEJR9wZ_O61Ft_JL3msE25YSRqLl-k86-M9q-toT5ngpB07uz5qH2RPkMCr_X-RdpT/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;340&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Install the suite in the root directory of your USB flash drive.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjskR12P7Q0Ty0veYrcUqOSf8geknRsB6K3iBf4j28CVx3s3ntIf-6HFXcEZl89pjej6JbZFglsFShJHH8xjRGndgRVuI0aPUDBgDEp-Uw8EyD-0Je1w7za1igiuZmTV6oAb9PKbFzC4PbF/s1600-h/image%25255B12%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;339&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZNhOxbh1bNWnFE8m0nR-SkEBfq2BYf5OuH1bK7lBqeJATdVPbsVn6gCZkpxf-8-Mzj2M4Yz9KMGfHoRQCnc3r_GWWV3gDDoC2069YjttDr5JoDnI5PMdxKNEuLAP5bpoiOgaH5EdZJQEK/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Now you can simply plug in your USB flash drive to launch the apps when you need to, and unplug it when you are through. It&#39;s that simple.&lt;br /&gt;You can use the apps and delete those you don&#39;t need.&lt;br /&gt;next &lt;b&gt;Your customized desktop on a flash drive&lt;/b&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/1305995948855348083/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-run-portable-apps-from-usb-flash.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/1305995948855348083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/1305995948855348083'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-run-portable-apps-from-usb-flash.html' title='How to run portable apps from USB flash drives'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEj3b_ZCedqZ7Fch9tyGsySNHh8r1wE4rqfqL_13SDyG9fmFtcFK6qsgiY04yG6m_0AcUGFVbAFDENbX4AlQJYqY2M6XyMRhlJhMgHBwZQUA2IaeUSnzRMz5W3S-0Udm7NtNjAWwS-Bjp9es/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-4100991471674697367</id><published>2012-05-09T21:39:00.000-07:00</published><updated>2014-05-30T22:34:01.610-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>How to set up an MP3 player on your USB drive</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/how-to-keep-your-usb-flash-drive-virus.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;How to keep your USB flash drive virus free&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Winamp is a very mature free media player and with it and an Ontop USB flash drive, you can create a portable media player with your collection of MP3s that can then be used hassle free between computers.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The Winamp Media Player program is only 10.3MB, so it’s easily stored on a 4GB (or larger) USB flash drive. Winamp music doesn’t require a lot of memory and it plays all widely used audio and video file formats. To install the Winamp Media Player on your USB flash drive, download the free software to the hard drive of your computer. I used Winamp Media Player version 5.47&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFD8Je8Dd-RhyWrPcLwLBV8Ln5htGCK7DwRNwnrRhuBWPnFBNXTwXPdQQsR10PT-QvUZcbZSVpOniV1hhb4gmdVc5XRyXWZ0SheK9-O4wdKQnEe8gHBIfehKVdikicqvxzDks5G5vSADgE/s1600-h/image3.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;234&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifjOnmzCQGwzLb-FKxEyuQadR0VHdqRJbc0padGuYVTYx_NsddgsnHsMeX2QlL2EbbH6ebqpoA94b8FsOEGflKHaCEX8fEV18bBnX5QzEyBOYfi3RU5e5wcNalh6K8eNU7p0RdYG1Kt0IW/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;351&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Install to the default folder c:\Program Files\Winamp on the computer&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgR-SCm8CBeAmNX8CDA6j_tApIeZCPlljY1jbR3uEqEZyGAqTZab6KSvdJtP-hi5dEfk7Abqr0xY0eYs4hxzThLKOhAFqbGJOkaPhCvciNxefu8npEr6-9UKZXZ6ZWochbQb24W7EFM-_S/s1600-h/image11.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;377&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisgY0YdPncPOUSth2C6V7mt5nT_uiQjhlr1kALIh-fjVZ5vB38F63Tq0hp8MIc9Ux-D37LmYA_oanLh969zRSf2BvTcYvIVubth-GwWYg-Iy-6tItCdXCMDrwkGWYwXMgmB-QO-kX51BI4/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;484&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Plug your Ontop USB flash drive into the USB port of your computer.&lt;br /&gt;Go to the c:\Program Files\Winamp location on your computer and copy the Winamp folder to USB flash drive.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZ0Ya_ZQtiU4CDxRourpNSa7KASAYD2G3G1BUDbFCdXxLaNY8JJlAC_flpb0TDzYtcsZcXYrZEA0BiCACcKrqnDL1zfsvNZ6b56Q32kmJeREN9pRQCPHkuGrXMuedkyQi3KXO933SMVe10/s1600-h/image10.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;256&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhnHPO9LC1y_IfgY6IsFW2EAdhax7nPBBR9i31TSQXKLKoPOGra-PMPvltchA0iu68OxTrfVDfG6W9Es2ezw3abnHxdlG5Pw-QhaPO-Pw_0J20SMQ3VWveNJI5yxBKUXGxPbEMFkGCGm0-N/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;490&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Next you have to create a &lt;b&gt;Winamp.cmd file&lt;/b&gt; inside the Winamp folder on the USB flash drive. To create a Winamp.cmd file, open a new Notepad file and type in the following text:&lt;br /&gt;&lt;b&gt;start Winamp.exe /inidir=ini&lt;/b&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTEMqrzzWeml4I-8iO22J6tV3lxLv5feAIcAbJHOBVavuvQr3J0tEt5z2TlwTBYsoNiJPt7hBg_PQxEKZhCNhF31yyvHKFwEIdq4C1CPLpdVqON-3343gxYaH3GHvMBIW34nTobmK-FwyV/s1600-h/image15.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;437&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNkngGrunpAwBaP07O-aXt5PRYKDkp_f49cKRIgBQtF84L-1yXFLAkveXyH5gMHrvS1iAyoU5XDnX19F7RmhS32BUYab1uZgtEW9eVbgMxGM3V34sfwPT6w83WRPKRbD36p5O-Y2sVFtl5/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;495&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;In Notepad, select &lt;b&gt;File &amp;gt; Save As&lt;/b&gt; and save the file using the name winamp.cmd. To do this you will need to change the default file extension &lt;b&gt;.txt&lt;/b&gt; to &lt;b&gt;.cmd&lt;/b&gt;. You can now close Notepad.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Now &lt;b&gt;double-click&lt;/b&gt; on the &lt;b&gt;winamp.cmd file&lt;/b&gt; you’ve just created. This will open the Winamp Setup window.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiF22P17A759BRosL5U-5T_lm-X35P7yxeXV8A6Nhzy4gzNrnlhkkGhA532f8m-QX-yF6feHE0C67u83wYGIWOoHqYyG3qTWL607XpZ9TRr8yX771VkmwyygpGRrvrjsa-Uq0McvFp9yD7q/s1600-h/image19.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;408&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgUUglYtNJ4NC_F1i5jZ5_Ap0DQ-qCAJOIU-eUKv4zPwPzwjaKDKDqAhFp642dXoMfbloGI-WeLuPpdfGxnuQJN4Q5naqCwvncG6mXv2uIeZ5w7NLBwkXathVqTE4z330JJwAU8IcAdV_Ak/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;483&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;On the step 2 of the Winamp Setup window, uncheck all of the file types that can be associated with Winamp.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxqJn8BL0fyc8RcNTUuOz2cq1jdy2wojiNH-6mVa576xTUQJno0hzRgn1bo7bW90w8gRHmHfiYfWs7flnIQPM7RSA2c7pTpW3qCtIoqK6flPwg47249LkPODk6WDwyI_7ybI11Iv9ELkdk/s1600-h/image23.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;344&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEFumCVHhKxHPpSKQBaFDyF5rueulMgIPYnhZLIS5rDO400Ef-Em2pYxLW2BQjKbFZB4xuQaRqjZ_PI6xpqTuBUD8mgzaFNF0D7oksT3od7QAT5izscfdhaIm07nBBYeZur0Qn3HviR4ap/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;480&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Uncheck all of the file types&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;In the last step of the Winamp Setup window make sure you uncheck the ‘&lt;b&gt;Yes, allow anonymous usage statistics (recommended)&lt;/b&gt;’. If you leave it checked Winamp will be sending periodical reports of the application to you via email.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;After you click &lt;b&gt;Finish&lt;/b&gt;, the Winamp Portal pops up with a message at the centre &lt;b&gt;Add Media to Library&lt;/b&gt;. You can close the message and then copy your Playlist from your personal computer to your USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHqevFO7VCBJD-5tIck7EZ-lE57tXNJMBemKrZFmg8QtsTO8P9QTonk04WYmlrX6ICsq8BUMtWO3dCsrIAQW_8RHIi9r4GxURC-VH6EUt4xojc0CVs8ADB5vAd0UPjqmcX1-brzrUtfVSO/s1600-h/image27.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;287&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMG7ACVtSP6pjkvnFHpszYWFyEU4rWf_xx0Y0v19x-HuhFif-rKkDRYp2TlsaN_wn4wmZgcZlJzBSeI0q_LtAVipbo5rtYcPfIeKwbgU3aW8_glzGu3fCejZMtLJzVELdTZ6echcuk8txx/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;483&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Close the Add Media to Library window&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;After doing all of this, every time you want to listen to your favourite songs on different computers, go to your &lt;b&gt;Winamp folder&lt;/b&gt; on your USB flash drive and double click the &lt;b&gt;Winamp icon&lt;/b&gt; to open the Winamp portal.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiotu9z1Q0py9OJeG4NoXCkQvNvLs_M3wEpqyoGarMUXsOBdvlpDfGIRlv2Ybci8BobEhfivnRwW-YmbpKCFw8qIJNHNtb760KtAzY22T1dkU_xISq6ZlbZsdXXW5WmyU0nSGCKuFSJFq72/s1600-h/image31.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;277&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhS-HajFII5r_SFXW_U0eztqk_4WHjO9dihpF0yFES4DSQ3tAts8GPyYed6P97joGMwypyHINm6lJK3mileSTYazk2beDlz2bRhZMv1PAgAjGZinJAitBBF0_A2R3fz-6_Bdfyp1YDn8zK-/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;480&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Double click on the Winamp file&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Go to &lt;b&gt;File &amp;gt; Play File&lt;/b&gt; and then select or queue the media files on your portable Winamp player to play your music files.&lt;/div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjz_D-ONZ9C-QCdF-QNvA0ouCjYM7iDXmcbgLx-bUzOXEgb6soLrowYtIGIFkrKPgGLsgABns17LirDXjEgqvl978C-rG-c-2EZAkuQR05IUGTHH-yhme-UsNgh5BIFd1xjpvbhVgCLuUef/s1600-h/image35.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;284&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiz03nPbriTTEaygN0Yj0b_T2712ly8cF9wL9Yoh0VAC1Tz6y3GwxxPKX8sVAM7cGTzMgQHZ2fTzdDc_1K_pH0GQ4gALaccNuNWSiER4VM_FApX-ESu2sM1UzvhKm7YL0YxgMuhF4y1VE2P/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;488&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Click Play file or press L on the keyboard&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9gto_kneCoG-kipnl3aiUpRSG76TTyJs64TSIKsg_yXE_qKQqdmK2AOqE_J19fIKsuPeKhAx7QKEf_BD0ikyrf52eu591p3A0PY4iJoMNH75xhY2H5ZCpYexixXO4R6YRbSJjykUlNRjt/s1600-h/image39.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;382&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgBuEln4t5Zvaq08zJcCAVR4LSRr8TaQ6uLusGx1hWZh_PSy0ltycKu0mpUjIz5qB5zy0ft7W40zllKw008Ay2Gw2hcfFUy88M3uJf_MnVfltQubnduJYZLQuDlvAgOVuEbVREGev1HLT0u/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;482&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Select the audio files from the USB flash drive&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjC-HvwckoMCxqyxREmEgTRP06Ujf-3Sc41KTAYawFaVr05SwpD4WLDsY82fDaITTxL4hu9PRPs_f2hfGfsg4179rRU1sFOCgPeJZ8tfJfp8Uni5Wd0hb4fjinXIz9JWSf0TEopKjl-9Bb/s1600-h/image43.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;103&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdV37VToiHbMXJQ447budI3A1X3OLg6AbVad8WnMKj4r12daokiyBM0OolRsgeAMApUewx2VCYG31dp8TyP8iv-oguvmnWK1PRw3bPPTmGYg6a5wE-9bwj_-OJjYo0EyWxjcUhWQS1oGaQ/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;474&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Winamp’s interface showing the song names, etc&lt;br /&gt;By loading the portable version of Winamp Media Player with audio files onto an USB flash drive, you can carry your own music library with you and listen to them on any computer without having to worry about whether or not that computer has a media player installed.&lt;br /&gt;next &lt;b&gt;How to run portable apps from USB flash drives&lt;/b&gt;&lt;br /&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/4100991471674697367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-set-up-mp3-player-on-your-usb.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4100991471674697367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4100991471674697367'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-set-up-mp3-player-on-your-usb.html' title='How to set up an MP3 player on your USB drive'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEifjOnmzCQGwzLb-FKxEyuQadR0VHdqRJbc0padGuYVTYx_NsddgsnHsMeX2QlL2EbbH6ebqpoA94b8FsOEGflKHaCEX8fEV18bBnX5QzEyBOYfi3RU5e5wcNalh6K8eNU7p0RdYG1Kt0IW/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-6806655966048002983</id><published>2012-05-09T04:33:00.000-07:00</published><updated>2014-05-30T22:34:01.629-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>How to keep your USB flash drive virus free</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/how-to-format-drive-with-ntfs-file.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;How to format a drive with the NTFS file system&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;USB flash drives are the most convenient devices to use to carry and transfer data. While they are really useful, they are also prone to viruses. There are a few choices of major antivirus programs available, unfortunately, many of them don’t detect viruses on removable drives and may not permanently remove the viruses. USB Virus Scan is an USB virus cleaner, one of the best available.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;The best part of USB Virus Scan is that it scans the USB drive, memory card and any storage media as soon as the USB drive is connected. If Virus Scan finds any virus, Trojan or any other kinds of threats, it cleans them immediately. The program scans the following areas:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Operating memory&lt;/li&gt;&lt;li&gt;Local drives&lt;/li&gt;&lt;li&gt;Removable media&lt;/li&gt;&lt;/ul&gt;&lt;div align=&quot;justify&quot;&gt;USB Virus Scan is developed by USB Virus Scan International Inc and you can download a trial copy from their website &lt;span style=&quot;color: #4f81bd;&quot;&gt;usb-virus-scan.software.informer.com/2.3/download/?go&lt;/span&gt;. The trial copy will scan all the sectors of your computer including removable media, but to remove it, you’ll need to register the software. Registration costs $25.95 and it’s just a onetime cost unlike other antivirus programs. You don’t need to pay any renewal fee.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;To install the program, double click the downloaded exe file and follow these steps:&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Click ‘&lt;b&gt;Next&lt;/b&gt;’&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgEm8CkJTqa8qnhje8WKiaNSt88HmNkmhbEbw_mh0weRbJsVad80QSFAXcNE_1hwNBljyGJxWJsj5uWyZqmpbWYrniadfLcbZP-MdYWJpEMr-DRwUuyVyOi_RxAvAJPibGju7xShTTIvaX/s1600-h/image%25255B3%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;404&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuWsiEEO3kZleRnyqctf9ToCyjcWDGVDauU47RX4n203ekS5yifoszikNSc1Y3kw0prVEvRbY3JgykqYYeMVI8l0R5RhOjLG0mtTzGPLaE9_CQNjW2fOi-ODacm6JdrpU8cj66fdRWcwtV/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;526&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Select the ‘&lt;b&gt;I accept the agreement&lt;/b&gt;’ radio button and click ‘&lt;b&gt;Next&lt;/b&gt;’.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiBQBCx6muz6Mnl1My4UeCJlzl_Qjb7WWtWFmkR2aU7aVjlCJoY022jW4Ex6mgvgKcUBYvYj4PqdNSP0bhHLA3UaH7OKpb4Iz4B7nf3lz9l3EQNJ90HrNqxoptjzH4TTCthhD2vvEYvvSoH/s1600-h/image%25255B7%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;393&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_RrShqGg5Tip3oOTTKwHguMJ-mypBu567UXy9qZXVdsKu4v77TfoRbdDk-YCxlbAZWQ7NZC3KHuThoVMJit_SzzVmF4X_WiowU0aXRjYkgsvHiJv8ATQYTbxDqmab7_BdM-VNVX6K65wb/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Use the ‘&lt;b&gt;Browse&lt;/b&gt;’ button to select a different destination location other than the default location (if required) and click ‘&lt;b&gt;Next&lt;/b&gt;’.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCAeh2IzEcLASml5tEmRtxbcJYOAnRBFgU7yXz9PqHdGIQ_AYpCLq7NRJbE1ShKFGS_WQ_iKweyCA9FTZKWN23D4Gz1mPCyZQ3eXP_obbnAbusgegAPM25jvfY0qMtIfu6xp5XrabHrREG/s1600-h/image%25255B11%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;395&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcbkARGOV8S-v9YHh1VAy8NEqF4FCCPdWoUtd99ESsA6e62xWvtHa_iGVFAidGtO7hBhyQ912ghCdstz8Xj1MCuACJuDsWUTTxOntvbUSwCtMni6hZZh5q5k56aE3fxKex10-UgL4DoWjP/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;509&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Click ‘&lt;b&gt;Next&lt;/b&gt;’.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWDHzbfy6yR8y2Mz7d_0tU_qOgF0LkIjOMECq45lkl85u4wDDOOi5FO6l-VZ09oTuxYx3UmXJFiTDIv2hZ1jKP5WVvij9r6hUiPsFG9HeSDyDfB5aEGjUewj4km2Q1F809c0EIglTEr20R/s1600-h/image%25255B15%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;390&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgs5yUjVqa3ppFHQHhHDC51rtD6M-qSFzalw7po0yUjCq8alDZJl339RVlLkZSBGSu9FdchBfRBmOcjnatiwYTq0ZKSCJT_4RBLBjjuptJgn0X3ekqzYENLai6NAa6Lw96Yap1yJMkz-P0I/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;507&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Click ‘&lt;b&gt;Finish&lt;/b&gt;’ to complete the set up.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicBLoQRuFwH0nCoLQhGQcSYsYqFbL-gpbKEkAIcZ_ye7z7L3AjfKGnUq7yZh7Ss29NnpJ7clfa7rarSY1SbBUobYpt5-4OLCCQAZPISTgKeNMnFylj_UEBZMUtUuhOaQMJ_SmsQbW3YeNh/s1600-h/image%25255B19%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;395&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAViAzeKH20Ehu8aAIAR-DlTMuquC7hfinmeOLLB-i8oMgGUVFeR0gG1aQDCpHHmCAiLYrFTVsMsnb_B7ElZVZ0qMAt22c9sJ6QEUU2N46IdHMMDEgL9tH8Glk1YsRj7925qmwsGtpzl0W/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;512&quot; /&gt;&lt;/a&gt;&lt;/div&gt;USB Virus Scan will then launch.&lt;br /&gt;Its interface is compact and simple unlike other antivirus programs like AVG.&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhfW6U53AGJggnBU0MB_KdNCQWldO-D2_KSTD7ku0k5EQmmVRijV9GO8RfIPeaLfZoKCrMhFQ8UW30iLxl0HMfIO7qVkSyRl0780YIED8BgqSlqIsfXKlc-N0tTDw7xLmg_KwlzoDjdKnvE/s1600-h/image%25255B23%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;351&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsauOEh_-wIAHiODh0x7h_ecliWTSSsesjzujqTnVdSLdmpIBrdtYztffmAD1OvKdjTp0CETcfQWqVL1b7-BUlTMCfxmrGQeyhnJd8Ho5Om1RTbqZT4CnjhfufOOAN6d2X07jf_MglzTIw/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;512&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;When you launch the program for the first time, it is advisable to perform a full scan of your system, including operating memory, all local drives and any removable media. If the scan detects any virus, clean the infected files immediately.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj75AYMFPIY3k2o_nw0K4DMgj4YXH9FwmcuY09M4zSh2Ve3OQlsBgUToqyClWoUDAwsWBEiElyp3f3_u82vRnmnMiHHHvYV3PlDJRRgCzPMgEi81T1E-JehDTJRfZbmObaG0W2-jOHZcw8P/s1600-h/image%25255B27%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;543&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMcS7_RXhUoksNY3SaOxiD4SNLoF9QMvVOX2XOPCwFAxGY0Xz-XmENmIj9Ls-q9dIQGSZfEIsBNnZdwHY6O1ofwJh_w_qWcW8N15REHywNllvd87E7Dft4dhWMyTvJsHdF807QWtZdQnKG/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;504&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;From the next time onwards you won’t need to scan the removal drives manually, as USB Virus Scan will automatically scan your removable drives as soon as you connect them to your computer. This will mean that you’ll be able to plug in a USB flash drive of a friend or colleague without worrying about whether or not it contains a virus. If it does, USB Virus Scan will find it and deal with it immediately.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;next &lt;b&gt;How to set up an MP3 player on your USB drive&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/6806655966048002983/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-keep-your-usb-flash-drive-virus.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6806655966048002983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/6806655966048002983'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-keep-your-usb-flash-drive-virus.html' title='How to keep your USB flash drive virus free'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEhuWsiEEO3kZleRnyqctf9ToCyjcWDGVDauU47RX4n203ekS5yifoszikNSc1Y3kw0prVEvRbY3JgykqYYeMVI8l0R5RhOjLG0mtTzGPLaE9_CQNjW2fOi-ODacm6JdrpU8cj66fdRWcwtV/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-7316050070451412897</id><published>2012-05-09T03:24:00.000-07:00</published><updated>2014-05-30T22:34:01.634-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>How to format a drive with the NTFS file system</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/counteracting-known-risks.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;Counteracting known risks&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;The most recent variants of Microsoft’s operating systems support NTFS, an advanced file system. Here’s a way to format your USB flash drive to the NTFS file system when it’s plugged into a PC running Windows XP. By doing so you’ll enjoy better encryption and a boost in performance of your USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Microsoft introduced NTFS, an advanced file system, with the Windows NT operating system and continued using it in Windows 2000, XP and Vista. NTFS is a standard file system that supports high performance, a self healing mechanism and file encryption. It also offers file compression and auditing, thereby providing larger volumes of storage than the older FAT file systems.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmjnuz7rWzYXX4CgB6fH-PmW7LgdyRzpsUpMRKLn4zeR5AK04INnxLAPkhyphenhyphenPMVbIFosnVXadWeMU8P0IvjhnFWFh-j2olJYHnU6U99AgdHf7aCxOWsf-RGaQ11_JUwLSInjn1mpRY4yAAw/s1600-h/image%25255B4%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;539&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXIWEaY154uUrmImCYvEzg5Dc-u0k6P7jZr-aXLn3cyGuss1EyHDH7czKO8HFn4tO3FqxegO7C50Kmte-nnsZ1uZMklrd-ihbZ20bsytQuRFIuVb3hiXMGWFSKpDbMNswdogQ5lpQO-avl/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;341&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If you format a USB flash drive with the &lt;b&gt;NTFS file system&lt;/b&gt;, it will increase the storage space by compressing the files. NTFS allows you to encrypt data on files and folders with the help of Windows XP’s integrated file encryption feature. The NTFS file system also allows you to grant and deny permission for individual files and folders. You can also set a disk quota.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;You can’t format USB flash drives with the NTFS file system in Windows XP by default. But with a little tweaking, you can and here’s how. Before you follow these steps, make sure your important data is removed from the drive as the data will be permanently lost during formatting.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Insert the USB flash drive into the USB port. Right click on ‘&lt;b&gt;My computer&lt;/b&gt;’ and then click ‘&lt;b&gt;Properties&lt;/b&gt;’.&lt;/div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwmZc_gfcZ9Zyf9Th-nAYL9ixM9hod6hYbw0Db6lXb2LQwyGCmMRyQwbDmaBkjKQvvzdzOuI4e7WOXdUnswkUx1WLgwlCGVOn6Yi6ljIJZ33e-26vI2GwXy75ZKtZnx8-kC40XbDk71CHi/s1600-h/image%25255B7%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;476&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj2yG222RjehKATs-vmhfoW4ck-aerbPrYvupwZ_wYMLwi3sfeE1-efmVuWJm3efoiO4JanwvA8WYqp6mqGrgh9331-KSg7L3M3-SEb2joCLLZ6BKvSfgS83Ef2ULejirgbnhTgc2YBU4Rj/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Select ‘&lt;b&gt;Hardware&lt;/b&gt;’ and open ‘&lt;b&gt;Device Manager&lt;/b&gt;’.&lt;br /&gt;You can see the ‘&lt;b&gt;Disk Drives&lt;/b&gt;’ tab here. Expand it to display all the drives.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgV42BO2gT6jqhKGvVZVQg-6Fhk60ip3MqManEsMsg4wLuA3DVtQGOVbLdLFp-JfZwtiD8pWSiD4UGxtF86VW6kVKeeK6cuq0VYOfxFIshC16i-iDefMJ3xt1aBso2re72WXnpnKcVdJ9cS/s1600-h/image%25255B10%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;239&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9mk94pW_bmlwljFtM-_veZzy1lTWdbvZNRcfOCxkfq3WDSd3FfV8dijYKHJPjsBejnGXcycJLNsoXAzOEa_4u__5xxbckJTp_Q8QBixlYJOBKYpc_HwpgXHm8YF2LcQxtIkPe6wZrmZGi/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Select your USB flash drive and double click to open ‘&lt;b&gt;Properties&lt;/b&gt;’.&lt;br /&gt;Go to ‘&lt;b&gt;Policies&lt;/b&gt;’. The selected default option will be ‘&lt;b&gt;Optimize for Quick removal&lt;/b&gt;’, change it to ‘&lt;b&gt;Optimize for Performance&lt;/b&gt;’ and click ‘&lt;b&gt;OK&lt;/b&gt;’.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghVnMWv2gdZR1XPVuqSllPGUV5Gbvmbo1isXt_leoAq9InvjIdwa82Ffl-Vteqn9XibH7F18p-uMw8MYGQfSoitejExTvuBCY8JJGkIo8Dum-pnl7QfwbxW6TQpef574I532fWP0sXMWMR/s1600-h/image%25255B13%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;494&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCHqVE6ZPYJeKxJHARNoWTm94I922_zqUE61cXBMg3UiauL-CX16dSwqid5khqSWK3C8PTP8FBsX59Fenp1IAN6hHo6tXBxXHa2PIcZSwV_JGWVNLOuzlHAOXQQM7audajxr0aqKoAFUBv/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Now close the window and open ‘&lt;b&gt;My computer&lt;/b&gt;’. Right click on the USB flash drive and select ‘&lt;b&gt;Format&lt;/b&gt;’.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHvr1cdiMEQREGCFRgKz40lyEt7iKN37NutFMGNlxo13KW3cO4a7J5cPJaA2H7aYwJZgv-RZwISxgHWNEqBu9ST8ESU6VfPOhqAvCZo9pzSu8fvGsXOa0C8ZhXVm5kuHMwbGQw-eZBgjCV/s1600-h/image%25255B18%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;487&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdT0I9T-ZCr8DOiRrB592hxjZJSbpOR81wI4C1lOBFdAJr7AEANSvfx1uY8P85ZQYHxJp59PtGAjSYdUA3hbXJeDhzWN-D6ky1wLCEq2xM7IP_CY9mEqcvMstqlN5SAlE8NgyesP-gKEZD/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;478&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;The &lt;b&gt;Format &lt;/b&gt;box will now have the option to format with the NTFS file system or FAT and FAT32 systems. (The options would have been limited to FAT and FAT32 if the steps above had not been taken).&lt;/div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgWXk_S9AM4sdzi2OCrfzccM1wV2cazDrPOxe54hVxWlb2byMs_9zEZFgx5jiXkx5VRwq-KLCuYPO5TVH1N7YDFdLzUorpRTsOvseXmE_9b-dE4cZ7_f4Op68BQ7LjjXs1leEYbsB804G_/s1600-h/image%25255B21%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;496&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNc1QX0DcCYT1KcyD2h-1Otj-BUnZI_HpHKsWWZeL2P6KCm6kdHK3VWNVk6UEZ_4qkuzOu2GbiOflqFzvAGOcYK4TIdbVcgZWzuumEGikj-bIFeSMTNKUSwFrwMY6DAfKuJev3If8VvHC3/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;323&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Select ‘&lt;b&gt;NTFS file system&lt;/b&gt;’ and start formatting.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUSX8tTU55fTcPW3BIgrDJaXU06PuSbM2nmlvKek6QXdxzJDcv6YXcjey2zria6TGwwxn5Zu1g6PGnwthZVZifhvt-nRMF_qdFs14PsoVXRj_SSKBOXuWPAPRX2n_pbL28oyVKyI2dB5qG/s1600-h/image%25255B25%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;432&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlvwB8ZrWV96FSPBxoLHENAe6GnqplC3WxO5EfG_CLcIk0yFgeJwiFHSu3G_j2I5A-D6ZEhuSXMIZBoKdsRvIKIUSsTosBaEW5IkqdUaqOlbN7U04MMWoku1L56M3RIEXgupSqUaqsgrHb/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;488&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Now your USB drive will be formatted with the NTFS format.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJYwqdGduVmciw9a1KEjEE__0ZnIFoNW84jRmufblD7gu5fEAELbPT-0i9j2YAdZc_xq5CfMDlNxH0czumTVoKfgbu2u9ScJrw4hlu8LGzJjtBa5_aeOv5vGSY5ufz93B_7CMcVnTwMPaz/s1600-h/image%25255B29%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;format a drive with the NTFS file system&quot; border=&quot;0&quot; height=&quot;510&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHB6s4ZhXQjfvE1AAB_nNyuTmw2GaKOjeQLRkfaXk6TuuNesoGOqdZ0BwL8yvmFhG5oRM-I2nMu81fC-MayJSqk7fTkCbgaIQZYBed8tBctBmxegEPyRyPboLo0tAwMxQGUffR0QDCi_sn/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;format a drive with the NTFS file system&quot; width=&quot;471&quot; /&gt;&lt;/a&gt;&lt;br /&gt;With NTFS formatting, your files will be more secure and you can also enjoy more space for your files and folders.&lt;br /&gt;next &lt;b&gt;How to keep your USB flash drive virus free&lt;/b&gt;&lt;br /&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/7316050070451412897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-format-drive-with-ntfs-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/7316050070451412897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/7316050070451412897'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/how-to-format-drive-with-ntfs-file.html' title='How to format a drive with the NTFS file system'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEiXIWEaY154uUrmImCYvEzg5Dc-u0k6P7jZr-aXLn3cyGuss1EyHDH7czKO8HFn4tO3FqxegO7C50Kmte-nnsZ1uZMklrd-ihbZ20bsytQuRFIuVb3hiXMGWFSKpDbMNswdogQ5lpQO-avl/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-2515790725451668985</id><published>2012-05-08T23:10:00.000-07:00</published><updated>2014-05-30T22:34:01.605-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>Counteracting known risks</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/recycle-bin-for-usb-flash-drives.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;A recycle bin for USB flash drives&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;USB flash drives have definitely made data transfer and storage very convenient. To make the most out of these tiny yet powerful devices it’s important to understand the possible risks associated with using them and to have knowledge of how to overcome those risks.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Getting a virus is perhaps the most common risk associated with USB flash drives. Kids (and adults!) swapping games, images and files can end up infecting the family computer. USB flash drives are often connected to various mobile devices and different networks which increase the chances of them being infected with viruses. So, how do you protect your USB flash drive from viruses?&lt;/div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgg_xzUvwPEI2nMiHDhHXwtrP4_TShLmluBhFiFRS7M3cE7cETWSHRc_xH-lTz9Swl2OdwRQfDp9Ztlfii7xSPWRxV0527iDsvgCvAagIM3PzC3qaG9k35JvpdAjnYpqN6ZxH3vVRnQysNG/s1600-h/image%25255B7%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;USB Security&quot; border=&quot;0&quot; height=&quot;445&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTzme70K13RSnAYJsTWlIji0gntgFWHq19aVDA9HN5Q8XQIz8dOK8d0C0nYcYYkiEz6deNDmx4I_BAhIlwbtVHom1vAr_rIJIuHKJilFhxFoOOKRdEtYpBctg5p-4KkYcjW-Oits-Gl3Ad/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;USB Security&quot; width=&quot;504&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;Unfortunately, the Autorun of a USB drive may be where a virus can be hidden. Windows uses Autorun to give you the option to explore, open or copy the contents of a USB drive. If this is enabled, Windows will read the flash drive automatically and inadvertently infect the computer with the virus in the process. Disabling Autorun may prevent this.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;It is important to scan your USB flash drive before transferring any data to or from your USB flash drive. Most of the time this keeps your USB drives clean. You can try various free antivirus software such as Panda, Avast, and AVG.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Another possible risk for USB flash drives is the corruption of data. Do you religiously follow the &#39;Safely Remove your USB Device&#39; instructions on your computer or other devices? If you are in the habit of simply pulling out the USB flash drive from the USB port as soon as you’ve finished, you could end up losing important data.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Even if you think that you have closed all the files on the flash drive, it is possible that the device is still active in the background without any visible indication. If you have important data on your USB flash drive and no back up, you might lose the data. Disconnecting the flash drive is so simple - right click on it and select &#39;Safely Remove Hardware&#39; or double click the icon in the system tray of your computer.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhywQQaHDTilvSIJ4WCEceRM-BpA28HdMT6QxhvR53LKM6XZzBWr3nMLVCY77rHQP3BrnrQNuqY5VaQ-hz3gRd6kEnDW_gJAX7Xp9WIiuQk0pysk-X24eKPCLU-I-1TImVRMTByP-e14a4H/s1600-h/image%25255B12%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;458&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPsjkXHaY7FWmb92nMwohSdTwbgpZyGoO5UdFiPF7Z6gUyKRlRTg5z_20JPHkEhU_DwKLpwpxfEqO_IKrnhaS_0TUYkZcWr_cnbvPmhvc81ckQCjgDz_71hgCGoGxOuaelXoiH2rFRKSzq/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;If you have lost data on a USB flash drive, there are various data recovery tools and simple system tweaks to recover it.&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;What about data lost due to the loss of the device itself? A USB drive carrying nearly 16,000 student and employee social security numbers was stolen from Roane State Community College in Harriman, Tennessee, causing embarrassment for authorities. Encryption of data can prevent such data from being accessed, even if a drive is stolen. There are free tools available to encrypt data on a USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;next &lt;b&gt;How to format a drive with the NTFS file system&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/2515790725451668985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/counteracting-known-risks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/2515790725451668985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/2515790725451668985'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/counteracting-known-risks.html' title='Counteracting known risks'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEjTzme70K13RSnAYJsTWlIji0gntgFWHq19aVDA9HN5Q8XQIz8dOK8d0C0nYcYYkiEz6deNDmx4I_BAhIlwbtVHom1vAr_rIJIuHKJilFhxFoOOKRdEtYpBctg5p-4KkYcjW-Oits-Gl3Ad/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-4907266247625785715</id><published>2012-05-08T22:37:00.000-07:00</published><updated>2014-05-30T22:34:01.615-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>A recycle bin for USB flash drives</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;a href=&quot;http://protorit.blogspot.com/2012/05/ten-usb-flash-drive-tips.html&quot; target=&quot;_blank&quot;&gt;previous &lt;b&gt;Ten USB Flash Drive Tips&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;div align=&quot;justify&quot;&gt;iBin is a small application that works as a portable Recycle Bin for USB drives when they’re connected to a computer (PC, notebook, netbook, etc). iBin is compatible with all versions of Windows and can be used with various removable storage devices.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;To install iBin on your Ontop USB flash drive, download the iBin zip file from &lt;span style=&quot;color: #4f81bd;&quot;&gt;http://www.autohotkey.net/~FirstToyLab/project_iBin_download.htm&lt;/span&gt; to your USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwXzPZSqclj-9yRfpONBIm_Hp7SJz73dc08mZmEBRnVHIPOEmDl1Fhzbs2BN6d6HFC-bpRrI_Ud0lZ7iFjGLRMFKw_lvAALx9uGzLSn3aj_7n2W3PuTQmyVSoWEpbcd5lL6EwZKaJxEVIq/s1600-h/image4.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A recycle bin for USB flash drives&quot; border=&quot;0&quot; height=&quot;465&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhnf18xlv47bnBLXh9wrwjXRozk-Z899bi_9EL6Yh4UWRJhbph9cwE8h43tmr0HdtMDq0P42PreyAxQflaskRfpxSs_lRn2-KXL_wZ0dTC6nGod04_G03-ILUv1lERw9a_jjttX0w4_Aqo/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;A recycle bin for USB flash drives&quot; width=&quot;512&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Extract the zip file in the usual way.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhoYwjbc2_mwT4PbTX1KvWOCFf-yrYXTh7BjZm9cSa0ganw20dQ-7VUBKugFVVVJCPwN5YSp8sAPdML9V96HR07SHLUHoWwfNLWqwMhyphenhyphenbnzdP_qG1DaND8w1YE2wOdgQE-iRbdmNIfyLQb/s1600-h/image9.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A recycle bin for USB flash drives&quot; border=&quot;0&quot; height=&quot;594&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiyg2fveWlAjGtUR8Qq9IuqbKZsJ0aHOFFYpjz3wXafeYCuNSVLrcHItclBgIRwmQr7crQkd7GeaUt94ca53UfbS8glUmcGvE02-4-PrT39OHXmoJBZ7U-eleXoxZWaq-nIJkmQcqRbPyFN/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;A recycle bin for USB flash drives&quot; width=&quot;514&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;b&gt;Double click&lt;/b&gt; on the iBin.exe file. The utility will create a container in the USB flash drive’s root folder to store deleted files. When you install iBin on the USB flash drive, it can be accessed from the system tray of your Windows operating system.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZPYbeBSLnKCmIxa5CZOws3yPilhlTWvJSA0oxEA0KCg5_MEB20j33l3lNzktyDoK8jorQuIEbe474wAIIzYH20D4o_8kZhWjZ1TrwE2J6s4SkpUG86YantUThwFlBMq2dfFprVnOsw0-g/s1600-h/image13.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A recycle bin for USB flash drives&quot; border=&quot;0&quot; height=&quot;134&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuM0mEGLJB1Bv3movt-Gljwc1Ie9TbEXsdOoRkuFu3L8vUq231zDOJrWef1N0jIohFAPdzuTU0G19ez4uqEeCR2bEu4jf00APPhIbv5VHsWUk6f7LntxymFO0Wj0qwyssMFkoppiusUUWK/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;A recycle bin for USB flash drives&quot; width=&quot;518&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi95fKn17Z9Qk47CXumWndbanOwJ512cNyJ0yE0kE4FYYEpySK9kLrIgthc50puDZAwCSUDLZvknS-koYKLnI2OelF0AmOBoQJN2M9wH8piY8SXuw3zBF_N2pnxSHBVSqXRsMmpbrBZU3uL/s1600-h/image17.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A recycle bin for USB flash drives&quot; border=&quot;0&quot; height=&quot;347&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhVK5VPQcdDpGJ1_Cu-A2d_Wd3JKS8mSvpdqwQTLcMotmtqqhm6gAIP8dsOO4WI-11YxjIGzInD_cG42h3ldIFUXKSjvjR9QII8A3U8qj9RLu_fP15GINHjbDtop40I23ykiCIczQyBUv0n/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;A recycle bin for USB flash drives&quot; width=&quot;517&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Now that iBin is installed, when you delete a file or folder from your USB flash drive, iBin pops up with a message to give you the option to delete the file permanently, or put it to the iBin so that it can be retrieved, if required in the future.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjU-IO2QNtBi5HAG4Njnu49IVzUyXCGHpaato_3V9Xry5oUu09NV2lUZA6U33tT9Ux8MFTjDMrrizUVQaLqfeliiqvWPLxZPgEXi0OLf7JkWhTWRmMFKevHiebvXvloSs4E4fwH9hienIgI/s1600-h/image22.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A recycle bin for USB flash drives&quot; border=&quot;0&quot; height=&quot;401&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhJmoKfTELxF945jm6w7h4RDoIMEZHlXJH2aN-suO8hrjfpSqnKId8KvnkG122_o-a3AVPVgDwONbbjP540qGfWtw1TDjDM_DOfgis8AOBhsOG9n1ohK7m0k0WjZhyphenhyphenmGxRthGJyQXC0g3T/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;A recycle bin for USB flash drives&quot; width=&quot;568&quot; /&gt;&lt;/a&gt;&lt;br /&gt;To take a look at what’s in the iBin at any time, click on the iBin icon from the system tray. The &lt;b&gt;Dumping Management window&lt;/b&gt; will pop up, showing you all the deleted files that are being stored on the USB flash drive, just in case you change your mind. Just like the Windows Recycle Bin, you can empty the iBin completely.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEievHHOciDiOUtyj6tLpwU-Y1MGB6a0go5vMxahIh1oqiS6_WT0RT_93WTDG4R-3oNoI3gJhB_sSKpY_UYDJh_6AMinqtLXAIJgzxiigfva0T8YoXRiFAaCQAn1OccZhgkCRLuFoKnj3mWI/s1600-h/image27.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A recycle bin for USB flash drives&quot; border=&quot;0&quot; height=&quot;399&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZcO5D2yBn-pjMJRietDwUitH7KlPwU9O2rNOAe_6k9pexe3QkgWQqPxg8zNnpB7Q-vEa5sYzBWOWxR3jcs3iVaJFgxtiZ_KuXkLKWnltARx14O4BkQQn4_0hTOdO_plSegvnh1X1be3QZ/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;A recycle bin for USB flash drives&quot; width=&quot;592&quot; /&gt;&lt;/a&gt;&lt;br /&gt;The iBin &lt;b&gt;Custom Options&lt;/b&gt; window allows you to setup your own preferences. If you wish to increase or decrease the space limit of the iBin container, just &lt;b&gt;move the slider&lt;/b&gt; to set the size limit to be anything from 1 % to 50% of the total free space on the USB flash drive.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_Q43qK7fX2Yl4sYS_g2TUSp8qT2JQriIxUpIQbN6b1jjeQEHqlSZxLaBlCdhcBWcRLZVC7FSWSXXyb8UpNjBi10bl3hannvgif0TsaZMh-o3khHvV0C9MJO4wnoA43H_qgiF2jYYNhoUL/s1600-h/image31.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;A recycle bin for USB flash drives&quot; border=&quot;0&quot; height=&quot;369&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGdEZJBNDFRkmtjU_vOktZRz_1V9OKVMK3QM_ytY2cumGd13CftNH6C5RVE85XpnyiA1YTIwpdUsRn2HfO9WlY_4xa1d-FxuYBQ-obAtOb8OWZl6IScB9TAplNngQYsoJ9BQAa7KyMaNwv/?imgmax=800&quot; style=&quot;background-image: none; border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;A recycle bin for USB flash drives&quot; width=&quot;555&quot; /&gt;&lt;/a&gt;&lt;br /&gt;If the iBin container exceeds the allocated space the Auto-Cleaner deletes the data automatically. If you delete a file from the USB flash drive, which is bigger than the size of the iBin container, it won’t store it in the iBin.&lt;br /&gt;next &lt;b&gt;Counteracting known risks&lt;/b&gt;&lt;br /&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/4907266247625785715/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/a-recycle-bin-for-usb-flash-drives.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4907266247625785715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/4907266247625785715'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/a-recycle-bin-for-usb-flash-drives.html' title='A recycle bin for USB flash drives'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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/AVvXsEjhnf18xlv47bnBLXh9wrwjXRozk-Z899bi_9EL6Yh4UWRJhbph9cwE8h43tmr0HdtMDq0P42PreyAxQflaskRfpxSs_lRn2-KXL_wZ0dTC6nGod04_G03-ILUv1lERw9a_jjttX0w4_Aqo/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8598431745983279020.post-8897271408865745005</id><published>2012-05-08T06:30:00.000-07:00</published><updated>2014-05-30T22:34:01.639-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="USB"/><title type='text'>Ten USB Flash Drive Tips</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div align=&quot;justify&quot;&gt;There is a lot more you can do with a USB flash drive other than storage and data transfer. The latest USB flash drives offer ample space and ultrafast data transfers for multiple desktop applications, hi-definition media files, as well as routine data transfers. The top ten USB flash drive tips help you get the best use out of your USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Firstly, did you know that there are a host of portable applications that can be stored on USB flash drives and used from USB flash drives without being installed on a computer or portable device? We show you how to setup an MP3 player with your collection, handle email between computers, and access productivity apps including a full office suite, for free.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Of course using a USB flash drive is not without risks, unless you know how to set it up properly. We explain how to format a drive with the NTFS file system, protect it from viruses and get the jump on common concerns like data corruption.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;To personalize your use of your USB flash drive, we’ll also show you how to customize your desktop and then take it with you to any PC. We’ll also explain how to set up a Recycle Bin function on a USB flash drive.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;USB flash drives are also great maintenance tools for your computer. They can be used for disk usage analysis and even to install an operating system!&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;&lt;i&gt;Turn a USB flash drive into bootable media&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;If you still think that pen drives are used only to store and carry data, you may need to think again. Netbooks and other MIDs are fantastically convenient devices, but how do you install operating systems on them without an optical drive? The solution? A USB flash drive!&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;b&gt;Preparing the USB drive&lt;/b&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Before you get started, make sure you have access to a Windows Vista or Windows 7 machine.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Connect the USB flash drive to the USB port and follow the steps below:&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Click &lt;b&gt;Start&lt;/b&gt; &amp;gt; &lt;b&gt;Accessories&lt;/b&gt; and hover on &lt;b&gt;Command Prompt&lt;/b&gt;.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEja-TDGDYEPD7I6D2DsgSRRDHMYr6vdl2vDXYzGrOgvEUfNx8efuOIRvhNyEwZCMusiO1axZmcz81UQsCG1DUaEa39EYkFNK31REoc1NbVhVzM1UWx3Sjwq8E3xrNWvLGSvIaEmfojJSe7Y/s1600-h/image%25255B12%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;343&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-XlsVcTiMHcsLjyV4C6E6P0KV4nYGwO4A4OidegzTau-MTiZm2ZWFehjWUaxCy5koov1Sev3yP_xwxQUZrZPEkgwDMclSSX9O_o1wcFiWKf0orbmVJF5zJ040aZVIdRkJfIRgZabDm4uy/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;303&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Right click on the &lt;b&gt;Command Prompt&lt;/b&gt; and select &lt;b&gt;Run as administrator&lt;/b&gt;.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6BNFN6_1j6YCwj8kw36oDwAb3sb3oY8Ti1g_L11Ritb0Kc_eUvbfgowk3vdq_3iBbQGVZeLbWPqiNjtE958rK0fQ6A0fpBKMrWKK1cqq-ArtpvklEUlesSdWGleIbsHvVZR4UhG67cjco/s1600-h/image%25255B11%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;281&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhSv1NjX7fRLXYh8MDWFgBiUKmE932oUfsi7vy1coDrjiWqPNw64HvpEMnvuCxzEvymFvaWzAeyeHRA21Mo4rD2s3pnvlD3AAKFNIICC17vxAd4LKq6sbSsvJMvxsut9x6H1ETuU26zhLy/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;438&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Type ‘&lt;b&gt;diskpart&lt;/b&gt;&#39; and press the &lt;b&gt;Enter&lt;/b&gt; key. This will initiate the built in Windows disk partitioning utility.&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbG3CUTrSuCu-6-wnWUeNJ8fT8xtLeSnk62b84EDYTBFzmiM-798EMOrv-NuezUS2fE_7BTHvp-xVxqIPZ6MET9v0tT0ux-gCc1zN7OVMd2nwhJxiRPK0hKXClNCcExruaGvvG_KCHR0lc/s1600-h/image%25255B16%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhJl0VZzEpYBKREomLhUNt_t32AnGJEqzoGydtABOXVI3sFVqTJBfIRHhUj4uW9ElUaQI1Kv7Drqo7eXDsOSCLpGrnukeX3XdQL30uj-vlcGqSqSdB7iHHRMenANHySZCeARc6zNOr4oYcL/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;532&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align=&quot;justify&quot;&gt;Type &#39;&lt;b&gt;list disk&lt;/b&gt;&#39; and press the &lt;b&gt;Enter&lt;/b&gt; key. Identify which disk is your USB flash drive.&lt;/div&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhf5Zlk8I1BgnarOU3e9rTpWdMPw2iWn5-J_Csk8qTkvhddqW2WCgLgBBcpMLngYSehPdx9CfgeYXyhFFO8HOnyaI2qfWQw9UwBa2sI9iVUCjDXMwEac6-jE7fj4hZWlYy1YHN2xofQ-wi5/s1600-h/image%25255B20%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;264&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhgB-WfzloAIPVbN6t_53T6XsrCZ5c-X9NjrbNi_7DyfuZZvoWpNa-CgV9hkbVPTUfXnFO-dYfAhF2dr9_vgpaWLrqQU6DTjDRZoiTXbaEmMSMua5fmPzo_3YCb_n1Ry_YiK_zRn1ZIDAya/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;528&quot; /&gt;&lt;/a&gt;&lt;br /&gt;In this example, disk 7 is my USB flash drive so I will type &#39;&lt;b&gt;select disk 7&lt;/b&gt;&#39; and press &lt;b&gt;Enter&lt;/b&gt;.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiia0IIhsldEzAjF8IDygCV1ywvXC9ZruL8zNsJ81JDyaghMYTTUnNgSxFE_ude4amI4EEelsikJRV2SRZTuqJ6wLHzJ0De1337hvdVxJLqObBj0dCUhl15ymxxVPSSxHKshvroWHL78y1v/s1600-h/image%25255B24%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOUj6zkE13fMroMK8ooFeTUqj4mE8QTll6fGLIWgPy1Er_HsCubgzrjF5NEIOWdaRRxBUwTM7Em9_Z2btCwCO823_2CIyuSLq3vl9Tjb6x4Bh5Ou5ggTkDEF_BGP82XXokXB14CytAWltx/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;529&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Type &#39;&lt;b&gt;clean&lt;/b&gt;&#39; and press &lt;b&gt;Enter&lt;/b&gt; to clean the connected USB flash drive.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhZm8PzOIMfDi_WcXNFnjlnosdlQkHHC7IBCeJN9lZyLCwz6TAz8hOChpGruU6Tnhv90EN4LK-ccCnOqr21lUvnHKC3rfPra_R_Qwv9kucQMZQFMogP2Hp6DY_m78coacV5Cp7haBldgti6/s1600-h/image%25255B28%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;268&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWfrN7qidJdg_f6q7ZhpxtYDfbWFqRywB6ntUm9CtPRNxLv2S-_fn3IAswHtMTDJ2QJVGZOlVod9DJOwOnBL3CENF3IuGhW1G0QP5bHAABm5OpDbmz6UAFyWFxPMqhev-hp_nUlOsWMWVK/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;531&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Type &#39;&lt;b&gt;create partition primary&lt;/b&gt;’ and hit &lt;b&gt;Enter&lt;/b&gt;.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhF35J1G7-C5tT0Sw2YxofQRKHIkN6ZyPJst8Twxe-M0TIk1_7_ljIkuqX4jfLIToumLUVvFVGTKFqU979hWiGjv6QRu_Rr5YgodPTMZ4jAOgCDSBYMYR7qGHUiBXoB2GCWOSrKAkMFIJw-/s1600-h/image%25255B32%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;274&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijuAZ6KhX2SiruUxJdNf9KtAaLrmu5gwH9QeU5RM-469DbH7sWRk2f6vKRUjsB2Jq7cp-8O5FIAmUxrjpYtvQHqHkjZJVYRkehmdmo3Wr_X97i5mA6FWMqKXPmEA_5afURKVGItvUffEf-/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;533&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Type &#39;&lt;b&gt;select partition 1&lt;/b&gt;&#39; and press &lt;b&gt;Enter&lt;/b&gt;.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZGtasILrQwIeM0zIWRLaJhyNLXVQmLBdO3WTlkgZN-a_7UD0V5EcTJ7L3seHf_L7nlOPFYsGjWmy2FG1u2ruAqFvJLiALQF1LbaVFSRcw2A93rVBRb5QSTfkxuILUn0JMcR3ICdAEIC7o/s1600-h/image%25255B36%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwsShaHT70XnGGqGBI3MTuihFJKgpryUsIz5juXTONB_heCt2xS257HHryeepktVNOeXycE8mZWjxOLzIowcXbOHo80-YQvYpow1VAyVCcznngOLxUtI2ex4tIurOv74KkeDfcn4N64YCn/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;531&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Type &#39;&lt;b&gt;active&lt;/b&gt;&#39; and press &lt;b&gt;Enter&lt;/b&gt; to make the selected partition active.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgD3SeklMtia7-Sjmj9S67IXiN9nWdNemM11IsHMybsDsNw05f9l4SkDUkMrUpnZCfRaJ05fzFGcu3wyXUlRCPZ23kLCvS0IEPVjkbvr-jNvik4XymXDG3OsUiPBIvBgZxf7SYUSLn3yoaX/s1600-h/image%25255B40%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjO_ixCLRZCBfeId80ACdWU4s7rL5sQQmPDWiCJPPnyAoGktyrrb7iLRwktU3CbAJVzhkLsL4UIGzS2wm5fG57WnCu88-pZnLtszL2j_PkjrR1R3wzNAYtLzvMCaz_Dgid4iUz4_KsdWzds/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;529&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Type &#39;&lt;b&gt;format fs=fat32&lt;/b&gt;&#39; and press &lt;b&gt;Enter&lt;/b&gt; to format the partition using the FAT32 file system.&lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlJB3mcR6OfwqLw0nPSCyrWfMUEOL8EQWnUtTZEeAMSmdqNNdVLWxqgK-m2k37KOpvFBKqusdkMsa1wS2HGaTj5LAbMLYRqliLQx1Y67cL-C3pYY0evs8ICrtFWCVEU6xVJRpnglSmJwXa/s1600-h/image%25255B44%25255D.png&quot; target=&quot;_blank&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;270&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhx5cKhfRLPUgtet6pA3VfDCH_ACkl-qsTgexmBZh6RdR3bom928XrEFgDpeZ8_kOIrZ7NEwNVZRCVZr0X8zusQIW-VU6koYk3yYH2M8Lb7NvX1R7Dyqos5U-dloYjlI0iPUd9entiwGY_n/?imgmax=800&quot; style=&quot;background-image: none; border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px; display: block; float: none; margin: 0px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot; title=&quot;image&quot; width=&quot;535&quot; /&gt;&lt;/a&gt;&lt;br /&gt;To assign a drive letter, type &#39;&lt;b&gt;assign&lt;/b&gt;&#39; and press &lt;b&gt;Enter&lt;/b&gt;.&lt;br /&gt;Type &#39;&lt;b&gt;exit&lt;/b&gt;&#39; and you are done!&lt;br /&gt;Once you have successfully executed all the steps mentioned above, you have turned your USB flash drive into bootable storage media. You can even still use the flash drive for storing data as per usual at the same time!&lt;br /&gt;To get it ready to install an OS, put the operating system DVD in a computer’s DVD drive and copy all the files from the DVD to the USB flash drive. If you have an image of the OS instead of a DVD, use a third party program like MagicISO to mount the image and copy all the files to the USB flash drive.&lt;br /&gt;To use the USB flash drive as an installation media, set the first boot device to USB flash drive from the BIOS and then go forward with the installation just as you would if you were using the DVD!&lt;br /&gt;next &lt;b&gt;A recycle bin for USB flash drives&lt;/b&gt;&lt;br /&gt;&lt;div class=&quot;wlWriterHeaderFooter&quot; style=&quot;margin: 0px; padding: 0px 0px 0px 0px;&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;script type=&quot;text/javascript&quot;&gt;  &lt;/script&gt; &lt;script src=&quot;http://tweetmeme.com/i/scripts/button.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bizitinfo.blogspot.com/feeds/8897271408865745005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/ten-usb-flash-drive-tips.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/8897271408865745005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8598431745983279020/posts/default/8897271408865745005'/><link rel='alternate' type='text/html' href='http://bizitinfo.blogspot.com/2012/05/ten-usb-flash-drive-tips.html' title='Ten USB Flash Drive Tips'/><author><name>Sajib Barua</name><uri>http://www.blogger.com/profile/16322223388563720644</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-XlsVcTiMHcsLjyV4C6E6P0KV4nYGwO4A4OidegzTau-MTiZm2ZWFehjWUaxCy5koov1Sev3yP_xwxQUZrZPEkgwDMclSSX9O_o1wcFiWKf0orbmVJF5zJ040aZVIdRkJfIRgZabDm4uy/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry></feed>