Hirdetés
- Megjött a Cherry legfrissebb, taktilis karakterisztikájú kapcsolója
- 8 bővítőhelyes Jonsbo "akvárium", akár kábeleket rejtő alaplapokhoz is
- 4K felbontású, 240 Hz-es OLED monitorokkal köszönti az őszt a Lenovo
- Ismét egy teljesen friss egérrel gyarapította kínálatát a Pulsar
- Legalább 20 éves lemaradásban vannak a kínai litográfiai cégek?
- 3D nyomtatás
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- OLED TV topic
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Házimozi belépő szinten
- Ismét egy teljesen friss egérrel gyarapította kínálatát a Pulsar
- Most Kína tiltotta ki a nemrég exportengedélyt kapott AI gyorsítókat?
- Azonnali notebookos kérdések órája
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
Új hozzászólás Aktív témák
-
urandom0
senior tag
Sziasztok,
van esetleg valakinek tapasztalata abban, hogy egy JavaFX-et és/vagy Apache POI-t projekt mennyire problémásan futtatható Raspberry Pi-ról? -
urandom0
senior tag
válasz
Ablakos #12151 üzenetére
A resources mappának a classpath-ban kell lennie, különben a Javanak fogalma sem lesz róla, hogy hol keresse a fájlaidat.
Ha a resources mappát hozzáadtad a classpath-hoz, akkor így hivatkozz rá a fájlodra:URL fxmlUrl = this.getClass().getClassLoader().getResource("fxml/sayhello.fxml");
Elméletileg legalábbis...
-
urandom0
senior tag
válasz
lanszelot #12143 üzenetére
Ez az xml-es bohóckodást én is utáltam Androidban. Sőt, az igazat megvallva, az egész Android fejlesztést utáltam elejétől a végéit. Van egy cikk ebben a témában angolul, ezt szoktam ajánlgatni: https://rmirabelle.medium.com/the-android-sdk-is-the-worst-thing-on-earth-c3aaebbd2e6d
Százával vannak még hasonló írások: https://news.ycombinator.com/item?id=41062292
https://news.ycombinator.com/item?id=40742719Aki ezt az xml-es faszkodást kitalálta, annak remélem külön bugyra van a pokolban. Lehet egyébként procedurálisan is csinálni az egészet, de ahhoz közel nulla dokumentáció van.
Mondanám, hogy térj át inkább Kotlinra, és tanuld meg a Jetpack Compose-t, de csak akkor mondanám, ha rosszat akarnék neked (és ha nem tudnám, mi az a declarative UI nevű lázálom). Én azért hagytam abba az Android fejlesztést, mert egy tragédia az egész, elejétől a végéig.Csak egy dolgot mondok neked, ha egy framework doksijában olyanokat látsz, mint pl. hogy "less code", "intuitive", "it simplifies...", "makes it easy", akkor sovány vaddisznó vágtában menekülj onnan. Sőt, ha jót akarsz magadnak, a nagyvállalati cuccokat, úgy, ahogy vannak, kerüld el.
-
urandom0
senior tag
válasz
lanszelot #12138 üzenetére
Mindig tedd hozzá, hogy milyen platformon fejlesztesz, mert anélkül nem lehet pontos választ adni. Az Android processzkezelése egész más, mint mondjuk egy asztali Java alkalmazásé vagy egy Spring Boot appé, mert ugye Androidon intentekkel meg activitykkel kell játszani. Ott valami ilyesmi megoldást kell csinálnod (nem értek hozzá, én is csak úgy copyztam):
Context ctx = getApplicationContext();
PackageManager pm = ctx.getPackageManager();
Intent intent = pm.getLaunchIntentForPackage(ctx.getPackageName());
Intent mainIntent = Intent.makeRestartActivityTask(intent.getComponent());
ctx.startActivity(mainIntent);
Runtime.getRuntime().exit(0);Vagy ilyet:
public static void triggerRebirth(Context context, Intent nextIntent) {
Intent intent = new Intent(context, YourClass.class);
intent.addFlags(FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(KEY_RESTART_INTENT, nextIntent);
context.startActivity(intent);
if (context instanceof Activity) {
((Activity) context).finish();
}
Runtime.getRuntime().exit(0);
}De lényegében ez is arról szól, hogy új processzként elindítod saját magad, magadból pedig kilépsz, és az új processz pedig fut tovább.
-
urandom0
senior tag
válasz
lanszelot #12136 üzenetére
Android? Ha igen, akkor az Android topikban kellene feltenni a kérdést, mert ott más megoldás kell (újrahívni az intentet, vagy nem tudom, nem értek hozzá).
Ha asztali program, akkor több lehetőség is van, pl. ProcessBuilder-rel elindítasz egy új példányt a programodból, a jelenlegiből pedig kilépsz System.exit()-tel. Vagy a Runtime.getRuntime().exec() metódussal indítasz egy új példány, és kilépsz a jelenlegiből.
Vagy ha kicsit softosabb újraindítás kell, akkor csinálhatod azt, hogy a main() metóduson belül egy másik metódusba (pl. launch) rakod a programod lényegi részét, és ezt a metódust bármikor újra tudod hívni.
De végső soron visszaállíthatsz mindent alapra egy metódussal, de ezzel kapcsolatban nekem vannak kétségeim, elég könnyű hibázni, főleg, ha vannak statikus metódusaid is.Nyilván a konkrét megvalósítás erősen függ attól, hogy pontosan mit és hogyan csinál a programod.
-
urandom0
senior tag
válasz
lanszelot #12130 üzenetére
Ha itt is azt fogod csinálni, mint a PHP-s topikban, elég hamar kiidegeled a népet
Ezt figyelmesen, alaposan olvasd át:
https://developer.android.com/studio/debug/index.htmlSzerintem a Attach the debugger to a running app rész kell neked, ott csúszhatott el a dolog.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Olcsó Notebook! Dell Latitude E6540! I7 4600U / 8GB DDR3 / 128GB SSD! / HD8790M
- XBOX Series X + dokkoló // SZÁMLA // GARANCIA //
- Azonnali készpénzes nVidia RTX 5000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- ÁRGARANCIA!Épített KomPhone i5 14400F 32/64GB RAM RX 9060 XT 16GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 mini 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3139, 95% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest