Code Monkey home page Code Monkey logo

audius-mobile-client's People

Contributors

dylanjeffers avatar jowlee avatar kyle-shanks avatar milindnshah avatar piazzatron avatar raymondjacobson avatar rickyrombo avatar sddioulde avatar sliptype 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

audius-mobile-client's Issues

Add a "data saver" mode

I've seen that the app uses a lot of mobile data. It would be amazing to add an option to allow users to listen in low-qualilty.

2 Small UI Improvement for Android Client

2 UI improvements that will probably make the user experience much better for users with slight "obsessive-compulsive disorder" like me.

  1. Enabling sticky immersive mode on the start-up screen of Audius (where the triangle logo is floating), and disable it when enters the app. This hides the navigation bar and enters full-screen mode, which gives a more immersive user experience, but still gives the option to pull out a semi-transparent navigation bar when swiping up.

  2. Changing the navigation bar color to the same as the background color of the Audius app (white for light mode and a blueish-black-like color for dark mode). This makes the app look like it's taking up the whole screen and provides the user with a more immersive experience. An example is shown with the NetEase Cloud music app, with a screenshot comparison attached.
    Audius
    NetEase

App crash without Google Mobile Services

The Audius Android App just crash during start on Android 12 GrapheneOS. I guess that GMS are required, likely because of the GoogleCast extension (https://www.npmjs.com/package/react-native-google-cast).

Logcat:

11-14 15:54:55.374 24303 24394 E unknown:ReactRootView: runApplication: call AppRegistry.runApplication
11-14 15:54:55.381 24303 24394 D SoLoader: init exiting
11-14 15:54:55.388  1235 11646 D ConnectivityService: requestNetwork for uid/pid:10221/24303 activeRequest: null callbackRequest: 199 [NetworkRequest [ REQUEST id=200, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10221 RequestorUid: 10221 RequestorPkg: co.audius.app] ]] callback flags: 0 priority: 2147483647
11-14 15:54:55.389  1235  1979 D ConnectivityService: NetReassign [200 : null โ†’ 100]
11-14 15:54:55.397  1235  1464 I ActivityTaskManager: Displayed co.audius.app/.MainActivity: +893ms
11-14 15:54:55.397  1235  1966 D WifiNetworkFactory: got request NetworkRequest [ REQUEST id=200, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10221 RequestorUid: 10221 RequestorPkg: co.audius.app] ]
11-14 15:54:55.399  1235  1966 D UntrustedWifiNetworkFactory: got request NetworkRequest [ REQUEST id=200, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10221 RequestorUid: 10221 RequestorPkg: co.audius.app] ]
11-14 15:54:55.402  1235  1966 D OemPaidWifiNetworkFactory: got request NetworkRequest [ REQUEST id=200, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10221 RequestorUid: 10221 RequestorPkg: co.audius.app] ]
11-14 15:54:55.409 24303 24303 V MediaRouter: Selecting route: RouteInfo{ name=Phone, description=null, status=null, category=RouteCategory{ name=System types=ROUTE_TYPE_LIVE_AUDIO ROUTE_TYPE_LIVE_VIDEO  groupable=false }, supportedTypes=ROUTE_TYPE_LIVE_AUDIO ROUTE_TYPE_LIVE_VIDEO , presentationDisplay=null }
11-14 15:54:55.410 24303 24303 I MediaRouter: Skip setBluetoothA2dpOn(): types=8388615, isPlaybackActive()=false, BT route=null
11-14 15:54:55.415 24303 24303 I MediaRouter: Found default route: MediaRouter.RouteInfo{ uniqueId=android/androidx.mediarouter.media.SystemMediaRouteProvider:DEFAULT_ROUTE, name=Phone, description=null, iconUri=null, enabled=true, connecting=false, connectionState=0, canDisconnect=false, playbackType=0, playbackStream=3, deviceType=0, volumeHandling=1, volume=21, volumeMax=25, presentationDisplayId=-1, extras=null, settingsIntent=null, providerPackageName=android }
11-14 15:54:55.415 24303 24303 I MediaRouter: Unselecting the current route because it is no longer selectable: null
11-14 15:54:55.419 24303 24303 E ActivityThread: Failed to find provider info for com.google.android.gms.chimera
11-14 15:54:55.419 24303 24303 W DynamiteModule: Failed to retrieve remote module version.
11-14 15:54:55.420 24303 24303 W GooglePlayServicesUtil: Google Play Store is missing.
11-14 15:54:55.421 24303 24303 W DynamiteModule: Local module descriptor class for com.google.android.gms.cast.framework.dynamite not found.
11-14 15:54:55.421 24303 24303 I DynamiteModule: Considering local module com.google.android.gms.cast.framework.dynamite:0 and remote module com.google.android.gms.cast.framework.dynamite:0
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: CatalystInstanceImpl caught native exception
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: java.lang.RuntimeException: com.google.android.gms.dynamite.DynamiteModule$LoadingException: No acceptable module found. Local version is 0 and remote version is 0.
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.google.android.gms.internal.cast.zze.zzf(Unknown Source:51)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.google.android.gms.internal.cast.zze.zza(Unknown Source:1)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.google.android.gms.cast.framework.CastContext.<init>(Unknown Source:37)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.google.android.gms.cast.framework.CastContext.getSharedInstance(Unknown Source:6)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.reactnative.googlecast.GoogleCastModule$14.run(GoogleCastModule.java:445)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at android.os.Handler.handleCallback(Handler.java:938)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at android.os.Handler.dispatchMessage(Handler.java:99)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage(MessageQueueThreadHandler.java:27)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at android.os.Looper.loopOnce(Looper.java:201)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at android.os.Looper.loop(Looper.java:288)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at android.app.ActivityThread.main(ActivityThread.java:7840)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at java.lang.reflect.Method.invoke(Native Method)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.android.internal.os.ExecInit.main(ExecInit.java:48)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:355)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: Caused by: com.google.android.gms.dynamite.DynamiteModule$LoadingException: No acceptable module found. Local version is 0 and remote version is 0.
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.google.android.gms.dynamite.DynamiteModule.load(Unknown Source:8)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	at com.google.android.gms.internal.cast.zze.zzf(Unknown Source:41)
11-14 15:54:55.422 24303 24303 E unknown:ReactNative: 	... 15 more

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.