Git Product home page Git Product logo

apps's People

Contributors

dependabot[bot] avatar empratyush avatar flash1232 avatar girlbossceo avatar jorgeluiscarrillo avatar lberrymage avatar muhomorr avatar octocorvus avatar patrykmis avatar quh4gko8 avatar randomhydrosol avatar sivansundar avatar thestinger 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  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  avatar  avatar  avatar  avatar  avatar

apps's Issues

Available Update Notification

When the automatic 'Check for Updates' has found an available update, notification is displayed. When the notification is swiped to dismiss the notification will reappear within minutes (repeatedly) to advise of the same update.

Repositories

Please add the ability to host your own repository and be able to add/remove repositories in the settings. Similar to F-Droid and other Linux distros like Debian and Ubuntu.

Auto update of libraries

I got this error message without doing anything.
Im nit sure it is related to auto updates only...
Is there a grapheneos forum with technical questions like this if hère is not appropriate?

Unable to install Vanadium, Trichrome Library, Vanadium System WebView.

Details:
INSTALL_FAILED_SESSION_INVALID: Not allowed to update system package to the same versionCode

Bug - 'Apps' (cube icon) throwing an error (Java) or 'Apps isn't working'

Bug

Severity - High
Urgency - Low/Medium (depends if others can reproduce it or what's the latest version of 'Apps')

Environment:
Google Pixel 6a

Steps:
GIVEN I have updated to the latest GrapheneOS version
AND I have opened either Owner profile on GrapheneOS
OR I have opened a Profile with Google Play ect... installed
WHEN I select the 'Apps' icon (cube shaped icon)
THEN I see an error
like: 'App isn't working'

Other
GIVEN I have opened either default profile on GrapheneOS
AND I select Settings
WHEN I select 'Apps'
THEN I see Installed version 14

On 7/02/2023 I had 'Apps' throw a java error but I didn't screenshot it sadly.
Workaround:
On 08/02/2023, I disabled the 'Apps' and now have enabled it and added it to the home screen via settings, it now shows no errors.

Just would like to know what's the latest version to avoid this being some security issue?

Add ability to hide GSF apps in App store app

It would be useful to be able to hide GSF components so that I don't inadvertantly install them in my main profile.

This would be a large convenience for me and improve usability of the app store app.

I also have kids with GrapheneOS devices and it would be useful to be able to do this on their devices as they aren't yet able to fully understand why we don't have it loaded in their main profile.

Allow Play services to be updated without depending on Play Store

Now that Play services and Play Store depend on each other:

  1. If Play Store is installed but disabled, Play services can no longer be updated without re-enabling Play Store
  2. If Play services & Play Store have updates available, choosing to only update Play services will also update Play Store

This seems like an oversight since you can have Play services on alpha channel and Play Store on stable and Play services can be updated anyways. While I understand having Play Store disabled is not the recommended way of running sandboxed Google Play, it has always worked fine for the apps and services I use that require Play. Therefore, I don't think it is necessary to have this restriction.

[Feat] Skip / exclude / blacklist an app

Feature would be useful especially on devices with Lineage with MicroG installed where GMS is constantly trying to update.

The only option to avoid it is to disable autoupdate for all included applications (globally in App's settings) and updating them manually.

Suggestion regarding 'Apps' icon

the current 'Apps' app icon is nice but it will look much better if it has thin border lines compared to the current one. I am suggesting this because Auditor app has very thin border lines compared to 'Apps' app and it looks like they are from different devs/community.

Add support for major Android version streams

Apps such as GSF have distinct versions for each major Android version. Support multiple streams (e.g Android 12 and Android 13) to make sure apps like GSF get properly updated.

Installing Play Services after uninstall from Play Store version gives "Installation Failed" / "The app is corrupt" message with multi user setup

Just came across this after the latest Play Services update delivered by Play Store.

Reproduce by:

Have multiple users
Update Play services with Play Store
Uninstall Play services with Apps
Install Play Services with Apps

Result: "The app is corrupt" message

I think the reason might be that Play Services is only uninstalled in current user profile.

Workaround: Uninstall Play Services in all profiles.

Suggested fix: Uninstall should either suggest uninstalling in all profiles or install should detect profiles' installed Play Services, maybe?

Thanks

Ability to not update disabled apps

It would be great if there was an option to tell the updater to not update certain apps.
This is useful when you have disabled apps, because disabled apps get reenabled if you update them.

If there is a way to detect if an app is disabled, it would be even better if the updater could use that information to ignore disabled apps.

I for example prefer to use the google camera instead of the graphene one. So I disabled the graphene camera to keep it "bloat free". But now the app updater insists on updating the app, and therefore reenabling it.

"Missing dependency" error on trying to update disabled Google Play

Now with #266 closed (thank you!) I tried out the brand new Apps alpha v18. (Before updating the Apps client, Google Services Framework was installed and up to date, and both Google Play Store and Google Play services were installed and outdated. All three components were disabled in the Owner profile.)

After launching the updated Apps client in the Owner profile client it shows an error popup:

"Missing dependency
Google Play services depends on Google Services Framework, which is disabled.
[Dismiss]"

Dismissing this error shows it again once more. (The UI is a bit confusing here because it doesn't look like two popups, it looks like one popup where Dismiss has to be pressed twice without visual feedback on the first press.) The same error is also shown once if I manually try to update either of the two outdated components. They are not updated. Clearing storage for Apps did not help.

App update not syncing with Google Play Store

GIVEN I have enabled 'silent' System Updates in Owner Profile
AND I have installed a new profile with Google Play and Google Play Services (Sandboxed)
WHEN see 'Apps are up-to-date' as a silent notification
AND I check the Google Play Store updates
THEN I see that App updates can be installed/and are not up to date

Expected:
The app update and google play need to sync
As in you can just have the google play store automatically update
Is the notification just for the GrapheneOS apps?
Is there a way to automatically update the apps via Google Apps Sandboxed?

Provide secure delivery method for attachments

Beta tags in Apps changing position

Open the Apps updater.
Set everything to beta.
Tap on GrapheneOs build, Google Mirror, Updates and Apps.
Please see screen recording

recording_20220920_222158.mp4

Update status notification frequency

Apps creates notification "Apps are already fully up-to-date" frequently, without respect to the 'check for updates' frequency specified in the app (approx every 2-3 hours). Assume app is also checking for updates at this frequency.

An app that is disabled cannot be updated (for the benefit of other user profiles)

If an app is disabled in the user profile where Apps is running, it will not be updated.

But consider e.g. the use case of having the always running Owner profile with disabled Play apps automatically apply global updates - so that when you occasionally unlock a secondary user profile with Play apps enabled, they will already be up-to-date. (Currently, the secondary user profile would start with outdated versions. Updating them might then require a download of hundreds of megabytes at an inconvenient time.)

Remove Google services from app store

Hello, first off I apologize if this is not the right place to ask this, I am unsure how to just ask a question, or if I should actually post an issue for this. I am newer to github and not a developer...

My question, is there a way to remove the option to install google services, play store and framework etc from "apps" application on GraphenOS? I installed GrapheneOS on my kids phone and would like for them not to have the option at all to install any google services etc. Thank you in advance and again apologies if this is the wrong way to ask this question.

Use version numbers instead of version codes for app listings

The current version of Apps uses the version codes of the respective apps in the 'Installed' and 'Latest' strings instead of the version numbers. While this works for GrapheneOS-developed apps (as their version numbers and codes are identical), it becomes confusing when third-party apps (e.g. Google services) are introduced into the mix, and will be even more so once the repository starts adding other apps. Therefore, I think version numbers should be used in the app listings instead of version codes.

Ability to cancel downloading apps

In such cases where the user may accidentally download an app, they need to be able to cancel it. This is extremely necessary in situations where they're on limited/metred data and Play Store + GMS + GSF is about ~150MB+ which is a lot of bandwidth.

Just had this where I'm on limited 5GB data and accidentally downloaded all 3 apps and couldn't cancel it.

Apps not automatically updating on Google Play, Profile

GIVEN I have enabled 'silent' System Updates in Owner Profile
AND I have installed a new profile with Google Play and Google Play Services (Sandboxed)
WHEN see 'Apps are up-to-date' as a silent notification
AND I check the Google Play Store updates
THEN I see that App updates can be installed/and are not up to date

Expected:
The app update and google play need to sync
As in you can just have the google play store automatically update
Is the notification just for the GrapheneOS apps?
Is there a way to automatically update the apps via Google Apps Sandboxed?

Provide secure delivery method for attachments
@thestinger If this is completely not possible, perhaps add a wiki on how to automatically ensure the 'google play' apps are kept up to date

"Software caused connection abort"

Crash occurred once after initial boot and unlock, connection check disabled in the system. Unfortunately, cannot reproduce this :( but hope it will be helpful during further development.

type: crash
osVersion: google/flame/flame:13/TP1A.221005.002/2022111000:user/release-keys
package: app.grapheneos.apps:7
process: app.grapheneos.apps

java.net.SocketException: Software caused connection abort
	at java.net.SocketInputStream.socketRead0(Native Method)
	at java.net.SocketInputStream.socketRead(SocketInputStream.java:118)
	at java.net.SocketInputStream.read(SocketInputStream.java:173)
	at java.net.SocketInputStream.read(SocketInputStream.java:143)
	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readFromSocket(ConscryptEngineSocket.java:945)
	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:909)
	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:824)
	at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:797)
	at com.android.okhttp.okio.Okio$2.read(Okio.java:138)
	at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213)
	at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:307)
	at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:301)
	at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:197)
	at com.android.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:188)
	at com.android.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:129)
	at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:750)
	at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622)
	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475)
	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411)
	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getHeaders(HttpURLConnectionImpl.java:167)
	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getHeaderField(HttpURLConnectionImpl.java:211)
	at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getHeaderField(DelegatingHttpsURLConnection.java:191)
	at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getHeaderField(HttpsURLConnectionImpl.java:30)
	at o4.e.c(SourceFile:17)
	at o4.e.b(Unknown Source:41)
	at org.grapheneos.apps.client.App.b(SourceFile:1)
	at a4.t.j(Unknown Source:70)
	at y2.a.b(Unknown Source:7)
	at m3.h0.run(Unknown Source:102)
	at r3.d.run(Unknown Source:11)
	at t3.j.run(Unknown Source:2)
	at t3.a.run(SourceFile:10)
	Suppressed: m3.f0: [p1{Cancelling}@b7b169c, Dispatchers.IO]

Hide keyboard when user presses enter in the search bar

Many Android apps (including system) follow this behaviour. Part of this is solved by #185 which adds proper IME action. After that is merged, all we have to do is remove focus from the search input field and hide the keyboard when user triggers the search IME action.

Hide "Reinstall" button when installed version is newer

Example: Google Play Store updates itself to a newer version that that listed in the app. Because of this, it is listed with a "Reinstall" button, as if an update was available, when in fact the version installed is newer and should not be reinstalled.

Alternative options:

  • Remove or disable the button, to show that no action is needed.
  • Show an "Open" button, as with other installed apps, but show an icon next to it (i.e. exclamation).

In either case, opening app details can show that a newer version installed than what the app offers, without giving the impression up-front that the app should be reinstalled.

Feature request : Support for third party repositories

I am not sure this is something which GOS is interested in doing but it will be nice to have an option to add third party repositories to the Apps, so that users who want to add third party repositories like Newpipe, Molly etc can be added to the apps and can install the app directly from there. This eliminate the use of app store like Droid-ify.

Google Play Services download corrupt

Been trying to get Google Play Services installed but the download reaches ~40% of the 105mb file, the download bar skips to 100% and attempts to install the package. Failure message is: "app is corrupt, cannot be installed." Have tried reinstalling Apps apk, uninstalling Play Store and Google Services Framework to no avail.

Pull to refresh metadata

Would be an easier method of refreshing the data and checking for updates, rather than having to close and re-open the app every time.

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.