File Submitter: etc6849
File Submitted: 24 Apr 2011
File Category: Premise
Author: etc6849
Contact: PM
Here's an Android webview app I've built specifically for SYS Minibrowser. It seems to be working well, so I thought I'd share.
Requirements
123's minibrowser module or equivalent running on a Premise SYS server. Compiled for Android 2.2 or newer. If you don't use Android 2.2, if you ask nicely, we can figure something out
Install
You will have to enable under Applications: "Unknown sources" which allows installation of non-Market applications. You then can install the app using adb or whatever method you like. The app is signed and should install once you enable "Unknown sources."
Detailed Steps
Download the zip file. Unzip one level to reach apk file (don't unzip apk). Plug your phone into your PC and mount it as a storage device. Copy the apk file to your SD card, then unmount your phone as a storage device. Browse the sd card using Root Explorer and click the apk to install.
If you don't have "Root Explorer" (costs a few dollars and is available in the android market), there are numerous tutorials on how to install the file for free. Google "adb install apk" for additional methods.
Important note: which ever mini browser root you are using, disable refresh by setting UIRefreshInterval to 0. The app will auto refresh on it's own so as to prevent a SYS session timeout. Also screen will be white upon first start; you must hit menu and configure the settings, then click the back button on your phone
Features
1. Gets rid of all bars that you would normally see if you used a web browser. It offers the look and feel of an external app in true full screen mode.
2. Disables the multi-touch zoom, always keeping your mini browser in full screen. This prevents unintended zooming.
3. Scroll bars are auto hidden (e.g. only show up when you're scrolling).
4. Makes full use of the android app "life cycle" since it extends the activity class. This means when your phone goes to standby, nothing happens to save battery life. When it comes out of standby the phone will auto refresh and restart refreshing on a set interval (see below).
5. The app will automatically log in and icons are automatically cached by android (and android does a great job with caching, so I didn't implement my own method).
6. Some preferences come preset, but some such as Server Location MUST be changed in the settings menu upon initial install.
Menu Options
1. Refresh refreshes the screen using the address: http://iport/folder name/
2. Quit will finish() the activity (e.g. cause the app to properly close).
3. Under settings you'll find several preferences:
3.1. Server Location (it's preferred to use a free dynamic hosting service such as dyndns.org; for example, your serer location could be myDomain.dyndns.org or an ip address)
3.2. Port Number
3.3. Username (recommended if using minibrowser from the internet and not subnet)
3.4. Password (recommended if using minibrowser from the internet and not subnet)
3.5. Mini Browsser UI Name (name of root folder (e.g. ppc, xb etc.. used for Mini Browser SYS web redirect)
3.6. Refresh Interval
This refreshes the page automatically every x seconds. It must be set greater than 5 seconds, else auto refresh will be disabled. This only happens when the app is in the foreground to save bandwidth and follow the android app life cycle.
3.7. Orientation (used to set orientation in landscape (locked), portrait (locked) or enable orientation via sensor)
3.8. All user preferences (username, password etc...) are stored in a location private to this application only. If you uninstall this app, it will remove this information.
Please post any comments or issues in the support forum. I'll post more screen shots there.
New for RC8
1. A user's password is now completely hidden from view. (It was always protected internally though).
2. A concept called "Refresh After Touch" has been implemented.
A touch listener is used to suspend automatic refreshes. This means if a user interacts with a webpage, the page cannot refresh during the interaction.
To facilitate this, a new preference called "Refresh After Touch" is used to determine the timeout period where no automatic refreshing will take place. "Refresh After Touch" has an added benefit in that it refreshes the page after x seconds; no matter what the preference "Refresh Interval" is set to. Refresh Interval could be disabled and you can still use Refresh After Touch to load an updated page following user interaction. You can also disable "Refresh After Touch" by setting its value to zero.
PS: I'm not sure if this is clear or not, but this program could be used for displaying any webpage. This means it can be used with other HA systems that have html or flash pages.
Click here to download this file