- LG LCD és LED TV-k
- Windowsos tablet topic
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Computex 2024: feltárta a Lunar Lake-et az Intel
- Szünetmentes tápegységek (UPS)
- TCL LCD és LED TV-k
- Azonnali informatikai kérdések órája
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Azonnali notebookos kérdések órája
Hirdetés
-
Computex 2024: monstrumhűtő a DeepCoolnál (videóval!)
ph Az Assassin IV széria legújabb verziója egy vapor chamber talpat kapott, így már 300 wattig használható.
-
Pénzt akar a WhatsAppból a Meta, az AI majd segít
it Új AI-eszközöket kapnak a cégnek, a Meta célja, hogy több bevételt szedjen ki a WhatsAppból.
-
AMD Radeon undervolt/overclock
lo Minden egy hideg, téli estén kezdődött, mikor rájöttem, hogy már kicsit kevés az RTX2060...
Új hozzászólás Aktív témák
-
joysefke
veterán
Xamarin.Forms - GooglePlay
Help kéne, sok időt beleöltem, nem boldogulok...
-(0)
Van egy Xamarin.Forms(Android) hobbiprojektem. Ez a projekt tartalmaz egy általam írt komponenst "YtExplodeVideoService" néven amely a YoutubeExplode nevű 3rd party NuGet parser libre épít. A YoutubeExplode működése okán nem GPlay policy kompatibilis, ennek megfelelően a "YtExplodeVideoService" komponens sem az.A XF projekt shared része egyetlen projektben, egyetlen assembyben van, ez tartalmazza az általam írt kód 99%-át.
Eddig minden szép és jó és működik is.
Most szeretném, ha fel tudnám rakni az appot a GPlay-re is, anélkül, hogy terminálnának engem, a családomat, a macskámat meg úgy mindenkit akihez közöm van.
Amit eddig csináltam:
-(1)
A "YtExplodeVideoService" mellé készítettem egy azzal interfész-kompatibilis komponenst "VanillaYtVideoService" néven. Ez megfelel a GPlay feltételeinek, ennek a használatáért nem fognak kivágni.-(2)
Készítettem az eddigi (ad hoc) Release solution-konfiguráció mellé egy GooglePlayRelease solution- konfigurációt. Ahol is a shared project konfigja tartalmaz egy compilation változót, ami megjelöli mint GPlay release.A videokomponens példányosításakor ellenőrzöm a változó értékét és annak függvényében választom ki a konkrét implementációt:
#if GOOGLEPLAY
VideoService = new VanillaYtVideoService(Settings, CachedSearchClient);
#else
VideoService = new YtExplodeVideoService(httpClient, Settings, CachedSearchClient);
#endifEz eddig szépen működik. ILSpy-jal belenézve a különböző build konfigurációkkal készített assemblikbe szépen látszik, hogy mindig a megfelelő komponens példányosodik.
A probléma:
Szeretném elérni, hogy
1, az elkészült GPlay-re szánt APK-ban, semmi esetre se legyen benne a YoutubeExplode.dll assembly, jelenleg, ha az APK-t kizippelem, akkor szépen ott van. Nem értem, hogy mit keres egyáltalán ott...2, A shared projektem assemblyjébe ha ILSpy-jal belenézek, akkor a references listában szépen látom a YoutubeExplode nevet. Ezt sem szeretném.
Szeretném, ha az elkészült projekt-assemblyben majd a végső APK-ban semmiféle ráutaló nyom nem lenne a YoutubeExplode-ra. Nem hiszem, hogy ez nagy kérés lenne, hiszen nem is használom a GPLay-re szánt releaseben.
És szeretnék biztosra menni, minél kevesebb mókolással.
3, Hogyan tudom biztosan ellenőrizni azt ami felkerül, hogy mindenben megfelelő?
Amivel eddig próbálkoztam:
1, A Linking opció Sdk Assemblies Only-ra van állítva. Ha egyel erősebbre rakom, akkor runtime hibáim vannak. (Első körben a Newtonsoft.Json-nal ütközik, de ha ezt kiküszöbölném lenne más)
Ha lehetséges nem bántanám ezt a beállítást, mert nem értek a linker konfigurálásához és félek, hogy olyan helyeken hozna be runtime hibákat, ahol nem is számítok rá.
2,
Játszottam a "Code shrinker" beállításokkal, nincs változás.3,
Próbálkoztam az ingyenes "Dotfuscator Community"-vel. Ez átnevezi a függvények paramétereit, de pld az assembliket magukat nem.4, Nekiálltam a YtExplodeVideoService-t kiszervezni egy külön assemblybe, de ezt elvetettem, ha csak egy mód van rá, nem szeretném szétbarmolni "Az Egy Assemblyt". (eleve legalább három felé kéne essen, ahol a harmadik, közös assemblybe mindenféle interfészeket, modelleket ki kéne szerveznem ÉS a hálózatos kódot)
[ Szerkesztve ]
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen