To prepare your device for ubuntu-touch testing and to be able to write and run automated tests on touch images, this is all you need (or have a look at the [[https://wiki.ubuntu.com/Touch/Install|Touch/Install wiki]]): == Flash the image for testing and set up the network == Connect device you want to flash with ubuntu touch via USB to your computer and run: {{{#!highlight bash phablet-flash}}} This will just flash your phone with the latest image, after you read and accept the disclaimer. If you try to stop the download and then start it again, you'll need to remove the previous attempt to download from /home//Downloads/phablet-flash/. Then you want to set up the wireless on your touch device by copying your wireless configuration to it: {{{#!highlight bash phablet-network-setup -i }}} This will set up the network based on your current wireless networking profile from /etc/NetworkManager/system-connections. If you are on a desktop computer or you want to use a different configuration for your testing, call phablet-network-setup with -n and provide the configuration file you wish to use. == Verify which image you've got! == If you want to verify which image you have on the device: {{{#!highlight bash adb shell getprop ro.build.display.id or just adb shell getprop (for all the properties) }}} == Preparing your test environment == Make sure you have the '''latest''' image and the latest android-tools-adb from the phablet-team ppa. Install the relevant ppas: {{{#!highlight bash sudo apt-add-repository -y ppa:phablet-team/tools sudo apt-add-repository -y ppa:autopilot/ppa (if not on the latest dev release) sudo apt-get update sudo apt-get install phablet-tools android-tools-adb}}} == Start running stuff == This command will set up autopilot for you. {{{ phablet-test-run -n -i -p 'qml-phone-shell-autopilot' qml_phone_shell }}} One thing you can do once you do this, is drop a test, say "test_foo" in phablet's home directory on the phone. Then you want to connect to the device: {{{ adb shell (to get to the android shell) }}} After this you are already running commands on the device, then we recommend you install openssh-server to be able to interact with the device through ssh: {{{#!highlight bash apt-get install openssh-server }}} You can now install packages, etc. If you prefer to use ssh instead from this point onwards, you can exit this shell and go back to your main machine. Map the phone port to some random port and off you go: {{{#!highlight bash adb forward tcp:8888 tcp:22 ssh -p 8888 phablet@localhost (phablet/phablet). }}} Then you can just run anything you want. {{{ 'phablet-test-run -n test_foo' }}} The -n is very important. It kills the phone shell before running the test. If you don't do this, your application will be executed in the background and autopilot won't be able to interact with it. == Now get started with Autopilot == This [[https://wiki.ubuntu.com/Touch/Testing/Autopilot|wiki]] contains all the information you need to install autopilot on your phone and start testing on it, or even better, developing tests for autopilot-touch! == Some other useful commands == * Put a script or a file in your device: {{{ adb push /path/to/file /home/phablet }}} * No ifconfig available, so you get the ip of the device by using ip {{{ ip addr (no ifconfig available) }}} * Show all the installed apps: {{{ perl -p -i -e 's/expandable\:\ false/expandable\:\ true/' /usr/share/unity8/Dash/Apps/ApplicationsFilterGrid.qml }}} * Network configuration on the device {{{ adb shell netcfg }}} == Update apps and show them all on the screen == Run from the host, the following bash script uses adb to enable all the apps on the main screen (it will install them from the repositories, requires network to be setup): * http://bazaar.launchpad.net/~popey/+junk/phablet-flash-wrapper/view/head:/add_apps.sh == How to install a kernel on the device == * https://wiki.ubuntu.com/Kernel/Dev/AndroidKernel