Alert.png

Notice: This page contains information for the legacy Phidget21 Library.

Phidget21 is out of support. Bugfixes may be considered on a case by case basis.

Phidget21 does not support VINT Phidgets, or new USB Phidgets released after 2020. We maintain a selection of legacy devices for sale that are supported in Phidget21.

We recommend that new projects be developed against the Phidget22 Library.


Click on the 2phidget22.jpg button in the menu bar to go to the Phidget22 version of this page.

Alert.png

OS - Android: Difference between revisions

From Phidgets Legacy Support
Line 21: Line 21:
# The <span style="color:red;">Phidget Libraries</span> for Android
# The <span style="color:red;">Phidget Libraries</span> for Android
# For using Android to control a Phidget remotely, the [[Phidget Webservice]] should be installed on the remote computer
# For using Android to control a Phidget remotely, the [[Phidget Webservice]] should be installed on the remote computer
#*Click on the remote computer's OS on the [[Software Overview | List of Languages]] page for setup information


=== Step One: Install the Android SDK ===
=== Step One: Install the Android SDK ===

Revision as of 19:32, 31 October 2011

Android is a mobile OS commonly used on smartphones and tablet computers.

Recommended Languages

Android OS programs are written in Java using the Android SDK and the Phidgets library.

Installing Libraries and Drivers

Development for your Android OS Phidget application can occur on Linux, Mac OSX, or Windows.

Setup

You will need the following:

  1. The JDK and Java on your development system
  2. The Android SDK package for your development system
  3. The Eclipse plug-in for Java development
  4. The Phidget Libraries for Android
  5. For using Android to control a Phidget remotely, the Phidget Webservice should be installed on the remote computer

Step One: Install the Android SDK

Google's instructions for installing the Android SDK may be found here:

http://developer.android.com/sdk/installing.html

That link contains help and code for:

  • Installing the SDK and platform emulators
  • Connecting the SDK into Eclipse, which is useful for following the example descriptions later

Step Two: Run Google's Hello Android Application

To check that the JDK, the Android SDK, and Eclipse have all been configured correctly, use the Google HelloAndroid example:

http://developer.android.com/resources/tutorials/hello-world.html

Step Three: Install the Phidget Library

When you download and unzip the Phidget Library for Android, it will contain three things:

  1. A libs/ folder
  2. A jar file containing the general Phidget java library (phidget21.jar)
  3. A jar file for directly driving USB devices from a USB port on the Android device (PhidgetsUSB.jar)

To install libraries to run a Phidget remotely:

  • Add libs/ and phidget21.jar to your project
  • Add the following to your AndroidManifest.xml file:

    <uses-permission android:name="android.permission.INTERNET"></uses-permission>

To install libraries to run a Phidget directly (Android 3.1 and later, with USB port on device):

  • Add libs/, phidget21.jar, and PhidgetsUSB.jar to your project
  • Add the following to your AndroidManifest.xml file:

    <uses-feature android:name="android.hardware.usb.host" />

In Eclipse, jar files and library files can be added to a project by:

  • Project → Properties → Java Build Path → Libraries (tab) → Add JAR
  • Project → Properties → Java Build Path → Libraries (tab) → Add Library

Step Four: Begin Programming Phidgets

For example code and instructions, see the Language - Android Java page.

Common Problems and Solutions

If you are having trouble, ensure your Phidget libraries are up to date.

  • List relevant problems from "Common Problems and workarounds" doc
  • List common problems for this OS from support forums

Limitations

Android 3.1 and later can run Phidgets directly plugged into a local USB port.

Other versions of Android can remotely control Phidgets via the Phidget Webservice. This has been tested down to Android version 2.1.