Java HME SDK fixes

Discussion in 'Developers Corner' started by davidblackledge, Dec 7, 2014.

  1. davidblackledge

    davidblackledge Registered lÜser

    563
    36
    Sep 9, 2008
    NM

    Advertisements

    I finally posted on hmedev . wikidot . com the latest complete set of "V49 Classes" that fix known problems with the SDK and make it easier to work with it.

    They make it easy to set up an app in V49 TiVo environment using either the 1.4 or 1.4.1e SDK and Bananas classes.

    All you have to do is use those three "V49"-prefixed classes in place of the three original classes: BApplication, BApplicationFactory, and IHmeProtocol.

    They set up V49, fix known bugs, present missing constants (including keyboard constants), and make some things easier such as:
    • presenting safe regions as Rectangle objects
    • presenting regions that match the heading/logo/content areas of the standard loopset: backgrounds
    • support a text-creation shortcut like the animation, color, image creation shortcuts in setResource (setResource("[0x000000]default-10.font:my text") )
    • stores the DeviceInfo map and other useful data for later use.
    • multipliers for the current resolution vs. SD.

    http://hmedev.wikidot.com/v49-classes

    If anybody out there wants to create Java Apps anymore... use this. Your life will be easier.

    I'll keep adding to it as I learn other fixes.
     
  2. moyekj

    moyekj Well-Known Member

    12,177
    827
    Jan 23, 2006
    Mission...
    Thanks for posting these! Problem is I don't think I can really use them with streambaby since it is using HME bananas and bananas-plus libraries which extend the non-prefixed versions of the above. I guess to be able to use them I'd have to recompile all the base HME libraries and substitute the original non-prefixed class names with your version above. There probably is an easier way...
     
  3. davidblackledge

    davidblackledge Registered lÜser

    563
    36
    Sep 9, 2008
    NM
    Well, you could just merge the contents of these all into your streambaby Application and Factory classes... literally copy and paste the contents of the class, tweaking a few references, and merging some methods that you've already implemented.
    V49IHmeProtocol is just an interface, so you can "implements" it to get easy access to the constants, still.

    Not sure if there will be any problems with Bananas Plus, though.

    It was really meant as a "whatever I can fix without touching the HME libraries" idea. If anything needs to change, maybe it would be getting this stuff merged into Bananas Plus.
     
  4. dalabera

    dalabera Member

    61
    0
    Jan 10, 2013
    Help me understand something about the Java HME SDK, why in the first place it was developed to use java?

    I see so many programs using different programing languages (Pytivo - Python, KTTMG - Java, Another wrote a Ruby one, another wrote Vb.NET) and of course it all revolves around the developer preferences.

    What would it take to convert this to a Native C code or a Windows DLL that could be use to create a C# or Vb.NET ?
     
  5. davidblackledge

    davidblackledge Registered lÜser

    563
    36
    Sep 9, 2008
    NM

    Advertisements

    You'd have to ask TiVo ;] Works for me, though! And it was probably the most widely available free programming environment at the time, I'm guessing.

    it would take reading this thread:
    http://www.tivocommunity.com/tivo-vb/showthread.php?t=382139&highlight=dotnet+hme
     
  6. davidblackledge

    davidblackledge Registered lÜser

    563
    36
    Sep 9, 2008
    NM
    Or did I misunderstand you, and you're talking about converting the "fixes" I posted? Most of it is fixes for issues in the Java SDK that aren't necessarily problems for others. It would just require understanding the SDKs and reading the docs in my fixes to see what might need to transfer. ... and somebody other than me writing the fixes for the other SDKs.
     
  7. dalabera

    dalabera Member

    61
    0
    Jan 10, 2013
    ooh so it was TIVO that designed this HME SDK and released it
    under Java?
     
  8. davidblackledge

    davidblackledge Registered lÜser

    563
    36
    Sep 9, 2008
    NM
    Yep. The sourceforge site even has "Copyright TiVo Inc" at the bottom.
    http://tivohme.sourceforge.net/
    It's just apps.tv that they said they didn't own or operate.
     
  9. jbcooley

    jbcooley New Member

    55
    0
    May 13, 2007
    It's possible to write one from scratch following the spec. That's what I did. I recently started working on my project again due to the old google code site being shut down.

    https://github.com/jbcooley/tivo-sdks
     

Share This Page

spam firewall

Advertisements