Domenico Iezzi
6f5565bdef
Some improvements to code
...
- Remove unstable userProfile API
- Changed names for some variables
- Disabled print calls. Loggin is now entirely up to the user.
- Implemented device config token, retrieved after the `uploadDevice`
procedure
- Updated headers from play-store-api project
- Fixed initialization for obb_download_test.py
2018-02-03 14:30:21 +01:00
Domenico Iezzi
3d1f4fe56d
Removed unstable userProfile from test
2018-02-01 12:15:32 +01:00
Domenico Iezzi
d984a92dc7
Added log function
...
This function is needed by the purchase API to insert app into user's
library. Without this, new apps won't be downloaded
2018-02-01 11:53:16 +01:00
Domenico Iezzi
7f0fad78ef
Added functions to change locale
...
Locale and Timezone can be changed even during a session, and results
will change accordingly
2018-01-27 19:42:36 +01:00
Domenico Iezzi
0a13755ff9
_delivery_data returns more information
2018-01-27 18:39:40 +01:00
Domenico Iezzi
23937e6cb8
Improved file delivery + minor changes
...
* Updated user agent string with data taken from play-store-api
* *download* and *delivery* functions will now return a python generator
rather than raw bytes, to prevent app loading entire files in memory.
This generator can be iterated to get chunk of bytes to write, as
discussed in issue #35 .
* as a consequence of the previous point, there is no more progress bar
feature for downloading. It should be implemented by developers using
the API.
2018-01-26 18:24:19 +01:00
Domenico Iezzi
149707caab
Updated test.py with timezone
2018-01-25 11:41:07 +01:00
Domenico Iezzi
24a3e1a09b
Changed Locale and TimeZone initialization
...
Before, if locale wasn't specified as a parameter, it was picked from
the system running gpapi. Similar thing happened for timezone, but its
value was hardcoded in config.py.
To avoid problems related to missing or unavailable apps, this commit
enforces users to provide a locale and a timezone value. Without them,
gpapi can't be initialized.
2018-01-25 11:36:25 +01:00
Domenico Iezzi
df4300c7df
Added userProfile case to test.py
2017-12-09 11:39:10 +01:00
Domenico Iezzi
e9e866da97
Try to avoid python2 travis build error
2017-12-09 11:01:03 +01:00
Domenico Iezzi
693ae8348f
Take latest apk if not version specified
...
If no *versionCode* parameter is specified to *download* or *delivery*
methods, fetch the latest one with a simple `self.details(pkgName)`
2017-11-09 12:25:39 +01:00
Domenico Iezzi
25bfb4aaec
bulkDetails: handle case when app doesn't exist
...
Now the function returns None if an app doesnt't exists. This does not
apply for details() function, which instead return a RequestError if the
app doesn't exist.
2017-11-02 17:34:49 +01:00
Domenico Iezzi
3733ca8d2c
Trying to address python2 build error
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-18 00:18:29 +02:00
Domenico Iezzi
a77b362397
Remove email and password from test files
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-17 17:58:24 +02:00
Domenico Iezzi
b3f28cb0c4
Download optional expansion files (obb files)
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-17 11:41:39 +02:00
Domenico Iezzi
b6e3474a79
test.py: download telegram rather than termux
...
since telegram is supported by far more devices than termux
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-13 18:18:22 +02:00
Domenico Iezzi
0cda029a52
improved review() response + added in test.py
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-08 21:25:04 +02:00
Domenico Iezzi
052afcbb0b
details() now return a dict, rather than pb object
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-08 19:50:29 +02:00
Domenico Iezzi
cb2dc79344
test.py: fixed wrong method + added progressbar
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-07 19:22:55 +02:00
Domenico Iezzi
ed0c926dc5
Fix #8
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-07 18:21:05 +02:00
Domenico Iezzi
cfc2de89ce
Fixed browse() and list() functions + update test
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-06 11:53:53 +02:00
Domenico Iezzi
cf05125cb8
Added .gitignore
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-06 09:39:28 +02:00
Domenico Iezzi
63c011a521
Try to fix travis build pt.4
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-05 22:24:04 +02:00
Domenico Iezzi
4d51d607ce
Try to fix travis build pt.3
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-05 22:17:19 +02:00
Domenico Iezzi
fdb0d7e999
Try to fix travis build pt.2
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-05 22:08:45 +02:00
Domenico Iezzi
9531501983
Try to fix travis build error
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-05 22:04:29 +02:00
Domenico Iezzi
a79c1556ab
Fixed and improved browse() function
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-05 21:51:43 +02:00
Domenico Iezzi
73081ee57a
Fix #7
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-05 20:39:24 +02:00
Domenico Iezzi
2276f8db2c
Changed login() behaviour
...
Previously, the ac2dm was meant to be saved in the application state, and later used for
subsequent logins, along with the gsfId. This is not correct, because the app needs it
only for the first login, and then remains unused in the application state.
The correct behaviour is to save the gsfId and the authSubToken, and provide only these two
values for subsequent logins
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-10-04 11:32:56 +02:00
Domenico Iezzi
1739425d35
Added setup.py + changes to the lib structure
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-21 11:19:48 +02:00
Domenico Iezzi
7a95e552e7
Fix test build with a dummy account
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-19 17:52:29 +02:00
Domenico Iezzi
1cd3b7598b
Added exception handling in test file
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-18 16:06:57 +02:00
Domenico Iezzi
171faefc60
Updated test script
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-18 15:52:49 +02:00
Domenico Iezzi
e987322629
Small fixes and cleanup
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-17 12:29:42 +02:00
Domenico Iezzi
2a8ec84fc7
A more detailed test.py
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-16 19:13:01 +02:00
Domenico Iezzi
361a5777e4
Implemented new Download API
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-16 14:57:21 +02:00
Domenico Iezzi
2f68991ad1
New search implementation (protbuf + code)
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-16 13:17:21 +02:00
Domenico Iezzi
b2e71522ae
Small typo
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-15 22:13:07 +02:00
Domenico Iezzi
31d96764b6
Implemented ac2dm login
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-15 22:11:44 +02:00
Domenico Iezzi
e32c22a467
Fixed import statements + testbench
...
Signed-off-by: Domenico Iezzi <domenico.iezzi.201@gmail.com>
2017-09-05 22:28:06 +02:00