Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New feature issue. Not sure if I'm being dense but how the hell do I use GrayJay sync #1574

Open
Senor304 opened this issue Dec 7, 2024 · 7 comments
Labels
Bug Something isn't working Sync

Comments

@Senor304
Copy link

Senor304 commented Dec 7, 2024

Affected Pages

I've copied the QR code, but then what, no options appear, there are no instructions other than to copy QR code or pase the code

What is the docs issue?

No information

Proposal

Some instructions would be nice

References

No response

@Zvonimir-FUTO Zvonimir-FUTO added Bug Something isn't working Sync labels Dec 7, 2024
@Zvonimir-FUTO
Copy link
Collaborator

I'm presuming that you are trying out Sync feature. You either scan QR code or copy the link with/to another device with which you want to sync your device with.

Like if you have another phone or tablet, on one device you open QR code on another you scan it and that way you can sync between them.

@Senor304
Copy link
Author

Senor304 commented Dec 7, 2024

Yes, absolutely
I copied the QR code from my tablet to my phone, but the what

@Zvonimir-FUTO
Copy link
Collaborator

On your phone go to Settings > Sync Grayjay and click on highlighted button "+ Link new device" and paste the sync code there or scan QR from tablet.

@Senor304
Copy link
Author

Senor304 commented Dec 7, 2024

Completed those steps but nothing happens whichever way I do it IE copy QR or copy from tablet to phone or phone to tablet, nothing happens when I've copied the QR code and nothing is synced no buttons are highlighted or perform any functions and no settings are seemingly changed or retained

@monkeyotg
Copy link

monkeyotg commented Dec 7, 2024

same here

Update:
I've found the cause on my devices: TrackerControl for Android
I have to turn the TrackerControl off on the device, on which I want to trigger "Link new device". It looks like, somehow TrackerControl blocks the "Request". After 2 devices are paired, I can leave TrackerControl truned on without problem with sync.

Update again :

  • "Unsubscribe" will not be synced
  • "Modification of Playlist" will not be synced
    nothing to do with TrackerControl

@Zvonimir-FUTO
Copy link
Collaborator

Zvonimir-FUTO commented Dec 8, 2024

"Unsubscribe" will not be synced
"Modification of Playlist" will not be synced

Both of these work, sync is triggered when app is opened sync is instant, however, not all ui updates live yet so it might take a little bit before you see the change. Also there is currently no indicator of syncing in progress. We plan on improving sync so all changes are reflected immediately.

@monkeyotg
Copy link

"Unsubscribe" will not be synced
"Modification of Playlist" will not be synced

Both of these work, sync is triggered when app is opened so it might take a little bit before you see the change. Also there is currently no indicator of syncing in progress.

Update:

  1. "sync is triggered when app is opened" -- Yes, it works now. Initially I thought that was real time. Because "Subscribe Sync" and "History" are real time.
  2. Today, unlike yesterday, I got an Error Message on the receiving side when "Subscribe Sync" was triggered, but it was still synced.
Version information (version_name = 268, version_code = 268, flavor = stable, build_type = release)
Device information (brand= google, manufacturer = Google, device = panther, version-sdk = 35, version-os = )

(e, ExceptionActivity, 2024-12-08 21:10:41): Uncaught exception ("Unknown Context"): Only the original thread that created a view hierarchy can touch its views. Expected: main Calling: DefaultDispatcher-worker-6

android.view.ViewRootImplCalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views. Expected: main Calling: DefaultDispatcher-worker-6RecyclerViewDataObserver.onChanged(RecyclerView.java:6065)
at androidx.recyclerview.widget.RecyclerViewAdapterDataObservable.notifyChanged(RecyclerView.java:13198)Adapter.notifyDataSetChanged(RecyclerView.java:8094)
at com.futo.platformplayer.views.adapters.SubscriptionAdapter.updateDataset(SubscriptionAdapter.kt:81)
at com.futo.platformplayer.views.adapters.SubscriptionAdapter.accessupdateDataset(SubscriptionAdapter.kt:15)11.invokeSuspend(SubscriptionAdapter.kt:38)Worker.run(LimitedDispatcher.kt:115)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
at kotlinx.coroutines.scheduling.CoroutineSchedulerWorker.executeTask(CoroutineScheduler.kt:793)Worker.runWorker(CoroutineScheduler.kt:697)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@91c901d, Dispatchers.IO]
Version information (version_name = 268, version_code = 268, flavor = stable, build_type = release)
Device information (brand= google, manufacturer = Google, device = coral, version-sdk = 33, version-os = )

(e, ExceptionActivity, 2024-12-08 21:07:56): Uncaught exception ("Unbekannter Kontext"): Only the original thread that created a view hierarchy can touch its views.

android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
	at android.view.ViewRootImpl.checkThread([ViewRootImpl.java:9619](http://viewrootimpl.java:9619/))
	at android.view.ViewRootImpl.requestLayout([ViewRootImpl.java:1917](http://viewrootimpl.java:1917/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at androidx.constraintlayout.widget.ConstraintLayout.requestLayout([ConstraintLayout.java:3605](http://constraintlayout.java:3605/))
	at androidx.constraintlayout.motion.widget.MotionLayout.requestLayout([MotionLayout.java:2898](http://motionlayout.java:2898/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at android.view.View.requestLayout([View.java:26282](http://view.java:26282/))
	at androidx.recyclerview.widget.RecyclerView.requestLayout([RecyclerView.java:4927](http://recyclerview.java:4927/))
	at androidx.recyclerview.widget.RecyclerView$RecyclerViewDataObserver.onChanged([RecyclerView.java:6065](http://recyclerview.java:6065/))
	at androidx.recyclerview.widget.RecyclerView$AdapterDataObservable.notifyChanged([RecyclerView.java:13198](http://recyclerview.java:13198/))
	at androidx.recyclerview.widget.RecyclerView$Adapter.notifyDataSetChanged([RecyclerView.java:8094](http://recyclerview.java:8094/))
	at com.futo.platformplayer.views.adapters.SubscriptionAdapter.updateDataset(SubscriptionAdapter.kt:81)
	at com.futo.platformplayer.views.adapters.SubscriptionAdapter.access$updateDataset(SubscriptionAdapter.kt:15)
	at com.futo.platformplayer.views.adapters.SubscriptionAdapter$1$1.invokeSuspend(SubscriptionAdapter.kt:38)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at [kotlinx.coroutines.DispatchedTask.run](http://kotlinx.coroutines.dispatchedtask.run/)(DispatchedTask.kt:108)
	at kotlinx.coroutines.internal.LimitedDispatcher$[Worker.run](http://worker.run/)(LimitedDispatcher.kt:115)
	at [kotlinx.coroutines.scheduling.TaskImpl.run](http://kotlinx.coroutines.scheduling.taskimpl.run/)(Tasks.kt:103)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$[Worker.run](http://worker.run/)(CoroutineScheduler.kt:684)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@86cced3, [Dispatchers.IO](http://dispatchers.io/)]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working Sync
Projects
None yet
Development

No branches or pull requests

3 participants