Devices, not enough control

  • Hello,

    Perhaps I'm missing something here but I'd like to figure out how to have more control using the "devices" flag.

    I'm trying to juggle with settings for several different configuration:

    - desktop with flash
    - desktop *without* flash but with HTML5
    - Android mobile (flash)
    - Android tablet
    - iPhone and iPad mobile

    How can I activate something only for flash on a desktop or an Android tablet, but not for flash on an Android phone?

    An example: I want to have zoom buttons, but only on Flash (since it doesn't seem to work with HTML5), preferrably on an Android tablet as well, but *not* on an Android phone (because it's just too small). I don't see a combination that allows me to do that.

    If I use devices="desktop", it will be also available on HTML5 desktop, which I don't want.
    If I use devices="flash", it won't be available at all on HTML5, which I want, but it will also be available on an Android phone, which I don't want.

    How can we get more specific than that? What's the setting for an Android tablet as opposed to an Android phone?

    I've thought about defining the plugins 2 times this way:

    <plugin name="zoomin" devices="flash" blah blah blah visible="true">

    <plugin name="zoomin" devices="android" visible="false">

    But the question is: does the "android" setting work only for a mobile phone or for a tablet as well?

    Thanks,
    David

  • Perhaps I didn't explain well enough.

    My point is that I want certain plugins to be available in Flash only on a desktop (and a tablet) but not on an Android phone. How can I use the devices setting to differentiate a dekstop/tablet flash from an Android phone flash. And does devices="android" concern only a phone or a tablet as well?

  • I think you have very good control.

    For example this
    <plugin zorder="10" name="logo1" url="../skin/logo-1.png" devices="desktop" />
    <plugin zorder="10" name="logo2" url="../skin/logo-2.png" devices="mobile" />
    <plugin zorder="10" name="logo3" url="../skin/logo-3.png" devices="tablet" />
    Will show logo 1 on desktops
    logo 2 on my Android Smartphone
    and logo 3 on my iPad

    I do not have an Android tablet or iPhone to test but I assume the iPhone will show logo 2 and the Android tablet Logo 3


    I could also do this and have different for all devices
    <plugin zorder="10" name="logo1" url="../skin/logo-1.png" devices="desktop" />
    <plugin zorder="10" name="logo2" url="../skin/logo-2.png" devices="mobile" />
    <plugin zorder="10" name="logo3" url="../skin/logo-3.png" devices="tablet" />
    <plugin zorder="10" name="logo3" url="../skin/logo-4.png" devices="iphone" />
    <plugin zorder="10" name="logo3" url="../skin/logo-5.png" devices="ipad" />

    What I do not know is what happens if I do this, I believe the android will override the mobile so both tablets and android mobiles will show logo 3

    <plugin zorder="10" name="logo1" url="../skin/logo-1.png" devices="desktop" />
    <plugin zorder="10" name="logo2" url="../skin/logo-2.png" devices="mobile" />
    <plugin zorder="10" name="logo3" url="../skin/logo-3.png" devices="android" />


    Remember also that the Zoom buttons are most important on Android also the small mobile ones if you want to give them the full resolution.

    Hans

  • Yes, but this still doesn't completely answer my questions:

    - how can we tell an android phone from an android tablet?
    - using the "desktop" setting will make something appear on all desktops, flash and HTML5, that's not good.

    This also means that we have to write everything in a certain sequence to make sure one overwrites the one above, as I mentioned in previous post, but we should have a finer control with devices to avoid having to overwrite definitions.

    I don't find the zoom buttons useful on my android phone. They are too small to press reliably, or take too much of the screen. On a phone, I use only the fullscreen button. On a Javscript/HTML5 browser it seems that zooming doesn't work, so I'd rather get rid of the icons there too.

  • Well in reality all desktops are flash so thats no problem.

    As I just said the android phone reacts to mobile. I assume the Android tablet reacts to "tablet"

    For mobiles you just scale the zoom buttons to a usefull size. If you do not want them to look big just make them big transparent PNGs with the zoom sign in Center

    I have a 5 gigapixel pano which works perfect on my Desire Z. How would you see that without zoom button.

    And zoom works fine on HTML5 devices. There are just iPads and iPhones and even if they can zoom with pitch there are people who might have difficulties with it.
    My handicapped daughter have.

    Hans

  • Actually, the theory doesn't seem to work.

    I have a button defined for desktop|tablet. I want to not have that button for an html5 browser. If I redefine the same button to visible="false", it's still there.

    Not all desktops have Flash and with Safari 5 supporting CSS3D transformations, more clients will not have flash. I am a web developer and know that issue pretty well.

    The android reacts to mobile, but so will the iphone. You're assuming the android tablet reacts to tablet but it is not confirmed, and it's a bit confusing since the other option is "android". If the android tablet reacts to tablet, and the ipad as well, we again have a problem there, because they are definitely not the same.

    I know I can scale the zoom buttons. I just don't want them there on a small device. But that's not a problem, I don't have them on my phone. The issue is I don't know if they have also disappeared in the case of an android tablet.

    I do not care about the zoom button on a mobile phone. I am not interested in a 5gb panorama. Actually I could probably solve my problem by removing the zoom buttons everywhere since I don't need anyone to be zooming in or out anyway.

    As fas as zoom working on an HTML5 device, it would be nice to have some documentation from the developer about that. My zoom buttons are defined with plugins and do ondown="set(movevectorz,+1);". That works with Flash but does absolutely nothing on Safari 5.

    I'm curious about zooming on your 5GB panoramas on an HTML5 mobile device though, since the documentation on this site mentions that multi-res is not currently possible on HTML5. You also won't have enough memory on those devices to load anything that large.

    Edited 2 times, last by LeChuck (March 10, 2011 at 7:46 PM).

  • Of course that does not work . Even if you use an HTML5 browser you are still on a desktop.
    So you are actually showing both the visible and the unvisible.

    If you look at it on an iPad or iPhone it will not be visible.
    '
    'Hans

  • If the android tablet reacts to tablet, and the ipad as well, we again have a problem there, because they are definitely not the same.

    '
    Thats why you also have the iPad device tag. But really forget about that. The only difference is that the android needs the zoom buttons , the iPad does not need them but they absolutely does not hurt.

    Hans

  • How could it show both the visible and invisible if the plugins are defined with the same name?

    In any case, don't you see how that makes my point? I'm trying to make a difference between a plugin that will work on a flash desktop and one that will work on an html5 desktop. If I use devices="flash" or devices="html5", then they are going to show up also on an android phone, which I don't want. I don't know how else to explain this.

  • Listen Hans, I appreciate your trying to help, but no, my Android phone doesn't need the zoom buttons. That's my choice and I don't want them there. Clicking on buttons on such a small device is awkward, and I don't need the zoom. Nothing in this helps with my original request to have more ways to differenciate accurately between devices.

  • As fas as zoom working on an HTML5 device, it would be nice to have some documentation from the developer about that. My zoom buttons are defined with plugins and do ondown="set(movevectorz,+1);". That works with Flash but does absolutely nothing on Safari 5.


    I never seen that code.
    This is the correct I use. ondown="set(fov_moveforce,+1);" onup="set(fov_moveforce,0);" />
    Works perfect.

    Hans

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!