Differences between revisions 1 and 14 (spanning 13 versions)
Revision 1 as of 2010-10-14 15:07:52
Size: 2573
Editor: shoobe01
Comment:
Revision 14 as of 2011-07-23 16:34:54
Size: 8986
Editor: shoobe01
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
A simulator is software appearing on a computer that acts like the target environment. A browser that is the same size and the same official standards as the target browser, but not the actual code the target device is running. An emulator is running the actual code, so from a technical perspective you can have confidence in the fidelity. Simulators and emulators help with design, development, testing and demonstration of software, when the actual environment is unavailable or unsuitable for testing. These are particularly applicable for mobile devices, as hardware is not always even out, service contracts and the number of devices to test make them very expensive, and it can be slow and cumbersome to load for each incremental code change.
Line 3: Line 3:
== Web-Based ==
* [http://emulator.mtld.mobi dotMobi Online Emulator] - focus on common phones; likely to be a simulator not emulator. Run by YoSpace.
* [http://www.opera.com/products/mobile/operamini/demo.dml Opera Mini Simulator] - Opera's J2ME browser
* [http://boltbrowser.com/demo/] - Bitstream Bolt simulator. Intended to sell the product, but useful to check how things might work on a small-screen, scroll-and-select browser.
* [http://www.deviceanywhere.com/] - Actually a new class, a virtualization system. Actual hardware is disassembled, things are soldered to it, and it's strapped to cabinets. You get to press buttons and it goes over a real network, and gives you the screen output. Free trials available with some developer programs, otherwise a fee service. But useful.
Though often incorrectly used as such, they are not interchangeable terms, however.
 * A simulator is software appearing on a computer that acts like the target environment, but is technical dissimilar in some key aspect, and maybe all of them. The simulator will superficially behave like the actual device, but is driven by different code entirely.
 * An emulator runs the actual code, just within a virtual machine which itself simulates the hardware environment. From a technical perspective you can have much more confidence in the fidelity of the experience. Emulator problems arise from the virtual machine, which may have bugs (or the lack of them) which vary from the actual device. Often, the developer is allowed to select the available memory or processor or network speed, which is useful for unit test, but must be toned down for realistic testing or demonstrations later.
Line 9: Line 7:
== Applications ==
* [http://www.forum.nokia.com/info/sw.nokia.com/id/db2c69a2-4066-46ff-81c4-caac8872a7c5/NMB40_install.zip.html Nokia Browser Simulator] - generic Nokia phone and gateway
* [http://developer.openwave.com/dvl/member/downloadManager.htm?softwareId=23 Openwave Phone Simulator] - Openwave's simulator (probably actually an emulator)
* [http://www.blackberry.com/developers/downloads/simulators/index.shtml BlackBerry Simulator] - multiple different BlackBerry emulators
* [http://www.yospace.com/spedemo.html| Yospace SmartPhone Emulator] - displays multiple phone instances at the same time but may not have the best fidelity to actual devices
* [http://www.genuitec.com/mobile/ iPhone/Pre Emulator] - Windows only desktop emulator, emulates both iPhone and Pre.
* [http://developer.palm.com/index.php?option=com_content&view=article&id=1883&Itemid=56 Palm Project Ares] - Full web development environment for WebOS in the browser.
New ones are constantly being added, or replaced, so please help us keep this up to date. Visit the wiki at www.4ourth.com/wiki or contact us with updates you may encounter.

A good place to start is with MobiForge, who has published a useful guide to actually getting over a dozen emulators to run. Many of these are buried under their developer sites, so you may not have even found them. Most have some trick or other to get running, especially if you are not steeped in technical minutiae.
 * [[http://mobiforge.com/testing/story/a-guide-mobile-emulators]]


== Web-Browsers ==
 * [[http://mtld.mobi/emulator.php|dotMobi Online Emulator]] - Web simulator (despite the name) with focus on common phones. Run by YoSpace. Works in the browser, so quick and works on all OSs.
 * [[http://www.opera.com/products/mobile/operamini/demo.dml|Opera Mini Simulator]] - Opera's J2ME browser, in the web so works fine for every platform.
 * [[http://www.opera.com/developer/tools/|Opera Mobile Developer Tools]] - Complete SDK with emulators for Opera Mobile. This is not the same as Opera Mini. For Windows, Mac and Linux.
 * [[http://boltbrowser.com/demo/|Bolt Browser Simulator]] - Intended to sell the product, but useful to check how things might work on a small-screen, scroll-and-select browser.
 * [[http://www.nttdocomo.co.jp/english/service/imode/make/content/browser/html/tool2/|iMode HTML simulator 2]] - From NTT DoCoMo, displays (depending on the platform) HTML, Flash and PDF content, for devices using the i-mode Browser 2.0, released up through 2009, so certainly still in service. Windows only.

== Web-Based Device Virtualization ==
 * [[http://www.deviceanywhere.com/|Device Anywhere]] - Actually another class entirely, in this case the actual handset hardware is disassembled, things are soldered to it, and it's strapped to cabinets. You get to press buttons and it goes over a real network, and gives you the screen output. Free trials available with some developer programs, otherwise a fee service. Be careful, as they charge per minute connected, not per click or based on activity; disconnect as soon as you are done.
 * [[hhttp://www.accessdevnet.com/index.php/Downloads/|Access Developer Tools]] - Access, who I still think of as a browser maker, seem to have bought up the old Palm OS (called Garnet now) and offer a suite of OS and web products. Many are for Windows, Mac and Linux, but lots of tools so no promises for any individual one.

== OS Simulators & Emulators ==
 * [[http://us.blackberry.com/developers/resources/simulators.jsp|BlackBerry Simulators]] - Relatively simple to use BlackBerry simulators, without extra programming interfaces being required. Each one is a separate package, so checking multiple devices can be tedious. Windows only.
 * [[http://us.blackberry.com/developers/tablet/|Blackberry Playbook Emulator]] - Complete emulator running in Air, for Windows and Macs.
 * [[http://blog.wapreview.com/3733/|Archived Openwave Phone Simulators]] - When Openwave got sold a few years back, they removed all the old development links. However, there are plenty of devices that still access the internet via their Openwave browsers, so it might be important for you. Dennis Bournique of WAP Review has very nicely hosted the old installers, and for a while at least you can get them here.
 * [[http://www.genuitec.com/mobile/|iPhone/Pre Emulator]] - Windows only desktop emulator, emulates both iPhone and Pre. Paid service with 16 day trial period only.
 * [[https://developer.palm.com/content/resources/develop/sdk_pdk_download.html|Palm SDK]] - Complete development environment for Windows, Mac and Ubuntu. Relatively easy to use and complete interface. Use a full mouse to control. Center button is the home key.
 * [[http://ares.palm.com/Ares/about.html|Palm Project Ares]] - Full web development environment for WebOS in the browser.
 * [[https://developer.apple.com/devcenter/ios/index.action#downloads|iOS SDK]] - Includes simulator for all iOS devices. Mac only.
 * [[http://developer.android.com/sdk/installing.html|Android SDK]] - Start here. Multi-step install process, and the emulator is pretty bare-bones out of the box, so hard to use for design validation unless you are also somewhat of a developer. Numerous add-ons for neat hardware like the Galaxy TAB, Motorola Xoom, and so on. Windows, Mac, Linux.
 * [[http://www.developer.nokia.com/Resources/Tools_and_downloads/|Nokia Tools]] - Nokia keeps up all their old ones, so you can get emulators and SDKs for S40, older S60, Qt, Maemo and everything they work on, right from here. Too many to list out.
 * [[http://www.microsoft.com/download/en/details.aspx?id=13890|Windows Phone 7 Emulator]] - Generic emulator, not just Windows only, but requires Vista SP2 or Windows 7 to run.
 * [[hhttp://www.accessdevnet.com/index.php/Downloads/|Access Developer Tools]] - Access, who I still think of as a browser maker, seem to have bought up the old Palm OS (called Garnet now) and offer a suite of OS and web products. Many are for Windows, Mac and Linux, but lots of tools so no promises for any individual one.
 * [[http://www.microsoft.com/download/en/details.aspx?id=16182|Windows Mobile 6.1]] - Complete SDK. Windows only.
 * [[http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=6135|Windows Mobile 6]] - Complete SDK. Windows only.
 * [[http://www.microsoft.com/download/en/details.aspx?id=20259|Standalone Device Emulator]] - The emulator from Visual Studio 2005, without installing the whole package. Comes with Windows Mobile 5 skins, but not really an emulator of anything specific. Windows only.
 * [[http://developer.lgmobile.com/lge.mdn.tnd.RetrieveSDKInfo.dev?modType=T&objectType=T&menuClassCode=&saveFileName=&resourceNo=&selectedType=&tabIndex=1|LG Java (J2ME Featurephone) SDK]] - For developing custom applications on LG featurephones. Custom install for each and every phone they offer. Windows only.
 * [[http://developer.sonyericsson.com/wportal/devworld/downloads/download/dw-99962-semcjavamecldcsdk2506?cc=gb&lc=en|Sony Ericsson Java (J2ME Featurephone) SDK]] - For developing custom applications on Sony Ericsson featurephones. Windows only.
 * [[http://innovator.samsungmobile.com/down/cnts/toolSDK.detail.view.do?cntsId=7500&platformId=3|Samsung Java (J2ME Featurephone) SDK]] - For developing custom applications on Samsung featurephones. Windows only.
 * [[http://developer.bada.com/devtools;jsessionid=nlZpTqyR6lrC7rj2shKWwWW8kmQf4Cw22sfgK4vNnJvzS608lyml!-939324231|Bada SDK]] - Complete SDK including emulator for Samsung's sorta-not-a-featurephone OS. Windows only.
 * [[https://developer.brewmp.com/tools/brew-mp-sdk|SDK for Brew and Brew MP]] - Components to create an SDK for various existing platforms (such as Eclipse), with instructions, for the Brew featurephone application environment. Windows only.
Line 18: Line 47:
* [http://www.zambetti.com/projects/liveview/ iPhone screen projector] - "tethers" with your mac to display content from your desktop on your iPhone. Requires a free iPhone app.
* [http://sourceforge.net/projects/iphoneprototype/ iPhoneprototype] - Firefox plugin for iPhone mockups.
 * [[http://www.zambetti.com/projects/liveview/|iPhone screen projector]] - "tethers" with your mac to display content from your desktop on your iPhone. Requires a free iPhone app.
 * [[http://sourceforge.net/projects/iphoneprototype/|iPhoneprototype]] - Firefox plugin for iPhone mockups.
 * [[http://www.adobe.com/products/creativesuite/devicecentral/|Adobe Device Central]] - Part of the Adobe CS product line, lets you see what the design might look like on various mobile device screens. Includes non-whites, non-blacks, glare, etc.
Line 22: Line 52:
* [http://www.g5e.com/games/MIDS MIDS] - flow charts, navigation, wireframes, rendering, and even a physical test device  * [[http://www.g5e.com/games/MIDS|MIDS - Mobile Interface Design System]] - flow charts, navigation, wireframes, rendering, and even a physical test device

Simulators and emulators help with design, development, testing and demonstration of software, when the actual environment is unavailable or unsuitable for testing. These are particularly applicable for mobile devices, as hardware is not always even out, service contracts and the number of devices to test make them very expensive, and it can be slow and cumbersome to load for each incremental code change.

Though often incorrectly used as such, they are not interchangeable terms, however.

  • A simulator is software appearing on a computer that acts like the target environment, but is technical dissimilar in some key aspect, and maybe all of them. The simulator will superficially behave like the actual device, but is driven by different code entirely.
  • An emulator runs the actual code, just within a virtual machine which itself simulates the hardware environment. From a technical perspective you can have much more confidence in the fidelity of the experience. Emulator problems arise from the virtual machine, which may have bugs (or the lack of them) which vary from the actual device. Often, the developer is allowed to select the available memory or processor or network speed, which is useful for unit test, but must be toned down for realistic testing or demonstrations later.

New ones are constantly being added, or replaced, so please help us keep this up to date. Visit the wiki at www.4ourth.com/wiki or contact us with updates you may encounter.

A good place to start is with MobiForge, who has published a useful guide to actually getting over a dozen emulators to run. Many of these are buried under their developer sites, so you may not have even found them. Most have some trick or other to get running, especially if you are not steeped in technical minutiae.

Web-Browsers

  • dotMobi Online Emulator - Web simulator (despite the name) with focus on common phones. Run by YoSpace. Works in the browser, so quick and works on all OSs.

  • Opera Mini Simulator - Opera's J2ME browser, in the web so works fine for every platform.

  • Opera Mobile Developer Tools - Complete SDK with emulators for Opera Mobile. This is not the same as Opera Mini. For Windows, Mac and Linux.

  • Bolt Browser Simulator - Intended to sell the product, but useful to check how things might work on a small-screen, scroll-and-select browser.

  • iMode HTML simulator 2 - From NTT DoCoMo, displays (depending on the platform) HTML, Flash and PDF content, for devices using the i-mode Browser 2.0, released up through 2009, so certainly still in service. Windows only.

Web-Based Device Virtualization

  • Device Anywhere - Actually another class entirely, in this case the actual handset hardware is disassembled, things are soldered to it, and it's strapped to cabinets. You get to press buttons and it goes over a real network, and gives you the screen output. Free trials available with some developer programs, otherwise a fee service. Be careful, as they charge per minute connected, not per click or based on activity; disconnect as soon as you are done.

  • Access Developer Tools - Access, who I still think of as a browser maker, seem to have bought up the old Palm OS (called Garnet now) and offer a suite of OS and web products. Many are for Windows, Mac and Linux, but lots of tools so no promises for any individual one.

OS Simulators & Emulators

  • BlackBerry Simulators - Relatively simple to use BlackBerry simulators, without extra programming interfaces being required. Each one is a separate package, so checking multiple devices can be tedious. Windows only.

  • Blackberry Playbook Emulator - Complete emulator running in Air, for Windows and Macs.

  • Archived Openwave Phone Simulators - When Openwave got sold a few years back, they removed all the old development links. However, there are plenty of devices that still access the internet via their Openwave browsers, so it might be important for you. Dennis Bournique of WAP Review has very nicely hosted the old installers, and for a while at least you can get them here.

  • iPhone/Pre Emulator - Windows only desktop emulator, emulates both iPhone and Pre. Paid service with 16 day trial period only.

  • Palm SDK - Complete development environment for Windows, Mac and Ubuntu. Relatively easy to use and complete interface. Use a full mouse to control. Center button is the home key.

  • Palm Project Ares - Full web development environment for WebOS in the browser.

  • iOS SDK - Includes simulator for all iOS devices. Mac only.

  • Android SDK - Start here. Multi-step install process, and the emulator is pretty bare-bones out of the box, so hard to use for design validation unless you are also somewhat of a developer. Numerous add-ons for neat hardware like the Galaxy TAB, Motorola Xoom, and so on. Windows, Mac, Linux.

  • Nokia Tools - Nokia keeps up all their old ones, so you can get emulators and SDKs for S40, older S60, Qt, Maemo and everything they work on, right from here. Too many to list out.

  • Windows Phone 7 Emulator - Generic emulator, not just Windows only, but requires Vista SP2 or Windows 7 to run.

  • Access Developer Tools - Access, who I still think of as a browser maker, seem to have bought up the old Palm OS (called Garnet now) and offer a suite of OS and web products. Many are for Windows, Mac and Linux, but lots of tools so no promises for any individual one.

  • Windows Mobile 6.1 - Complete SDK. Windows only.

  • Windows Mobile 6 - Complete SDK. Windows only.

  • Standalone Device Emulator - The emulator from Visual Studio 2005, without installing the whole package. Comes with Windows Mobile 5 skins, but not really an emulator of anything specific. Windows only.

  • LG Java (J2ME Featurephone) SDK - For developing custom applications on LG featurephones. Custom install for each and every phone they offer. Windows only.

  • Sony Ericsson Java (J2ME Featurephone) SDK - For developing custom applications on Sony Ericsson featurephones. Windows only.

  • Samsung Java (J2ME Featurephone) SDK - For developing custom applications on Samsung featurephones. Windows only.

  • Bada SDK - Complete SDK including emulator for Samsung's sorta-not-a-featurephone OS. Windows only.

  • SDK for Brew and Brew MP - Components to create an SDK for various existing platforms (such as Eclipse), with instructions, for the Brew featurephone application environment. Windows only.

Prototyping / Wireframing

  • iPhone screen projector - "tethers" with your mac to display content from your desktop on your iPhone. Requires a free iPhone app.

  • iPhoneprototype - Firefox plugin for iPhone mockups.

  • Adobe Device Central - Part of the Adobe CS product line, lets you see what the design might look like on various mobile device screens. Includes non-whites, non-blacks, glare, etc.

Full Design Suites

Emulators (last edited 2014-09-11 12:46:28 by shoobe01)