Jump to: navigation, search

Android Selector 1.1

Higgins logo 76Wx100H.jpg

Version

This page describes the Android solution being developed for Higgins 1.1.

Introduction

This is a standalone Android application that can be launched automatically from a relying party website. For more information about Information Cards and Selectors visit http://informationcard.net

End User Perspective

The Android I-Card Selector allows users to use their I-Cards at relying parties.

Download Android I-Card Selector

This archive contains following files:

* install_apk.bat install file
* install_plugin.bat install file
* org.eclipse.higgins.android.icard.selector.apk Android I-Card Selector
* org.eclipse.higgins.android.icard.service.apk Android I-Card Service
* pwm.so Android I-Card web browser plugin file
* pwm-android.jar Android I-Card web browser plugin file
* readme.tx read me file


This component only works at relying parties that explicitly support it.

AndroidSelectorScreenshot3.png AndroidSelectorScreenshot4.png

Installation

Installation on Windows

Download and install Android SDK (at now 1.6 version) from http://developer.android.com/sdk/index.html (at now 1.6 version).

Set environment variables:

  • set ANDROID_SDK variable with value of path to Android SDK;
  • update PATH variable with you ANDROID_SDK variable (PATH=%PATH%;%ANDROID_SDK%\tools).

After that (it is possible, reboot will be needed), connect you device (or run emulator with Android 1.6) to PC.

Important! Next steps should be executed with connected device or emulator.

Unpack archive and go to directory with unpacked files.

Install apk files

Execute "install_apk.bat" or run in command-line:

for /r %i in (*.apk) do adb install %i
Install plugin files

Execute "install_plugin.bat" file or run in command-line:

set MODULE=pwm
set VERSION=0.1.0.0

set ANDROID_DEVICE_BROWSER_DIR=/data/data/com.android.browser
set ANDROID_DEVICE_INSTALL_DIR=%ANDROID_DEVICE_BROWSER_DIR%/app_plugins
set PLUGIN_NAME=%MODULE%.so
set PLUGIN_RESOURCES_DIR=%ANDROID_DEVICE_INSTALL_DIR%/%MODULE%-%VERSION%

rem filenames for copying
set PWM_ANDROID_JAR="pwm-android.jar"
set PWM_SO="pwm.so"

echo Create directories on the target.
adb shell mkdir %ANDROID_DEVICE_BROWSER_DIR% >/dev/null
adb shell mkdir %ANDROID_DEVICE_INSTALL_DIR% >/dev/null
adb shell mkdir %PLUGIN_RESOURCES_DIR% >/dev/null

echo copy so files
adb push %PWM_SO% %ANDROID_DEVICE_INSTALL_DIR%/%PWM_SO%
adb push %PWM_ANDROID_JAR% %PLUGIN_RESOURCES_DIR%/%PWM_ANDROID_JAR%

echo create cache file
adb shell ">/data/dalvik-cache/data@data@com.android.browser@app_plugins@%MODULE%-%VERSION%@%PWM_ANDROID_JAR%@classes.dex"

Restart Android and launch I-Card Selector.

Configuration

The Android I-Card Selector uses the following settings:

AndroidSelectorScreenshot1.png AndroidSelectorScreenshot2.png

Deployer Perspective

Building

The projects are:

  • app/org.eclipse.higgins.android.icard.npapi
  • app/org.eclipse.higgins.android.icard.selector
  • app/org.eclipse.higgins.android.icard.service
  • app/org.eclipse.higgins.android.icard.service.test

These projects can be checked out from the Eclipse repository at the following SVN URIs:

https://dev.eclipse.org/svnroot/technology/org.eclipse.higgins/trunk/app/org.eclipse.higgins.android.icard.npapi
https://dev.eclipse.org/svnroot/technology/org.eclipse.higgins/trunk/app/org.eclipse.higgins.android.icard.selector
https://dev.eclipse.org/svnroot/technology/org.eclipse.higgins/trunk/app/org.eclipse.higgins.android.icard.service
https://dev.eclipse.org/svnroot/technology/org.eclipse.higgins/trunk/app/org.eclipse.higgins.android.icard.service.test

In order to build the Android I-Card Selector, you need the following:

To build all in Eclipse you need the following steps:

  • Check out all these projects from SVN (you can do it with Subversive plug-in).
  • Add ksoap2-android library into the classpath of service project.
  • Build Selector and Service.
  • Set up ANDROID_BUILD_TOP and ANDROID_SDK variables in the properties of NPAPI (Properties -> C/C++ Build -> Environment).
  • Build NPAPI (with run Android emulator or device).

Developer Perspective

Architecture

Android selector 1.1.101.png
(Diagram Key)

Components, Packages & Services

Components:

Services: