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

I could compile my app, now I can not #66

Closed
AlejandroPG10 opened this issue May 21, 2023 · 4 comments
Closed

I could compile my app, now I can not #66

AlejandroPG10 opened this issue May 21, 2023 · 4 comments

Comments

@AlejandroPG10
Copy link

Hi,
I have my developed app with kivymd in which I used to use pyrebase4.

I could compile my apk with buildozer without any kind of problem.
Suddenly, one week ago I realized that now I can not. The apk crashes in android device.
I'm using the same files and the same buildozer.spec that I used when there was not any porblem with this.

I've been reading a lot during last days about all the problems with pyrebase.

My doubt is:
With the same requirements that I was using:

requirements = python3,kivy==2.1.0,kivymd==1.1.1,kivygradient,mapview,pyrebase,geocoder,email-validator,requests,urllib3,chardet,idna,ratelim,decorator,click,dnspython,pillow,oauth2client,httplib2,pyparsing,pyasn1,pyasn1_modules,virtualenv,six,sh,rsa,requests-toolbelt,python-jwt,pygments,pycryptodome,ptyprocess,protobuf,platformdirs,pexpect,kivy-garden.mapview,kivy-garden,jws,googleapis-common-protos,gcloud,future,filelock,docutils,distlib,backports.entry-points-selectable,jwcrypto,cryptography,Deprecated,wrapt

It is possible to edit something or to do something different to be able again for compiling the apk?
I've read about the new version pyrebase 4.7.0. Could I solve it if I install the new one on my pc?
Should I change something different?

Any help, please?

Thank you in advance.

@AG-IT-Solutions
Copy link

Check this solution, maybe that's your issue, too: https://stackoverflow.com/questions/76208396/pyrebase4-error-cannot-import-name-gaecontrib

Here are more infos on the issue: requests/toolbelt#361

@AlejandroPG10
Copy link
Author

Check this solution, maybe that's your issue, too: https://stackoverflow.com/questions/76208396/pyrebase4-error-cannot-import-name-gaecontrib

Here are more infos on the issue: requests/toolbelt#361

I tried by changing the version of request-toolbelt on my buildozer.spec and it didn't work.
Is it necessary to install it on my PC too?

I don't know what to do in order to be able to compile again the apk

@AlejandroPG10
Copy link
Author

I've recently read that the problem that we had with pyrebase4 and requests is now solved with the last update (4.7.1).

On my computer my app is working.

Can anybody tell me wich requirements should I use now for this?

import pyrebase
from kivymd.app import MDApp
class MyFireBase():
def init(self):
self.logged_mail = None
def login_app(self, mail, password):
config = {
"apiKey": "",
"authDomain": "",
"databaseURL": "",
"storageBucket": "
*"}
firebase = pyrebase.initialize_app(config)
db = firebase.database()
users = db.child("Accesos").get()
for user in users.each():
if str(user.val()["password"]) == password and str(user.val()["mail"]) == mail:
self.logged_mail = mail #Guardamos el mail que ha entrado
MDApp.get_running_app().change_screen("home_screen")
break
else:
MDApp.get_running_app().root.ids['login_screen'].ids['invalid'].text = 'Incorrect user or password'

Normally I used to use this ones:
requirements = python3,kivy==2.1.0,kivymd==1.1.1,kivygradient,mapview,pyrebase,geocoder,email-validator,requests,urllib3,chardet,idna,ratelim,decorator,click,dnspython,pillow,oauth2client,httplib2,pyparsing,pyasn1,pyasn1_modules,virtualenv,six,sh,rsa,requests-toolbelt,python-jwt,pygments,pycryptodome,ptyprocess,protobuf,platformdirs,pexpect,kivy-garden.mapview,kivy-garden,jws,googleapis-common-protos,gcloud,future,filelock,docutils,distlib,backports.entry-points-selectable,jwcrypto,cryptography,Deprecated,wrapt

But now they still don't work.

Regards,
Alejandro

@AlejandroPG10
Copy link
Author

Finally I could compile my apk and it is working.
After pyrebase 4.7.1 I tried to check all dependencies of it by using pipdeptree -p pyrebase (pip3 install pipdeptree to install it).
By reading some issues related to this problem, I've realized that I had to specify the version of "requests-toolbelt" , "requests" and "urllib3" on the requirements of buildozer.spec. (Even if you're using pyrebase 4.7.1).

I'm going to share my requirements for anybody who ever needs them.

My app is working on andorid by using this:

requirements = python3,kivy==2.2.0,kivymd==1.1.1,kivygradient,pyrebase,gcloud,googleapis-common-protos,protobuf,httplib2,pyparsing,oauth2client,pyasn1,pyasn1-modules,rsa,six,pycryptodome,python-jwt,jwcrypto,cryptography,pycparser,pillow,Deprecated,wrapt,requests==2.29.0,certifi,charset-normalizer,idna,urllib3==1.26.15,requests-toolbelt==0.10.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants