Comments (10)
Jednak instalacja się nie powiodła. Czy masz może pomysł czemu?
zapomniałeś o ostatnim kroku chyba? pm install-commit
?
from fix-ingmobile-on-huawei.
Skoro masz ADB na sailfishu (i zgaduję, że również pythona, bo to chyba dość zwyczajna dystrybucja linuksa z tego punktu widzenia), to podejrzewam, że odpalenie mojego skryptu na telefonie po prostu zadziała :) jak nie, pisz co się nie powiodło.
from fix-ingmobile-on-huawei.
Nie mam komendy adb na sailfishu, mam dostęp do komend ADB z poziomu Androida, albo mogę wykonać lxc-attach -n aliendalvik /system/bin/sh
gdzie z poziomu sailfisha łączę się z terminalem kontenera i mogę wykonywać komendy adb.
Ale skrypt który polega na pakiecie ADB nie zadziała.
from fix-ingmobile-on-huawei.
https://github.com/enedil/fix-ingmobile-on-huawei/tree/no-adb
sprawdzisz proszę?
aby to uruchomić będziesz musiał zrobić
ING_STANDALONE=yes python3 ./fix_ing.py
from fix-ingmobile-on-huawei.
Dzięki wielkie, ale nie zadziałało.
Traceback (most recent call last):
File "./fix_ing.py", line 55, in <module>
main()
File "./fix_ing.py", line 34, in main
out = pm("path", ing_package)
File "./fix_ing.py", line 21, in pm
return shell("pm", *args)
File "./fix_ing.py", line 18, in shell
return subprocess.check_output(prefix + list(args)).decode()
File "/usr/lib64/python3.8/subprocess.py", line 415, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "/usr/lib64/python3.8/subprocess.py", line 493, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib64/python3.8/subprocess.py", line 858, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib64/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'pm'
Ja muszę wykonać komendy będąc w kontenerze, jak wykonam spoza to cała struktura plików jest inna. A w kontenerze nie mam pythona, bo to jakby zwykły Android.
from fix-ingmobile-on-huawei.
A jak zastąpisz w skrypcie ["adb", "shell"]
na ["lxc-attach", "-n", "aliendalvik"]
? I wtedy uruchom bez tej zmiennej środowiskowej
from fix-ingmobile-on-huawei.
Niestety to też nie zadziałało, może mógłbym poszukać jak wywoływać komendy w ten sposób w lxc...
Zamiast tego ręcznie uruchamiałem linijka po linijce komendy w ADB oraz w Pythonie i udało mi się wykonać skrypt od początku do końca.
Jednak instalacja się nie powiodła. Czy masz może pomysł czemu?
# pm path pl.ing.mojeing
package:/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/base.apk
package:/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.arm64_v8a.apk
package:/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.xxhdpi.apk
# cp /data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/base.apk /data/local/tmp/ing_0.apk
# cp /data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.arm64_v8a.apk /data/local/tmp/ing_1.apk
# cp /data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.xxhdpi.apk ^C
# cp /data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.xxhdpi.apk /data/local/tmp/ing_2.apk
# pm uninstall pl.ing.mojeing
Success
# pm install-create -S 122567816 -i com.android.vending
Success: created install session [974562065]
# stat -c %s /data/local/tmp/ing_0.apk
29988006
# pm install-write -S 29988006 974562065 1 /data/local/tmp/ing_0.apk
Success: streamed 29988006 bytes
# stat -c %s /data/local/tmp/ing_1.apk
91649446
# pm install-write -S 91649446 974562065 1 /data/local/tmp/ing_1.apk
Success: streamed 91649446 bytes
# stat -c %s /data/local/tmp/ing_2.apk
930364
# pm install-write -S 930364 974562065 1 /data/local/tmp/ing_2.apk
Success: streamed 930364 bytes
>>> out = """package:/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/base.apk
... package:/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.arm64_v8a.apk
... package:/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.xxhdpi.apk"""
>>> apks = [x.split(":")[1] for x in out.splitlines()]
>>> copied_names = [f"ing_{i}.apk" for i in range(len(apks))]
>>> print(copied_names)
['ing_0.apk', 'ing_1.apk', 'ing_2.apk']
>>> print(apks)
['/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/base.apk', '/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.arm64_v8a.apk', '/data/app/pl.ing.mojeing--uTR-xihIYXlxLgTaMEQbw==/split_config.xxhdpi.apk']
>>> str(len(apks))
'3'
>>> print(installation_id)
974562065
from fix-ingmobile-on-huawei.
Dziękuję za pomoc, nie ma chyba sensu byś szukał rozwiązania na mój bardzo niszowy problem.
A później spróbuję poczytać jak wykonywać komendy w kontenerze spoza kontenera, by móc użyć twojego skryptu bez większych modyfikacji.
from fix-ingmobile-on-huawei.
Aplikacja działa, dziękuję za fantastyczny skrypt!
from fix-ingmobile-on-huawei.
Większość modyfikacji z tamtej gałęzi wrzuciłem na mastera, będziesz mógł prosto dla siebie dostosować.
from fix-ingmobile-on-huawei.
Related Issues (2)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fix-ingmobile-on-huawei.