RadarCOVID / radar-covid-android

Native Android app using DP^3T Android sdk to handle Exposure Notifications API from Google
Mozilla Public License 2.0
382 stars 84 forks source link

Unnecessary dependency on Google's API #28

Closed mpancorbo closed 3 years ago

mpancorbo commented 3 years ago

My SO is LineageOS based on AOSP. I can't run the app; it shows a banner "Es necesario disponer de una versión actualizada de Google Services".

This dependency is not needed and makes non-Google Android systems reject the app.

JuanjoSalvador commented 3 years ago

Why is not necessary?

I mean, I'm not sure, but I would say it really is. But we can use an opensource implementation instead of the official one, like MicroG.

AlvaroBrey commented 3 years ago

MicroG released a build supporting the Exposure Notification API literally 15 hours ago.

Until then, Google Services were absolutely critical for this app to function, so it makes sense it wouldn't work without them.

mpancorbo commented 3 years ago

MicroG can't be loaded as normal user app via app management programs (well, it can but it does not work). It need to be flashed instead of my actual LineageOS. In practise, it means I must change my OS. More details here.

I guess this is a matter of lazy programmer; you can build an equal purpose application without relaying on Google Services. I hope someone fork it with this issue on mind.

AlvaroBrey commented 3 years ago

@mpancorbo You are wrong. This is no "lazy programmer" issue, the Exposure Notification API is absolutely critical for this application to function.

First of all, making an in-house version of it to cater to the very small minority of people that don't use Google Services on Android would multiply the effort (and thus the time to develop) several magnitudes, which would be pretty unreasonable when it is a matter of public health.

More critically, there is also the fact that the Exposure Notification API was created for this exact purpose, and as such can avoid certain limitations that regular Android apps have (such as number of Bluetooth scans per minute), and ease other matters (like cross-compatibility with iOS). Which means, even if the effort to do this completely without said API was taken, it wouldn't be as effective.

I know MicroG has to be flashed separately, I've done it in the past (since LineageOS does not support signature spoofing). What I meant with my post was that, until 15 hours ago, there was no way to use the Exposure Notification API without Google Services. I hope this post conveys why said API is necessary.

mpancorbo commented 3 years ago

@alvarobrey Thanks for your effort to explain the matter. I'll take a deeper look on to it.

EchedelleLR commented 3 years ago

https://github.com/open-coronavirus/open-coronavirus#how-is-the-app-follow-the-spread-of-the-virus-based-on-the-bluetooth-low-energy already had its own implementation based directly on Bluetooth LE, with that link showing a note that, later, the Google API was released inspired on the same.

Maybe this could be useful as example.

JuanpaG94 commented 3 years ago

I think supporting Custom ROMS are not the way to go and they will never be supported on apps like this one(and any company with a famous app support them either).

mpancorbo commented 3 years ago

@JuanpaG94 The "point" is easy: the app should reach the highest possible number of users. As an AOSP user I can use hundreds of apps without problem, the same apps any Android user runs. So I want to use this one too, because I'm greatly concerned about stopping COVID19 disease.

But I can't use it because an execution error. So I understand I can report the error as an issue, can't I?

Naroh091 commented 3 years ago

I understand why you feel like you have to report this issue and, of course, that's your "right". But talking about "lazy programmers" after showing your ignorance related to the system in which the app is based on not just in Spain, but in many countries around the world... You should be ashamed of yourself. It's just baffling. Have some manners, man.

mpancorbo commented 3 years ago

@Naroh091 I feel you get offended because of my wording ("lazy"). Sorry, but English is not my mother language and perhaps my point was misunderstood; I meant that perhaps the project took the easy way.

I apologize.

cpascual commented 3 years ago

@alvarobrey said:

until 15 hours ago, there was no way to use the Exposure Notification API without Google Services. I hope this post conveys why said API is necessary.

Actually, at most, it helps understanding why Google's API was needed until 5 days (+ 15h) ago... but it certainly does not explain why it is necessary now.

In other words: will RadarCovid eventually ditch this (non-free) dependency ?

AlvaroBrey commented 3 years ago

@cpascual Not really. What microG does is substitute the Google Services at a system level. To an application (such as this one), nothing changes, it still depends on Google Services (even if they are actually implemented by microG).

JVAQUEROM commented 3 years ago

I just wanted to report that I can install Radar COVID in my MicroG device (with one of the latest MicroG versions). It is supposed to be working fine. Anyway, it would be great for MicroG users is at least an apk could be released, just to avoid accessing Google's Play Store to catch app. Thank you!

iCesofT commented 3 years ago

We are using Google Apple Exposure Notification (GAEN) API so application needs this API.

We close this issue as there is no issue.

cpascual commented 3 years ago

We close this issue as there is no issue.

Does that mean that we can use Radar-COVID without any non-free (as in freedom) dependency?

If that is not the case, I think there is an issue...

CristianGM commented 3 years ago

@cpascual with all my respect there is NO issue at all.

Stop and think for a moment.

Target of the app: track contacts between people at Spain

Assumptions:

Obvious solution: use Google and Apple services.

Your issue is? Ethics? That you are of the 3 nerds in Spain using Android without Google play services (so you cannot install 90% of the apps from the store)?

Try to remember what's the goal of the app.

Making it OpenSource allows people to find bugs or security issues, and as a side effect allows conspiranoics to see the government isn't try to spy you and control your mind though waves and vaccines with microchips.

cpascual commented 3 years ago

@CristianGM "with all my respect" , my ass.

Independently of percentages, it is a legit thing to ask that a code that we all pay does not force us to install non-free dependencies, specially when there is a free alternative. It'd be ok if the answer was "this is an issue that is low on our priority list because of small incidence". But closing with "no issue" is disrespectful.

PS: I do think before talking. And one of the things I think is that you are being a condescending prick

JuanpaG94 commented 3 years ago

Well, this is enough guys. Custom ROMs will never be supported by official institutions on any country, so stop.

GitHub is not a playground where you can say anything and be completely disrespectul with insults, etc.

Please @iCesofT block this issue from being replied by people who is not a collaborator.

iCesofT commented 3 years ago

Full agree with @JuanpaG94 .