Page 2 of 2 FirstFirst 12
Results 11 to 16 of 16

Thread: Android App

  1. #11
    Join Date
    Apr 2004
    Location
    Dearborn, MI
    Posts
    1,963

    Default

    Could you give a brief summery as to the capabilities for Andre. Does it support Mediabridge? Any screen shots?
    John

    Now Playing skin creator

    Girder 5.0 / Elk-M1EZ8 / Ocelot / SECU-16IR /SECU-16I / SECU-16 / BobCat Humidity
    JRMC 11.1 / M-Audio Delta 410 / Xitel HIFI Pro / Xitel HIFI Link
    NetRemote 2.0 / 6 Zone whole house audio delivering 1580 watts RMS total
    ELO 15" Touchscreen, Nokia 770 and Advent 3500PC Mobile PC 7" TS
    Droid 2 Global

    Click here to visit my Nowplaying Showcase Blog

  2. #12
    Join Date
    Mar 2007
    Posts
    277

    Default

    Sure.

    To answer the Mediabridge question first, there's no native support right now, however I believe Andre's TCP capabilities would make it possible today if you had a good idea of the protocol communication syntax. Since I believe MB is pretty elaborate, I've considered adding direct support to avoid that necessity, if Promixis would be ok with it.

    As for capabilities, Andre is best described as a universal control interface. At its core, it can communicate with anything that uses TCP or HTTP, and is capable of doing so in fairly advanced ways. I'm also working on native UPnP support so it can easily behave as a control point for UPnP devices.

    The UI paradigm consists of one or more pages that contain any mix of half a dozen control types (buttons, sliders, lists, browsers, text, images) that can be arranged pretty much any way desired through alignment, grouping, and margins settings.

    Buttons are where the majority of the functionality lies. They have five distinct actions (display, touch, held, repeat, release) to which any visual or control behavior can be set. They are also capable of being stateful, representing different look/behavior based on the state you set them to (of which you can have as many as you like).

    Visually you have complete control of buttons with image backgrounds, tinting of images, labels with custom font support and an array of display options, animation (sprite animation or move/scale/rotate/alpha), and borders and fills. One common example is to have a typical button image set on display/release, and have that same button image tinted a color, perhaps scaled down to 90% on touch, held and repeat so as to appear 'pressed'. But you can do pretty much anything you wish, including trigger animations, change font/label, etc. Assets like images can either be referenced locally on the device or fetched from a remote web server on demand.

    The list of functionality Buttons can trigger is pretty long. For server/software control purposes, there's calling web services or triggering TCP exchanges, which includes capturing responses into variables and doing things with the values. But there's also user interaction (dialogs, speak text, vibrate, prompts, play sound) and device control (launch system browser, searches, other apps, trigger Android intents).

    The other controls (called 'entities' within Andre) have some pretty elaborate capabilities too but aren't nearly as sophisticated as Buttons.

    In addition to the user interface itself, there are also the following capabilities:

    - Advanced TCP automation scripts (including persistent connections)
    - Javascript scripting
    - Complex timers (countdown/scheduled)
    - Large data set arrays (intended for things like IR code databases)
    - Variables (store and manipulate data) & tokens (use variables directly in-line for Button parameter values)
    - Locales (create any number of locations/rooms and (optionally) change Button behaviors depending on which locale you're in)

    You can either choose to create your layout by hand-editing an XML file that gets loaded (fairly difficult right now, since the syntax documentation is ancient) or use on-device GUI editor tools, or a combination of each. The editor is pretty advanced, though there are still some elements that need polishing at this point (mostly around specific button parameter types to make them easy to configure). There's a concept of an Entity Gallery, where you can store any piece (or group of pieces) of layout, exactly configured the way you want, and then clone and recall that piece to create more of them. This gallery is also extended by an online community gallery accessed within the app; you can publish your layout components to it and/or fetch others' components for your own usage. For example, one of the things I threw in the online community gallery originally is a full number pad and a cursor control set of buttons, and I recently put in a single button that contains Girder event control built in; you just need to fill in your IP, device number and event string.

    Ok, that wasn't even remotely close to brief, my appologies. There's a lot more there, too, like controlling Andre through the Google cloud (set variables or trigger buttons) over the internet which is really neat.

    As for screenshots, for starters you can see the fairly old images associated with the Play store entry for Andre: https://play.google.com/store/apps/d...iedalive.andre but I'll try to get something from the demo config up soon too. The images on the Play store page show the Button parameter editor, and one of my old test pages (for my own system at home) with an edit dialog popped up to change the color of a border or something.

    If you have any functionality questions that I didn't cover here, please feel free to ask.

  3. #13
    Join Date
    May 2004
    Posts
    2,577

    Default

    Luke,
    Are you still around? I haven't seen any posts by you lately and there hasn't been any activity on your website recently.
    I tried to reach you via the support email and it failed. I then posted a thread on the forum to let you know, but there has been no response.
    I hope everything is going well and it would be great if you could let us know how development is progressing.
    Thanks and happy new year.

    -D
    Beware of the robot.

  4. #14
    Join Date
    Mar 2007
    Posts
    277

    Default

    Hey, I'm still here. Apparently there's a problem with the mail setup for andreapp.com, which means not only have I missed support emails, but forum notification emails as well. My appologies for that. I will get it fixed right away.

    I literally have one bug to resolve before I'm releasing 2.1.0. I have been working on docs and examples/demo configuration but as I worked on those, I found deficiencies with the app that made some real-world uses cumbersome. So over the last month or so I've added several very nice enhancements to address these issues. I'll have a detailed change-list on release, but here's a summary of what's been added:

    - Revamped gestures, attached to Entity Groups instead of Buttons
    This lets you create multiple gesture areas on the screen at once that call Buttons. So you can have, for example, a thin EntityGroup on the left side of the screen that catches a right-fling to slide out a panel from off-screen, another Group filling the top-half of the screen that catches a right-fling to do channel up, and another Group filling the bottom half of the screen that catches a right-fling to trigger a 'cursor right' command. Previously you could only create one fling per direction (up/down/left/right) per page which could be done anyhere on the screen. You can now, of course, create one group that is screen-sized to re-create how it used to work.

    - Added an 'overlay' layer
    Previously, there was a single view on the screen where you loaded a page into. If you wanted to have something common on multiple pages (navigation, a clock, a number pad, etc.) you had to literally clone the entity to all pages, which bloated memory and slowed down loading considerably. Now there's a single 'overlay' layer in addition to the existing page view. It functions very similarly to the normal layer, you simply create a normal page and assign it to the overlay layer, either by default in the Remote configuration settings, or via Parmeter call as a function of a button. This is great for navigation elements, common stuff like numeric keypads or cursor pads, pop-ups for notifications/status, Android widgets, etc.

    - Enhanced 'linear' layout mode for EntityGroups
    So there's always been EntityGroups which allow you to group children entities together. Originally, you'd lay out these children by aligning them against each other in various ways (e.g. Button2 is aligned to the right of Button1). Then I added the ability to turn on 'linear layout mode' which makes an Entity Group automatically just line children up in a row or column, which made it easier to create layout with rows of buttons. But it was very limited; if you wanted any space between children, you had to use the margins on each child, and if the items didn't fit, they just squeezed in at the end. I enhanced this greatly by enabling wrapping of the children, specifying a group-level horizontal/vertical spacing between items, the ability to force wrapping at a certain number of children per line, and more. This lets you very quickly create not only rows or columns of buttons, but entire grids too. On top of all that, you can use it at a higher level in your layout to more gracefully handle different screen sizes (either because of rotation, or using multiple devices). You can put normal Entity Groups inside a new linear entity group and let your layout flow based on the screen dimensions.


    These enhancements should make it much less painful to do complex and flexible layouts, and get ramped up quickly. I'll be fixing the last known bug today, running it through some tests, and pushing 2.1.0 live to the market. Very shortly after I'll be pushing out the new demo config, the 'trial' version (works 100% with an occasional nag screen) and start rolling out documentation to the wiki.

  5. #15
    Join Date
    May 2004
    Posts
    2,577

    Default

    Thanks! Glad to see that you are still enthusiastic about your product!
    Will you be able to show us how to use Andre with Tasker as well? I'd like to send events to Girder based on Tasker events on my phone. Maybe a simple example as well as how to send the Caller ID from my phone to Girder as a payload?
    Beware of the robot.

  6. #16
    Join Date
    Mar 2007
    Posts
    277

    Default

    Quote Originally Posted by quixote View Post
    Thanks! Glad to see that you are still enthusiastic about your product!
    Will you be able to show us how to use Andre with Tasker as well? I'd like to send events to Girder based on Tasker events on my phone. Maybe a simple example as well as how to send the Caller ID from my phone to Girder as a payload?
    Yes, this should be trivial. I'll cook up an appropriate example and put it in the wiki.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •