Eng:Scratch on Tablets

Scratch is currently availiable on desktops and mobile devices with Scratch 3.0. However, mobile devices can not use keyboard controls, which is an important piece to many projects. Scratch is currently not available as a mobile device app. Currently, the Scratch Team is developing an app for tablets that will run on the larger mobile devices. ScratchJr is an app for tablets but has limited functionality.

Mobile Application
With a Twitter post spoiler by @MIT Media Lab, a tablet version is almost definitely coming to Scratch. The following Twitter post was made on February 4, 2014: "Mitch Resnick leads an early design exploration for a tablet version of #Scratch"

- @MIT Media Lab

Prior to this major leak, Mitch Resnick replied to a question on his profile with: "We're working on a version of Scratch for iPad (and other tablets). It will be ready sometime next year."

He has also hinted of some unique capabilities tablets can provide for Scratch which computers cannot, such as use of physical features like a gyroscope. "Yes, as we develop Scratch for tablets, we plan to provide access to the special sensors on tablets (similar to the way we now provide access to the webcam with the video-sensing blocks)"

- mres, September 25, 2013

History
The Scratch Viewer was the first application created to play Scratch projects on mobile devices, specifically Apple's iOS. It was made by John McIntosh of Smalltalk Consulting Ltd, a Canadian Programmer who had before had had no affiliation with the MIT Media Lab. However, in April 2010 the application was removed from iTunes (Apple's app store) by Apple because it violates Section 3.3.1 of the company’s policy against applications that interpret or execute code.

After the demise of the Scratch Viewer, other Scratchers started attempting to make project viewers based on the HTML5 canvas element, which can be run on most mobile devices. The first two such projects were Go Everywhere!, by comp500, and the HTML Viewer, by Johnnydean1. The HTML Viewer officially stopped development, but was picked up again by two of its members, MidnightLeopard and MathWizz, who are developing JsScratch based on the old code from the HTML Viewer and a JavaScript library known as Morphic.js. Go Everywhere is still in development, but is far from usable. It is still being actively developed.

The Android Scratch Player is a player specifically for the Android operating system. It is made by ZeroLuck and is currently in alpha stage.

RHY3756547 started creating his own HTML5-based player for Scratch 2.0, called sb2.js. It reads the Scratch 2.0 File Format, and compiles it to Javascript code.

The Scratch Team is still in the progress of designing the official HTML5 Player for Scratch 2.0. They have released the source code to the public and are seeking help on this forum topic. The source code can be accessed here. The HTML5 player must be hosted on one's own website, as there is no official testing area yet on Scratch.

Pyonkee is an app which bases Scratch 1.4. It's the only complete and still running extension which bases Scratch on tablets.

Problems
No matter how well an HTML5 player works on a desktop computer, it will likely not work as well on a mobile device for a few reasons:
 * Mobile devices are often not as good as interpreting code as desktop computers
 * Mobile devices do not have a real keyboard, so key interaction is made difficult
 * Exact clicking on a mobile device is made difficult by the necessity of using a finger as the mouse. There has to be more space in order for touchscreen to be possible

The native Scratch application also doesn't work, due to the Squeak VM not supporting mobile devices. If the tablet supports either the Flash Player or Java Player, the project could be played in it. For Scratch 2.0, the project could be edited, albeit with the difficulties mentioned above, if the device supports Flash.