Skip to main content
Jump to: navigation, search

Difference between revisions of "Android Selector 1.1"

(Installation on Windows)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}
 
 
[[Image:Higgins_logo_76Wx100H.jpg|right]]
 
[[Image:Higgins_logo_76Wx100H.jpg|right]]
  
Line 10: Line 9:
 
Although we call this solution a selector it does NOT currently support the IMI protocol, only un/pw form filling. The Username/password data is persisted on (non-IMI-compliant) cards on a hosted [[I-Card Service]].-->
 
Although we call this solution a selector it does NOT currently support the IMI protocol, only un/pw form filling. The Username/password data is persisted on (non-IMI-compliant) cards on a hosted [[I-Card Service]].-->
  
== End User Perspective ==
+
== End User Perspective ==
The Android I-Card Selector allows users to use their I-Cards at relying parties.
+
  
'''This component only works at relying parties that explicitly support it.'''
+
The Android I-Card Selector allows users to use their I-Cards at relying parties.  
  
[[Image:AndroidSelectorScreenshot3.png]]
+
Download [http://www.sitrusllc.com/files_sitrus/get_android-icardselector-windows.php Android I-Card Selector]  
  
===Installation===
+
This archive contains following files:
  
====Installation on Windows====
+
{| width="70%" border="0" cellpadding="1" cellspacing="1"
 +
|-
 +
| * 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
 +
|}
  
First of all, you need installed Android SDK (at now 1.6 version). If ANDROID_SDK environment variable not setted, do next:
 
* 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, connect you device (or run emulator with Android 1.6) to PC. Next steps must execute with connected device or emulator.
+
'''This component only works at relying parties that explicitly support it.'''
Unpack archive and go to directory with unpacked files.
+
  
=====Install apk files=====
+
[[Image:AndroidSelectorScreenshot3.png]] [[Image:AndroidSelectorScreenshot4.png]]
  
Execute "install_apk.bat" or run in command-line:
+
=== Installation ===
  for /r %i in (*.apk) do adb install %i
+
  
=====Install plugin files=====
+
==== Installation on Windows  ====
  
Execute "install_plugin.bat" file or run in command-line:
+
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 MODULE=pwm
Line 44: Line 80:
 
  set PLUGIN_NAME=%MODULE%.so
 
  set PLUGIN_NAME=%MODULE%.so
 
  set PLUGIN_RESOURCES_DIR=%ANDROID_DEVICE_INSTALL_DIR%/%MODULE%-%VERSION%
 
  set PLUGIN_RESOURCES_DIR=%ANDROID_DEVICE_INSTALL_DIR%/%MODULE%-%VERSION%
set HTML_FILES_PATH=.
 
 
   
 
   
 
  rem filenames for copying
 
  rem filenames for copying
 
  set PWM_ANDROID_JAR="pwm-android.jar"
 
  set PWM_ANDROID_JAR="pwm-android.jar"
set SCRIPT_HTML="script.html"
 
 
  set PWM_SO="pwm.so"
 
  set PWM_SO="pwm.so"
 
   
 
   
 
  echo Create directories on the target.
 
  echo Create directories on the target.
  adb shell mkdir %ANDROID_DEVICE_BROWSER_DIR% >/dev/null
+
  adb shell mkdir %ANDROID_DEVICE_BROWSER_DIR% >/dev/null
  adb shell mkdir %ANDROID_DEVICE_INSTALL_DIR% >/dev/null
+
  adb shell mkdir %ANDROID_DEVICE_INSTALL_DIR% >/dev/null
  adb shell mkdir %PLUGIN_RESOURCES_DIR% >/dev/null
+
  adb shell mkdir %PLUGIN_RESOURCES_DIR% >/dev/null
 
   
 
   
 
  echo copy so files
 
  echo copy so files
  adb push %PWM_SO% %ANDROID_DEVICE_INSTALL_DIR%/%PWM_SO%
+
  adb push %PWM_SO% %ANDROID_DEVICE_INSTALL_DIR%/%PWM_SO%
  adb push %PWM_ANDROID_JAR% %PLUGIN_RESOURCES_DIR%/%PWM_ANDROID_JAR%
+
  adb push %PWM_ANDROID_JAR% %PLUGIN_RESOURCES_DIR%/%PWM_ANDROID_JAR%
adb push %SCRIPT_HTML% %PLUGIN_RESOURCES_DIR%/%SCRIPT_HTML%
+
 
   
 
   
 
  echo create cache file
 
  echo create cache file
  adb shell ">/data/dalvik-cache/data@data@com.android.browser@app_plugins@%MODULE%-%VERSION%@%PWM_ANDROID_JAR%@classes.dex"
+
  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.
+
Restart Android and launch I-Card Selector.  
  
===Configuration===
+
=== Configuration ===
  
The Android I-Card Selector uses the following settings:
+
The Android I-Card Selector uses the following settings:  
* [[CardSync Service]] endpoint
+
* username and password of existing account
+
  
[[Image:AndroidSelectorScreenshot1.png]]
+
*[[CardSync Service]] endpoint
[[Image:AndroidSelectorScreenshot2.png]]
+
*username and password of existing account
 +
 
 +
[[Image:AndroidSelectorScreenshot1.png]] [[Image:AndroidSelectorScreenshot2.png]]
  
 
== Deployer Perspective ==
 
== Deployer Perspective ==
Line 83: Line 116:
 
* app/org.eclipse.higgins.android.icard.selector
 
* app/org.eclipse.higgins.android.icard.selector
 
* app/org.eclipse.higgins.android.icard.service
 
* 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:
 
These projects can be checked out from the Eclipse repository at the following SVN URIs:
Line 91: Line 125:
 
|-
 
|-
 
| 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
 +
|-
 +
| https://dev.eclipse.org/svnroot/technology/org.eclipse.higgins/trunk/app/org.eclipse.higgins.android.icard.service.test
 
|-
 
|-
 
|}
 
|}

Latest revision as of 15:19, 15 August 2014

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:

Back to the top