Also available at: www.jbhengineering.com/keydirector/faq.html/
KeyDirector is an Android application that runs on the T-Mobile G1, HTC Magic, Droid, and other Android devices. KeyDirector is a keystroke-based launcher program. It allows you to define short (one or more key-combination) "launchers" to perform everyday tasks on your Android device. KeyDirector also features a "Transcript" (activity log) containing information about all KeyDirector operations. The Transcript provides history and frequency information, but you can also use it to re-execute often-used operations.
TopKeyDirector makes it easier and faster to do all the things you normally do on your mobile device. Starting an application, finding a contact, navigating to a Web page, sending an email, launching a utility - all of these tasks can be reduced to a single keystroke (+ Done or the Return key) using KeyDirector. And the KeyDirector Transcript and builtin menus free you from having to re-enter commands.
TopMany Android users have dozens of applications and need to navigate quickly between them. Home screens are relatively small and can't always accommodate all the shortcuts and applications that you need. Swiping, tapping, and using shortcuts to find and launch applications can be tedious. For many people, it's easier to remember the name of an application or shortcut than to navigate to it from a Home screen or application tab. Power users (especially those who use a hardware keyboard frequently) want to navigate quickly to a URL or launch an application or command using just a few keys.
The Android BACK button works great, but the activity stack ends when you return to the Home screen, limiting further access to the activity history. Users can benefit from a running log of launched activities (the KeyDirector Transcript), enabling quick re-launch (as with the Call log function in Contacts).
TopYes. Early versions of Android (1.0 and 1.1) had QuickLaunch keyboard shortcuts, but that capability was limited. Later versions of Android incorporated launching into the search bar. But search bar launching often requires search or selection clicks. KeyDirector makes launching more direct through a pre-programmed keystroke-based approach that requires no search/selection clicks. KeyDirector makes navigation more direct and more productive.
TopThe KeyDirector main screen has the following menu options:
The command line is the text input field where commands (launchers, builtins, URLs, search strings) are entered. You must submit all commands by using the Return key on the hardware keyboard (Done on the onscreen keyboard).
The Transcript is a scrolling, sorted list of previously-issued commands. The Transcript can be sorted on the time of command entry or the frequency (the number of times a command has been used).
Launchers are short commands or key combinations (for example, "cj" for "Call Jane") that you define and enter on the
command line (for more information about launchers, see What are Launchers?).
Applications are the software programs that run on your Android device. Many applications come preinstalled on your Android device. Other applications can be obtained for free or purchased from the Android Marketplace and other web sites. You can define launchers for any or all applications on your device. For example, you can type "ca" to launch Calculator or "gm" to launch Gmail.
You can define launchers for a specific contact. For example, "jon" can open the Contacts application to the entry for Jon Doe.
You can define launchers for a specific contact's telephone number. For example, "jm" can call Jon Doe's
mobile phone number. These launchers dial the contact number immediately.
You can define launchers for a specific contact's email address. For example, "etw" can start an email to Ted at his work email address.
You can define launchers to send an SMS message to a specific contact phone number. For SMS Contact launchers, enter the launcher name followed immediately by the message on the command line. For example:
You can define launchers to substitute for more than 30 builtin commands.
The BACK button is fundamental to using KeyDirector. It is the recommended (and default) method for you to cancel any action or screen within KeyDirector. When in doubt, press the BACK button, and no data is changed. NOTE: When you use the BACK button to cancel an activity, no Transcript entry is recorded for that activity.
Launchers are short commands using one or more keys that you enter on the hardware keyboard or onscreen keyboard. You can define launchers to start applications, open Contacts, call phone numbers, start emails, send text messages, open and inspect Web URLs, launch program utilities, and manage your Android device.
You enter launchers using the hardware or onscreen keyboard and submit them by pressing the Return key (or touching Done). Launchers:
The Transcript is a selectable, scrollable, sortable, running list of commands, application names, and launchers. The Transcript is KeyDirector's history and is similar in function to the Call log in the Contacts application.
Users frequently use the same commands, applications, and launchers. The Transcript allows you to relaunch any item simply by selecting it in the Transcript. The Transcript can be sorted based on the history (time of entry) of each command in ascending or descending order or the frequency (number of times a launcher, command, or application has been submitted) in ascending or descending order. The default Transcript sorting is by history in descending order (the most recently used items appear first).
TopLauncher names and Transcript data must not contain the vertical bar (|) character, which KeyDirector uses as a separator to delineate fields in backup files. Launcher names also cannot contain the single quote ('), double quote ("), or backslash (\) characters. It is possible, though rare, to have the separator character (|) in Contact or application data, but KeyDirector does not allow launcher creation in those cases. Also, Transcript lines containing the separator character (|) are not backed up.
TopBuiltins are preconfigured commands that help you create and manage KeyDirector data and navigate between KeyDirector activities.
TopNo. Builtin command names are reserved. Launcher names must be unique.
TopNo. You cannot rename or delete a builtin command.
TopYes. You can define a launcher to start a builtin command (effectively aliasing the builtin to the new launcher name). For example, if you don't like the builtin command name for "brow," you can add a launcher called "b" or "w" or "webkit," or any name you like that launches the "brow" builtin. The "brow" builtin can still be used and cannot be renamed or deleted.
TopThe builtin command names are reserved. They cannot be renamed or deleted. The reserved builtin command names were chosen to be as meaningful as possible while still leaving other desirable naming choices for use as launcher names.
TopYes. The "grid" and "keyl" menus list all user-defined launchers. You can touch or select a launcher to launch it. If you "long-press" (press and hold) the launcher, a menu asks if you would like to rename, edit, or delete the launcher.
TopNo. Android removes programs from the activity stack if it needs to reclaim memory or change the program-execution priority. Otherwise, Android keeps KeyDirector and other programs in memory even when paused or stopped so that you can return to them by using the BACK button or application-launch icon. To purge KeyDirector completely from memory (for example, to do a fresh re-launch), use the "exit" builtin.
TopKeyDirector offers several commands and features to make web browsing and opening web pages easier. You can:
If you know the full name of a web page, you can enter it directly on the command line. For example, "www.hp.com" launches the Web site for Hewlett-Packard, Co. KeyDirector interprets commands starting with "www" or "http" as web pages and automatically expands those URL-like names and starts a browser session pointing to them.
The "url" builtin accepts URL input selections and launches the Browser.
The "url" builtin supports predictive URL completion. For example, you
can type "hp" in the text field for "url" to open a Browser session
for "www.hp.com." The "url" builtin also has a button "Bookmark and History URLs" (same as "book" and "hist" builtins) that displays a list of Bookmarks and other visited URLs (history). Users can select one of the URL's and it will be displayed in the Browser.
The "brow" builtin calls "url" and launches a Browser session using the specified URL. You can also enter a URL directly after the "brow" builtin (for example, >brow www.hp.com). KeyDirector will go directly to that URL (bypassing the "url" command).
You can select URLs from the Browser bookmark favorites and visited (history) list. The "book" and "hist" builtins both display the same information i.e. a list of Bookmarks and all visited URLs (history). Both commands are supported for backward compatibility. NOTE: when the "clbh" builtin is used to clear the browser history, "book" and "hist" will display only browser bookmarks. Browser bookmarks are never removed from the "book" and "hist" display results.
The "clbh" builtin clears the Browser history from the bookmark and history URL list. When "clbh" is used to clear the browser history, the "book" and "hist" builtins will display only the browser bookmarks. Browser bookmarks are never removed from the "book" and "hist" display.
To start a Google Search™, enter srch <search_topic> directly on the command line.
The "url" toggle button allows you to assign a URL to a launcher by manually entering a word or full URL or picking a bookmark or history URL.
All of the builtin commands described earlier can also be selected from the Transcript. If the Transcript entries for "brow" and "srch" also contain valid URLs, KeyDirector reopens to the specified URL or search again on the specified topic.
TopNo. KeyDirector gives you another (perhaps faster) way to navigate and launch activities on an Android device. KeyDirector is meant to complement, not replace, the graphical user interfaces of your Android device.
TopNo. KeyDirector was designed to coexist with other applications and the Home screen. Home screens are graphical and highly customized for individual tastes. KeyDirector is primarily textual and does not try to replace that customization. Changing Home screen programs can be disruptive for users. KeyDirector was designed to be a focal point for navigation and launching. In a future version, KeyDirector will be implemented as a widget so it can coexist with home screens.
TopThe "srch" builtin allows you to do simple searches directly from the KeyDirector command line. You can type "srch" followed by a word or phrase to start a Google Search™. This eliminates having to navigate to the Google Search™ bar. To return to KeyDirector, use the BACK button after your search.
You can also start a web search from the main screen by pressing the "Search" key (magnifying glass symbol) on the hardware keyboard or pressing the dedicated "Search" button on some Android phone models. You can repeat a search by selecting a Transcript "srch" item with or without a search term.
For information about searching the KeyDirector online help, see Search the FAQ and How Do I.
Yes. KeyDirector knows the applications you have installed and launches an application if you enter its name directly on the command line. Application names are case sensitive. If you don't know the name, use the "app" builtin command to select from a list of all your applications.
TopEarly versions of KeyDirector did not automatically update the KeyDirector application list when applications were installed or removed. Automatic application update was added in version 1.0.3. Thus, you should never have to perform any manual refresh of the application list. However the "refapp" builtin command is still available for refreshing the applications list. Note that KeyDirector also updates the application list automatically when you re-launch KeyDirector following an "exit" command.
TopAndroid does not require unique names for applications. Thus, the Android Market is populated with many applications from different authors, and some of these applications use identical names. KeyDirector detects applications that have the same name and renames duplicates. For example, "Calculator" identifies the original application, and "Calculator(2)" and "Calculator(3)" identify other applications having the same name. Both the application name and class names are displayed in the Transcript and "app" builtin lists so you know the origin of each application.
When entering application names directly in the Command line, you need to enter the exact name (case-sensitive and containing duplicate suffix) to launch the desired application. Or select the desired name from the Auto-complete list.
TopKeyDirector detects this condition and asks if you would like to edit or delete the launcher. Stale launchers are never deleted unless you request it. Each time you try to use a stale launcher, you are notified and asked to edit or delete it.
TopYou can back up and restore launchers, Transcript data, and settings using these builtin commands:
KeyDirector automatically backs up user data when you "exit" the program or try to uninstall KeyDirector by:
WARNING: Using the BACK button to leave KeyDirector running and return to a previous activity/screen does not perform an automatic backup.
KeyDirector also supports easy restoration of backup data after an upgrade. If backup data exists on the SD card, a prompt appears during startup following the upgrade. The prompt asks if you want to restore the most recent backup. Select OK to start the "restor," or CANCEL to continue without restoring.
TopThe KeyDirector "bak" command places backup files in a folder named "keydirector_bak" in the root of the SD card. The "restor" command looks only in that directory when displaying and selecting files to restore. Similarly, users who want to use "restor" to restore backup data created using the "export" command must place a text file containing the data in the "keydirector_bak" folder on the SD card to enable the restore operation. KeyDirector creates the "keydirector_bak" folder if it does not exist.
TopThe "bak/restore" builtins rely on a predefined time/date-stamp naming convention for backup files containing launcher and Transcript data. Those commands work well together to write backup files to and restore backup files from the application backup folder on the SD card.
The "export" builtin allows you to send backup data to a user-specified email address. Backup data contained in the email body can be brought back to the device by copying or pasting the data into a text file placed in the KeyDirector backup folder on the SD card. You can perform the data transfer and editing using any of the Android data-transfer, file-manager, or text-editing programs. You can then use "restor" to select and restore the specified file. "restor" displays and selects only files within the KeyDirector backup folder on the SD card.
TopEditing backup files is not recommended. Simple edits of data fields can be performed if you are extremely careful, but improper edits can cause data inconsistencies that could lead to data loss. For example, older backup files use the "|" character as a separator. If a separator is deleted or misplaced, the backup file does not "restor" correctly.
TopKeyDirector places no limit on the size of a backup file generated by "bak" or email data generated using "export." However, the "restor" command can read no more than 3,000 lines from any selected backup file. This limit prevents excessive runtime on files that might be invalid. KeyDirector informs you when the "restor" limit is reached, and the command is aborted without affecting existing application data.
TopThe KeyDirector Auto-complete feature maintains an internal list of:
When you enter two or more characters, Auto-complete displays a menu of suggestion items that closely match the entered characters. You can select these suggestions without typing the complete name. Auto-complete is always optional. It can be enabled and ignored, or turned off by using the "togac" builtin or toggling Auto-complete in the KeyDirector Settings menu (MENU > View Settings).
TopYes. Long-press any Transcript line to display a prompt for deleting the line. Touch the prompt, and the Transcript line is deleted. As with every command, pressing the BACK button cancels the deletion. A single (short) press selects and re-launches the item.
TopYes. KeyDirector supports the dedicated search button (magnifying glass symbol) in list screens. Whenever you see a long list of applications, launchers, or contact names to choose from, you can press the search button. A dialog box appears, allowing you to enter a few characters (or the full name) for searching. KeyDirector moves the list to the first match it finds.
TopYes. You can use any name for a launcher that does not conflict with an existing launcher or builtin command name. For example, you can define a URL launcher and name it "Dialer." If you choose a name for a launcher that is identical to one of your application names, the launcher takes precedence over the application when the name is typed in the command line. You can still launch the "Dialer" application ("Phone" in Android 2.0) by selecting it from the KeyDirector "app" list. You can also create other launchers that start the "Dialer" application. But when you type "Dialer" in the command line, KeyDirector launches a browser to your specified URL instead of invoking the "Dialer" application.
TopFor the most part, KeyDirector cannot log canceled commands to the Transcript. Only commands that result in a completed action or data input are logged to the Transcript. If you start a launcher or builtin and immediately cancel it using the BACK button, nothing is logged to the Transcript. Exceptions to this rule include the "time," "date," "bak," and "exit" builtins, which cannot be canceled.
TopYes. When you touch the Voice button in the lower left corner of the KeyDirector main screen, KeyDirector prompts you to wait for setup, then speak a single word. The spoken word is translated to text and entered as a command (as if you had typed it in the command line).
KeyDirector voice recognition supports only single-word translation. This works well for launching most builtins, launchers, and many application names. Voice recognition does not work for URLs or non-recognizable or abbreviated launcher and builtin names (for example, "keyl").
KeyDirector voice recognition is more accurate and effective when using long and distinct launcher names. When
recognizing application names, KeyDirector capitalizes the first letter of the translated
result. Be advised that some single-word application names might not yield a match.
NOTE: Voice recognition requires an Internet connection.
TopKeyDirector is designed to support multiple applications that have the same name. KeyDirector provides the original "class name" of applications in the Transcript fields and in the "app" builtin list items. These names communicate the origin of the application and the specific class name that Android uses to launch them. For example, the "Contacts" package is com.android.contacts.DialtactsContactsEntryActivity (in Android 2.0). Applications can have the same name, but they always have a unique class name. The class name suggests the authoring organization for an application.
TopIf your mobile device has a hardware keyboard, like the T-Mobile G1 or Motorola Droid, you can scroll the launcher list (use the "grid" or "keyl" builtin) quickly by entering a single alphabetic character. The list scrolls to the first launcher that starts with that character. Single-key alphabetic scrolling also is supported for contact lists and application name lists. From the KeyDirector main screen, you can also browse launchers, builtins, and application names by entering the first two characters of a command name. The Auto-complete pop-up reveals a list of options for selection.
TopThe "grid" builtin can easily show 40 or more launchers on the same screen. The increased visibility lets you access and manage all your launchers more easily. The "grid" builtin also has all the capabilities of the "keyl" builtin (list). With the "grid" builtin, you can:
Yes. Use the MENU > LARGER/SMALLER Text toggle to make the grid text larger or smaller. KeyDirector remembers this setting between sessions. The default is SMALLER text.
TopYes. The "keyl" builtin is still supported and available by direct entry or from the builtin menu. But it is not available from MENU > VIEW Launchers. MENU > VIEW Launchers now invokes the "grid" builtin. A preference switch could be provided to enable MENU > VIEW Launchers to use either "keyl" or "grid," but that change is subject to user request.
TopUse one of these methods:
Application icons must be retrieved from the Android system, which can take time. In addition, the application icons require more memory to display. For this reason, application icons are initially disabled and must be turned on by selecting MENU > More > Enable "app" icons. When application icons are enabled, users who have many applications installed or who use their browser (memory intensive) might find that KeyDirector needs to rebuild the application list frequently.
TopIf you notice KeyDirector frequently rebuilding the application list, try disabling the "app" icons to improve speed and responsiveness. Application icons require significant memory to display. Users who have many applications installed or who use their browser frequently can use up all the free memory on a device. When this happens, Android kills programs to reclaim memory. If KeyDirector is not being used, Android might kill it. When this happens, KeyDirector must reload the application icons upon restarting.
TopYes. Enter "app" to go to the KeyDirector applications list. Long-press an application in the list. A menu asks if you want to uninstall the application. To uninstall the application, select the menu item. To cancel and return to the application list, use the BACK button.
You can also uninstall KeyDirector itself. Note that KeyDirector automatically backs up your data before uninstalling.
TopThe "mstat" builtin command shows the available and total memory and storage for your device. Memory is defined as internal scratchpad space that is hard-wired into the device and used to run Android and its applications. Internal memory is fast but limited in size (for example, 200-300 MB on a device).
Storage is defined as the space on a removable SD card that might or might not be plugged into the device. SD card storage usually has much larger capacity (for example, 8-16 GB on a removable card) and can be used to store pictures, music, data and even applications.
KeyDirector does not have a function or builtin for displaying the amount of memory it uses while active. Another Android application, "Advanced Task Manager," is recommended for this function. At the time of this writing, "Advanced Task Manager" was the #1 selling application in the Android market.
TopKeyDirector displays the following screens and prompts before it brings up the main screen and starts accepting command input:
If the "Check for Upgrades" setting is activated and an Internet connection is present, KeyDirector also checks for new versions of itself at startup. KeyDirector compares its internal
version with the latest version on the http://jbhengineering.com/keydirector/ Web site. If a newer
version is available, KeyDirector generates a notification. If you select the notification, KeyDirector provides Yes or No prompts for upgrading. If you answer Yes, KeyDirector searches the Android Market for the upgrade so you can click through to install the latest version. You can also cancel the upgrade.
Yes. KeyDirector supports adding new contacts in all screens where contact lists are displayed. Use one of the following methods:
If you add a new contact during the "add" or "export" builtin commands, the new contact is displayed immediately so it can be selected for the current command.
TopYes. KeyDirector supports editing existing contacts in all screens where contact lists are displayed. Use one of the following methods:
If you edit an existing contact during the "add" or "export" builtin commands, the contact changes are displayed immediately so that the contact can be selected for the current command.
TopYes. KeyDirector provides two
ways to do this. You can configure the shutdown mode when you add or
edit the launcher or use special trailing characters when you run any command.
Some users prefer to close
or exit KeyDirector after a launch event to achieve greater control
over memory resources on their mobile device.
The launcher ADD and EDIT menus include an On Launch control with three options that determine how KeyDirector operates after starting a launcher:
When you enter any command (launcher, builtin, application name) in the text input field, you can control the KeyDirector shutdown behavior by typing a special trailing character immediately after the command name.
A period (.) after any command tells KeyDirector to close after executing the command. This option pushes KeyDirector into the background activity stack, allowing you to relaunch KeyDirector quickly.
An exclamation point (!) after any command tells KeyDirector to exit after executing the command. This option releases KeyDirector memory and resources back to Android. Unlike issuing the "exit" builtin command, exiting KeyDirector in this way does not perform a backup.
Launchers that are created with a trailing period (.) or a trailing exclamation point (!) have the same effect as when the trailing characters are entered in the text input field. However, trailing characters that are part of the launcher name are ignored when launchers are selected from a menu or list. For a full list of restrictions, see this FAQ.
TopThe trailing character overrides
the configured launcher shutdown option.
Yes. And if Transcript sorting is set to the default (History Descending), it's easier to do this with KeyDirector than to use Android menus and settings. In the text input field, type "togrm." This builtin command displays a dialog box that allows you to choose the ringer mode
Enter "togrm" just once, and the Transcript remembers this command. From the Transcript, you can run the builtin command again and again to view or change the ringer mode. The dialog box shows the current ringer mode. The Android notification area also indicates the ringer mode:
Yes. KeyDirector 1.1 supports Android 1.5, 1.6, and 2.0. No specific changes were needed to support Android 2.0 because KeyDirector uses standard Android layouts and widgets. KeyDirector has been tested on the Motorola Droid phone with an 854x480-pixel (WVGA854) screen. If you encounter display issues while using KeyDirector with your mobile device, please send comments to jnahansen@gmail.com.
NOTE: Some KeyDirector activity layouts work ONLY in portrait mode. This is not a problem with compatibility but rather a design choice made to prevent screen-orientation changes that could disrupt background processing.
TopYes. KeyDirector 1.1 sends activity and event data to Flurry Analytics servers. Flurry Analytics returns data to developers about how consumers use their mobile applications, as well as how applications are performing across different handsets. The data is used by KeyDirector staff to improve the tool and understand how it is being used. No personal or identifying information is ever sent. The performance and memory impact of the data transmissions is expected to be negligible. If you do not want data to be logged, you can disable data logging in the Settings > Send Data to Developer preference. The default setting is ON.
TopKeyDirector settings are toggle switches or options that let you control how some features work and turn other features ON or OFF. The settings are:
To access the KeyDirector settings, see View KeyDirector settings.
NOTE: Like launchers and Transcript information, KeyDirector settings are backed up and can be restored using the "bak" and "restor" builtin commands.
TopKeyDirector 1.1 uses a new .json file format for the "bak" and "restor" builtin commands. The .json file format enables easier parsing and supports new fields (for example, the settings and launcher shutdown attributes). The .json file format replaces the previous file format, which had no extension.
Backup file names displayed by the "restor" builtin command have not changed. All files (both .json and older non-.json files) still appear as time/date-stamped items in the "restore" list. The .json extension is visible only if you inspect the files on the device SD card (/sdcard/keydirector_bak/).
The previous backup and restore files (no extension) can still be restored and are no longer purged by KeyDirector. You can delete those files at your convenience.
TopThe numbers in brackets are search IDs. For example:
Q: What is KeyDirector? [9]
Each FAQ and How Do I question has a unique ID assigned to it. The IDs are provided as a convenience for managing and searching Help topic questions. The ID numbers are searchable. In other words, you can enter an ID number as a query term in the device search bar, but only when using the online Help, FAQ, and How Do I builtins. KeyDirector returns the topic having that search ID in both search suggestions and the search result (if a search query is executed).
TopThe "book," "hist," and "clbh" commands were disabled in the 1.0.5 release because of Android 1.6 SDK permission problems. Those problems have been resolved. However, due to restrictions in the Android 2.0 API, "book" and "hist" cannot be effectively separated and are now better off consolidated. In other words, both commands now call the same activity and display the same result (a list of bookmarks and other visited URLs).
"book" and "hist" can still be entered as builtin commands and selected in the builtins list. When "book" or "hist" commands are executed, only the "hist" command appears in the Transcript, but it is still selectable. The "clbh" command can still be used to clear the other "visited" or History URLs, but bookmarks are not cleared from the combined list. The "url" builtin screen now has a single button that can be used to select a "Bookmark or History" for opening a Browser page. Launchers can still be created for "book" and "hist" builtins, and URLs can be created from them.
Both "book" and "hist" builtin command names are still supported so that backed-up launcher data still functions and does not have to be redefined.
Top