Code Monkey home page Code Monkey logo

pocket-plays-for-twitch's People

Contributors

dkacperski97 avatar sebastianrask avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pocket-plays-for-twitch's Issues

Chat mention highlight

Hey, been using the app for a while and only have one suggestion. Whenever I get mentioned in chat I would like it to light up a different colour like red so I can see it a lot easier!

Thanks for the amazing app!

Support for subscribe streak icons/additional badges

Currently the chat only displays the standard, new subscriber icon in front of a user's name. It would be nice for it to also support the streak icons (maybe this should wait until cumulative subscriptions are rolled out because they might change the api?)

Edit: Seems like the userstate API includes a badges paramater now that needs to be read for that info: https://dev.twitch.tv/docs/irc/tags#userstate-twitch-tags (and to get all the new badges like bits or twitchcon visitor)

possible Twitch API change

Hello,

I noticed that "my streams" are not loading currently when logged in. There is a similar issue with another 3rd party client as well, so I'm guessing it's an API issue or something along those lines.. or maybe it's just me.

Stream not playing

Hello,

When I opened a stream the past couple days, its says stream not live and just shows chat. This fixed itself eventually but has been back for a some time now (over a day). Did twitch change something that causes this more now?

Used to be isolated to some games\streams, but it happens on my phone which always worked as well.

Thanks.

Chromecasting broadcasts isn't available

When viewing past broadcasts there's no option to use Chromecast to view the stream. If casting is enabled on the home screen and you start playing a broadcast the current cast session is terminated.

Ads are now playing again

you start a stream, Pocket Plays now displays "Advertisement is playing" for 30 seconds. it's not a "real" advertisement, but a message you can't skip and you need to wait the 30 seconds till you can watch a stream. this is really annoying and everytime you click it away you need to wait again and again and again..

ublock origin and browser adblockers doesn't have that issue.. could you please fix it so it blocks again?

Build instructions

Hey Sebastian,

This is my daily Twitch driver since a while (and it rocks) but could definitely do with some extra love. There's a few bugs and features that I'd love to write and send PRs for.

Would you be able to provide some help with build instructions and buildability in general?

Some of the first barriers I've run into are:

  • Missing google-services.json
  • Missing class com.sebastianrask.bettersubscription.misc.SecretKeys
  • ...

Probably obvious why they are missing, but it also means building a development version isn't currently possible without some involved ripping out of Google's tendrils from the code.

Any help? Much appreciated!

FrankerFaceZ Support

Can you please support Twitch emotes and badges from the FrankerFaceZ extension?

Should be added to F-droid.org repository.

I actually thought that this app is a commercial, closed source app. It didn't say that it is a open-source app on Google Play either. I think it would be a great addition to the F-droid open source repository.

Building: Program type already present: com.afollestad.materialdialog

Yesterday my Android Studio got updated, now building results in the following found below.

Android issues:

Program type already present: com.afollestad.materialdialogs.folderselector.FileChooserDialog$FileCallback
Message{kind=ERROR, text=Program type already present: com.afollestad.materialdialogs.folderselector.FileChooserDialog$FileCallback, sources=[Unknown source file], tool name=Optional.of(D8)}

Full error output

java.lang.RuntimeException: com.android.build.api.transform.TransformException: Error while generating the main dex list:
Error while merging dex archives: 
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
Program type already present: com.afollestad.materialdialogs.folderselector.FileChooserDialog$FileCallback
	at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:55)
	at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:104)
	at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:230)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
	at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:50)
	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
	at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
	at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
	at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
	at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
	at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
	at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
	at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
	at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
	at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
	at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
	at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
	at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
	at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
	at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
	at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
	at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:277)
	at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:262)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191)
	at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
	at java.lang.Thread.run(Thread.java:745)
Caused by: com.android.build.api.transform.TransformException: Error while generating the main dex list:
Error while merging dex archives: 
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
Program type already present: com.afollestad.materialdialogs.folderselector.FileChooserDialog$FileCallback
	at com.android.build.gradle.internal.transforms.D8MainDexListTransform.transform(D8MainDexListTransform.kt:147)
	at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:239)
	at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:235)
	at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:102)
	... 51 more
Caused by: com.android.builder.multidex.D8MainDexList$MainDexListException: Error while merging dex archives: 
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
Program type already present: com.afollestad.materialdialogs.folderselector.FileChooserDialog$FileCallback
	at com.android.builder.multidex.D8MainDexList.getExceptionToRethrow(D8MainDexList.java:107)
	at com.android.builder.multidex.D8MainDexList.generate(D8MainDexList.java:95)
	at com.android.build.gradle.internal.transforms.D8MainDexListTransform.transform(D8MainDexListTransform.kt:131)
	... 54 more
Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete
	at com.android.tools.r8.utils.ExceptionUtils.withCompilationHandler(ExceptionUtils.java:70)
	at com.android.tools.r8.utils.ExceptionUtils.withMainDexListHandler(ExceptionUtils.java:53)
	at com.android.tools.r8.GenerateMainDexList.run(GenerateMainDexList.java:118)
	at com.android.builder.multidex.D8MainDexList.generate(D8MainDexList.java:93)
	... 55 more
Caused by: com.android.tools.r8.utils.AbortException: Error: Program type already present: com.afollestad.materialdialogs.folderselector.FileChooserDialog$FileCallback
	at com.android.tools.r8.utils.Reporter.failIfPendingErrors(Reporter.java:116)
	at com.android.tools.r8.utils.Reporter.fatalError(Reporter.java:74)
	at com.android.tools.r8.utils.ExceptionUtils.withCompilationHandler(ExceptionUtils.java:64)
	... 58 more

Chat width problem with OnePlus

The video view is over the chat. I think it is caused by the navigation gestures of OnePlus. You have to add a margin for this devices without navigation bar but with gestures.

Chromecast isn't working

While casting to a v3 Chromecast, when I select a stream, the Chromecast briefly shows a loading screen for that stream, then returns to the home view (blue screen and Pocket Plays logo).

Other potentially relevant info:

  • Got the exact same behaviour on a different phone with an older version of Pocket Plays.
  • No ad-blocking enabled on my network.
  • Other apps continue to work with Chromecast

Ads now autoplay before streams

Ads now play before a stream when previously (in all past versions of Pocket Plays) ads were bypassed. Restoring this feature would be greatly appreciated.

Follow without an account

If you don't login use an offline account, that you can follow and see if someone is online or not

Chat only mode does not support landscape

Currently it is not possible to have the app rotated to landscape mode when in chat only mode, it automatically rotates back do portrait when toggling it.

Seeing as twitch's own app sucks in landscape by wasting almost half of the screen on unhidable menu bars this would really be cool to have. (In my case I sometimes watch on my tv and want the chat on my phone in the (landscape) docking station)

Live freezes in 3-4 seconds since start

Hello. Maybe this problem isn't fixable because is caused in an old Tablet (Wondermedia AN10DG3 with Android 4.1.1), but maybe is something else interfering.

I can see VODs without problems, but when i began to see a live stream, it freezes 3-4 seconds after it start. These seconds the stream works perfectly smooth, it's like it isn't loading more. The chat keeps working.

To put in context, Impulse Twitch App seems to have exactly the same issue, tChat and Twitch Official App work perfectly (Well, with Twitch App the videos look awful, but that's another story).

Thanks in advance.

E for emotes

I just installed pocket plays on my me tablet and almost all the twitch emotes I see are big E. Doesn't seem to happen in my other 2 devices, but I haven't updated those yet.

No Playback Android 5.x

Hello,

Thanks for your hard work in fixing the emotes issue! I noticed someone else on the play store had an issue with playback on version 5 of android. I'm on 5.1.1 and it seems like certain streams just dont want to load. It says stream no longer live, but it connects to chat and I can watch it from twitch app. happens to a majority of streams, but some do still work.

Hope you can help again!

Thanks.

Cannot sign in

I'm trying to sign in but when I introduce my sms code it goes back to the app and just says to sign in. I hit it again and same Twitch login page.

No longer blocking ad's

Hi - thanks for this app, and i hope you are still developing it!
For a few days now, when you load a stream you get a 'Commercial Break' at the start and then (for me at least) the video freezes, but the audio is OK. Any chance you can update the app please?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.