jellyfin / jellyfin-webos

WebOS Client for Jellyfin
https://jellyfin.org
Mozilla Public License 2.0
638 stars 66 forks source link

Test IPK stays installed? #16

Closed sempixel closed 3 years ago

sempixel commented 4 years ago

Hello all.

I'm near to install all the tools needed to compile and test the jellyfin-webos app BUT if I read correctly here: (http://webostv.developer.lge.com/develop/app-test/)

Developer Mode is disabled when:
- The TV has been rebooted ten times while the TV is not connected to a network (webOS TV v1.x and v2.0).
- Developer Mode has been enabled for 50 hours.
- The Developer Mode login session is terminated.

So whatever I do the application will self-uninstall at one point?

Please confirm. Thanks.

Fleshgrinder commented 4 years ago

We‘re both at the same situation at almost the same time. Just read the same and was wondering about this too.

dkanada commented 4 years ago

@dmitrylyzo is our resident WebOS and Tizen guru, but if either of you are interested in finishing the required items to get this on the store we have a big list of things LG needs us to confirm before they'll accept the client. I'm unfamiliar with the codebase but it does indeed sound like the client will get uninstalled somewhat frequently.

dmitrylyzo commented 4 years ago

I do not have an LG TV. I think @EraYaN could say.

For Tizen, I can say that it has been in "developer mode" for more than six months now. But I push test app into it from time to time.

Fleshgrinder commented 4 years ago

@dkanada is this list available somewhere?

anthonylavado commented 4 years ago

@Fleshgrinder When I last pulled the list of requirements, it was on an LG Developer help page. Since I had to login to see it, I don’t believe we could share it publicly. Look for the self-test requirements. I think that’s what it was called.

sempixel commented 4 years ago

It's public here.

Sample Checklist for Self Evaluation(ver 3.6) http://gfts.lge.com/fts/gftsDownload.lge?biz_code=APP_STORE&func_code=APP_PAPER&file_path=/appstore/seller/guide/self_evaluation_checklist_3.6.xlsx

And bonus, I found our type of app: http://webostv.developer.lge.com/develop/app-developer-guide/hosted-web-app/

dkanada commented 4 years ago

It's quite a large list, but hopefully most of them are already resolved. We just need to confirm what needs to be done before we can release it.

EraYaN commented 4 years ago

Right now our webOS background color does not match the web UI color. But then again this also does not Match for YouTube so it's probably okay.

And apparently we need to submit one package in Full HD and one in HD resolutions, vor both UHD and FHD TVs.)

The hard part is the normal remote control stuff with the focus and usability issues. Other than that I think we can pass everything.

Hanoko commented 4 years ago

I installed the app on my TV with webos 5 and almost everything works fine with normal remote. The only issue I saw was with the subtitle and Settings menu on the player screen.

It would be awesome if you can publish it on the store. Thanks for yor great work, keep rocking.

sempixel commented 4 years ago

Do you need some tests on WebOS 4.x with magic remote?

JLFN commented 4 years ago

I tried on LG WebOS 4.X on LG OLEDC8 and it works good with magicremote It should be nice to make this public soon.

Koritha commented 4 years ago

Tested it on webos 3.x. Navigating my media library is a bit of a laggy experience. Between button pushes it can take 2-3 seconds to register. Playback is perfect though and so is casting from the jellyfin Android app.

Hopefully the laginess can be addressed before it officially gets published.

JustAMan commented 4 years ago

We should return to the point of testing and re-evaluating store submission when next major Jellyfin release hits (probably 10.6), there are quite a few fixes in jf-web side for WebOS.

1024mb commented 4 years ago

We should return to the point of testing and re-evaluating store submission when next major Jellyfin release hits (probably 10.6), there are quite a few fixes in jf-web side for WebOS.

@JustAMan I have a question about this.
Does LG not allow beta versions of apps on their stores? Or there were other reasons why you guys didn't pushed a beta (or alpha) version to the WebOS Store? I mean, I don't know about the versioning, but publishing with a name like "Jellyfin -BETA-".

heyhippari commented 4 years ago

We should return to the point of testing and re-evaluating store submission when next major Jellyfin release hits (probably 10.6), there are quite a few fixes in jf-web side for WebOS.

@JustAMan I have a question about this. Does LG not allow beta versions of apps on their stores? Or there were other reasons why you guys didn't pushed a beta (or alpha) version to the WebOS Store? I mean, I don't know about the versioning, but publishing with a name like "Jellyfin -BETA-".

As far as I know, they don't allow it. The "beta" version is installing Developer Tools and building the IPK...
However, it's starting to work quite well (on a WebOS 4.x LG B8 anyway) and there has been a bunch of fixes for WebOS 1.2 and 2.x, which we want to support.

As @JustAMan says, we'll likely re-evalutate the checklist on our way to 10.6, but I feel like we're a lot closer than we were in either 10.4.z or 10.5.z.

JacobLT commented 4 years ago

Recently tested the app on my LG TV everything works great apart from the side menu doesn't work on the home screen and when trying to transcode films that can't be directly played I can see from the console it still tries to direct play for a good few minutes before switching but then again doesn't play the transcode

reversebias commented 4 years ago

For anyone running home automation, or maybe logitech harmony/equivalent. It's possible to sequence IR remote codes to extend developer mode indefinitely. I'm using a home assistant script and a tasmota IR blaster on my webos 4.5 TV:

'1585600559227':
  alias: WebOS extend developer mode
  sequence:
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF10EF}' #power on
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:20
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DFAD52}' #open app recents
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:05
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF827D}' #down to parallelogram row
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:02
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF609F}' #right to select first item (put developer mode app here)
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:02
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF22DD}' #enter developer mode app
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:10
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF827D}' #down
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:02
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF827D}' #down
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:02
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF22DD}' #enter to extend time
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:01:00
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF738C}' #back to HDMI 1 input
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish
  - delay: 00:00:05
  - data:
      payload: '{''Protocol'':''NEC'',''Bits'':32,''Data'':0x20DF10EF}' #power off
      topic: cmnd/ir_blaster/IRsend
    service: mqtt.publish

I have this run once a day at 4am, jellyfin test app has been working flawlessly for 6 weeks now with a single extended dev mode session.

iNfRaSoNiC13 commented 4 years ago

So right now there is no way to run the app "after" the developer mode? And we have to reinstall it every time? Is that right?

oddstr13 commented 4 years ago

That is correct, you need to keep developer mode going in order to side-load apps on webOS

1024mb commented 4 years ago

I don't know about that, though I may be some rare case. I haven't used the app for nearly 3 months and also I haven't extended the developer mode on the TV since the same amount of time, then I decided to try Jellyfin on the TV again today and for my surprise the app was still installed -haven't checked if developer mode is still on but I assume is off as we only have hours to extend it-, and the app is still working good so far.

Dielee commented 3 years ago

For all those who use home assistant, another solution to extend the dev mode:

alias: Reactivate DevMode TV
sequence:
  - service: media_player.turn_on
    data: {}
    entity_id: media_player.lg_webos_smart_tv
  - wait_template: '{{ is_state(''media_player.lg_webos_smart_tv'', ''on'') }}'
    continue_on_timeout: true
  - wait_template: ''
    timeout: '00:00:20'
    continue_on_timeout: true
  - service: media_player.select_source
    data:
      source: Developer Mode
    entity_id: media_player.lg_webos_smart_tv
  - wait_template: >-
      {{ is_state_attr('media_player.lg_webos_smart_tv', 'source', 'Developer
      Mode') }}
    continue_on_timeout: true
  - wait_template: ''
    timeout: '00:00:10'
  - service: webostv.button
    data:
      entity_id: media_player.lg_webos_smart_tv
      button: DOWN
  - wait_template: ''
    timeout: '00:00:05'
  - service: webostv.button
    data:
      entity_id: media_player.lg_webos_smart_tv
      button: DOWN
  - wait_template: ''
    timeout: '00:00:05'
    continue_on_timeout: true
  - service: webostv.button
    data:
      entity_id: media_player.lg_webos_smart_tv
      button: ENTER
  - wait_template: ''
    timeout: '00:00:10'
    continue_on_timeout: true
  - service: media_player.turn_off
    data: {}
    entity_id: media_player.lg_webos_smart_tv
mode: single