- One mobilszolgáltatások
- Mobil flották
- Okosóra és okoskiegészítő topik
- Vivo X200 Pro - a kétszázát!
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Milyen GPS-t vegyek?
- Megjelent a Poco F7, eurós ára is van már
- CMF Buds Pro 2 - feltekerheted a hangerőt
- Apple iPhone 16 Pro - rutinvizsga
- Apple iPhone 15 Pro Max - Attack on Titan
Új hozzászólás Aktív témák
-
bandi0000
nagyúr
válasz
[KgP].Robot #5248 üzenetére
Igen úgy értettem, de gondolom most tanulja, és ha új projektet hoz létre, akkor az alapból debugba fog futni, hacsak nem állítja át nem?
-
thiclyoon
aktív tag
válasz
[KgP].Robot #5229 üzenetére
És a telefonban kell legyen sim kártya is (redmi note 4 tapasztalat)
-
bandi0000
nagyúr
válasz
[KgP].Robot #5211 üzenetére
Szia
Nekem pont most lenne hasonló feladat, de inkább felajánlottam az ügyfélnek, hogy használja az alapértelmezett email klienst
Küldesz neki egy intentet, amibe elvileg(bár csak felületesen néztem), de meg lehet adni csatolmánytól kezdve mindent, és elméletileg neki csak rá kell nyomnia a küldés gombra
-
djnice
veterán
válasz
[KgP].Robot #4861 üzenetére
Köszi, itt nincs API, Jsoup-pal szedem le és parse-olom a html forrást.
-
thon73
tag
válasz
[KgP].Robot #4828 üzenetére
Hű, ez fontos. Ez biztos, hogy így van? Akkor bizonyos gépeken nem futnak el a több ujjas programok? Játékok sem? Az OS kikapcsolást sem lehet vhogy a programból megoldani? Nekem az lenne logikus, hogy azt kapja meg a rendszer, amit a program nem dolgoz fel - ezek szerint nem így van.
-
thon73
tag
válasz
[KgP].Robot #4820 üzenetére
Ha küldesz kódot, megpróbálok segíteni. Van programom, ami most is multitouch-ot használ. Ez egy korábbi próba, ami jól működött; point rész értelemszerűen cserélendő.
switch (event.getActionMasked())
{
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
int historySize = event.getHistorySize();
int pointerCount = event.getPointerCount();
Log.i("MULTI", "Poi: " + pointerCount + " His: " + historySize);
for (int p = 0; p < pointerCount; p++)
{
for (int h = 0; h < historySize; h++)
{
Point point = new Point();
point.x = event.getHistoricalX( p, h );
point.y = event.getHistoricalY( p, h );
point.press = event.getHistoricalPressure( p, h );
point.type = 0;
points.add( point );
}
Point point = new Point();
point.x = event.getX( p );
point.y = event.getY( p );
point.press = event.getPressure( p );
point.type = 1;
points.add( point );
}
this.invalidate();
break;
} -
Zalanius
tag
válasz
[KgP].Robot #4731 üzenetére
Még az L időkben írtam ilyet, az apache.http.* modulokkal nem is kellett újra feltalálni a meleg vizet, ott volt minden kulcsrakészen. Nagy vonalakban: kellett egy HttpProcessor, HttpService, HttpContext meg egy ServerSocket. Aztán a bejövő requesteket egy runnable és néhány HttpRequestHandler segítségével feldolgozzuk, HttpResponse-ban válaszolunk, kész. És persze az egészet egy Service-ben érdemes valamilyen .start() és .stop() kezelés mögé tenni.
A régi dokumentációkban mindegyik osztályhoz volt annyi favágós és tutorialos kód, amiből az egész összerakható, de mivel 22-es API-tól kezdve ez az egész deprecated lett mindenestül, inkább OFF-ba tettem.
-
Zalanius
tag
válasz
[KgP].Robot #4700 üzenetére
Build.SERIAL, android_id, MAC, tehát nagyjából ami az évek és verziók során szóba jöhetett, valahol mind elvérzik. Átírható root esetén vagy akár anélkül is, vagy változékony (pl. factory reset az android_id-nál), vagy lehet üres (ro.serialno minden további nélkül), no meg a 6-7-8-9 verziókban szigorítások voltak, engedélyek mögé lettek rejtve stb. Van is némi dokumentáció arról, hogy szándékosan nehezítik az ilyesmit, és inkább az "app instance"-féle azonosítási módhoz adnak tippeket. Itt egy olvasnivaló: android.com
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4653 üzenetére
Sziasztok
Megoldodott azzal, hogy a gradle verzio 4.4-rol at lett allitva 4.9-re. Ezutan a szerveren is fordult az app.
Fura, hogy a studio nem ajanlotta fel az update-et 4.4-rol 4.9-re, holott mar március ota kint van. -
sztanozs
veterán
válasz
[KgP].Robot #4606 üzenetére
Kipróbálod mágnessel / vassal és ha csak random változik az érték, akkor rossz
-
morgonc83
tag
válasz
[KgP].Robot #4566 üzenetére
igen akár igy is mondhatnánk de nem feltétlenül. a studió azért sokkal egyszerübbnek tünik.például már összeállítottan az alkalmazásomhoz pár aktivity-t ez ugye a könnyebbik fele- ugymond grafikus felület-és ezeketigy nem kell nekem megirni.de mivel nem vayok programozó(-csak egy phyton könvet olvastamki és gyakoroltam a benne lévő feladatokat eddig-nem volt bonyolult számomra megérteni)
igy kulcsfontosságú dolgokat - parancs szavakat -nemismerek.ezért szeretnékegy oldalt ahol levannak ezek irva- speciál az studiohoz -
Rickeffe
aktív tag
válasz
[KgP].Robot #4557 üzenetére
Én úgy tudom root nélkül sajnos csak azokat az adatokat tudod backupolni amit a program enged és/vagy általános helyen tárol. (Titanium/helium/adb stb esetén is)
(Pl. Viber esetében anno csak úgy volt megolható ha minden spec könyvtárát egy bizonyos menet szerint másoltad át.)
-
mexel
veterán
válasz
[KgP].Robot #4557 üzenetére
Helium-al próbáld meg, nekem több tableten működött. Nem tudom minden eszközön jó-e. Én pc-re mentettem.
-
válasz
[KgP].Robot #4555 üzenetére
Root nélkül nem fog menni.
-
Rickeffe
aktív tag
válasz
[KgP].Robot #4555 üzenetére
Van-e root jog?
-
t181
senior tag
válasz
[KgP].Robot #4540 üzenetére
Szia!
Leírom én hogy csinálnám, hátha segít elindulni.A cursor-t ugye meg tudod felezni (getCount()-tal a méretét kapod meg, moveToPosition()-nal pedig el tudod tolni).
Mindkét felét elindítod egy-egy szálon (Kotlin Coroutines, Rx, stb., AsyncTask, ha nem akarsz plusz library-t használni), StringBuilder-rel összerakod, amit össze kell, majd az eredményt egy közös StringBuffer-be teszed.Ugyanitt:
Nem keres esetleg valaki gyakornokot? -
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4503 üzenetére
Errol valakinek velemeny?
-
Rickeffe
aktív tag
válasz
[KgP].Robot #4500 üzenetére
Az furcsának tűnik. Konkrétan a készülék oprendszere nem engedi feltelepíteni ha más az aláírás de egyezik a csomagnév ABBAN az esetben mikor pl. kártyáról installálsz. Ha a storeon meg tudják oldani, hogy még is felinstallálja akkor az azért több kérdést is felvethet.
De érdekelne a végkifejlet ha publikus.
Pl. a csomagnév egyedi a storeban? -
Gerzsi
tag
válasz
[KgP].Robot #4500 üzenetére
kétlem de majd ird hogy mi lett
-
Rickeffe
aktív tag
válasz
[KgP].Robot #4497 üzenetére
Nem értek hozzá igazán de ez rettenetesen furcsa nekem.
A cégnek 1 saját kulcsot kellett volna használjon. Ha jól tudom ennek a kulcsnak meg a hozzá tartozó jelszónak a birtokában a összes alkalmazott készíthetne buildet már ha erről beszélünk. -
Rickeffe
aktív tag
válasz
[KgP].Robot #4494 üzenetére
Nem tudom milyen viszony van köztetek de ilyen esetben a key nem a cég tulajdona?
-
Gerzsi
tag
válasz
[KgP].Robot #4492 üzenetére
ha megvan a forráskód és a keystore amivel alá van irva akkor te is tudsz csinálni olyan apkt ami azzal van aláírva (jelszó is kell a keystorehoz)
-
Gerzsi
tag
válasz
[KgP].Robot #4488 üzenetére
nincs meg a kulcs?
-
hati
addikt
válasz
[KgP].Robot #4488 üzenetére
Sztem nem tudsz aláírást cserélni az apk-n, ill. tudsz, de akkor a készülékek nem fognak rá frissíteni, mert nem egyezik a régi és az új aláírás.
Pont ezen az elven működik az a trükk, hogy a felhasználó lecserélni az apk-n az aláírást egy sajátra és onnantól a Play Áruházból soha nem jön rá frissítés.
-
Janaboy
veterán
válasz
[KgP].Robot #4392 üzenetére
Az miui forumán merült fel a kérdés és egyben egy másik hasonló problémához köthető.
Hogy értse valaki a storyt teljesen:
A Xiaominak van egy Gateway illetve egy Wireless Radio eszköze is, ezek a MiHome appot használják.
Egy emberke létrehozott egy php oldalt, ami lényegében az egyik netes rádió apiját átirányítja és feltölti a sajátjával egy lokálisan futtatott szerverren (Ez amugy a ximalaya radios apiját viszi át).
Sajnos ez a megoldás a Xiaomi Smart Wireless Speakerjével nem működik a megoldás, mert az a Mi Speaker appot (vagy Millet Sound Appot használja), ezt amúgy innen lehet letölteni:
[link] (Attól hogy kínai, ez a link az eszközön is).A lényeg az, hogy próbáltam a php-s módszert is, de sajnos a Mi Speaker app máshogy szólitja meg a ximalaya apit, ami miatt nem megy a wrapper php téma és sajnos nem sikerült senkit se találnom aki segítene a módositásban, annak ellenére hogy packet snifferrel lehet látni, hogy milyen válaszokat ad és kap a program, tehát elvileg meg lehetne csinálni, csak hát php+mysql és rewriterule tudás hibádzik.
Amúgy itt van a projekt, ahol leírják hogy kell ezt megcsinálni: [link]Az app visszafejtése amúgy végülis működik, de valóban tele van ilyen a,b,c,..classokkal (furcsáltam is hogy miért ilyen). Amúgy ha vkinek van kedve, töltse le és nézze meg
Hát ennyi a story.
Amúgy maga a hangszóró, mivel wifin tud csatlakozni a routerhez és képes csatornákat tárulni, képes lenne arra, hogy rádiókat mint csatornákat tároljak a hangszóróban és anélkül, hogy telóval mókolnám el lehet indtani a rádiókat és az előre rögzített csatornák között váltogatni. -
Janaboy
veterán
válasz
[KgP].Robot #4388 üzenetére
Ajaj akkor lehet ez is ilyen.
Visszafejtes utan volt egy csomo a, b, c.. Blabla classes.Ez amugy a Xiaomi Smart Wireless speaker appja (Mi Speaker).
Es az a baja, h csak kinai radiokat lehet felcsatolni -
hati
addikt
válasz
[KgP].Robot #4388 üzenetére
Igen, a kapott kód eléggé nehezen értelmezhető lesz.
pl. a csomagnev.a.b(c) függvényhívás nem túl beszédes, de ha vki. nagyon akarja, akkor visszafejtheti.
-
válasz
[KgP].Robot #4388 üzenetére
En is ugy tudom
-
t181
senior tag
válasz
[KgP].Robot #4333 üzenetére
Örülök, ha tudtam segíteni!
Az állásinterjú csak a fentebb említettekből állt? (beszélgetés és programírás)
Úgy gondolom, hogy az általad leírtak mind olyan dolgok, amiket tudni kellene annak, akit egy nagyon kicsit is érdekel a téma. -
PumpkinSeed
addikt
válasz
[KgP].Robot #4335 üzenetére
Amúgy valami máshoz is ért, vagy elvileg csak az Androidhoz. Mert ha máshoz elég jól ért akkor általában megéri belefektetni az ilyen ember átképzésébe. De ahhoz nagyon jónak kell legyen, ami gondolom ebben az esetben nem érvényesül. Amúgy nehéz Android fejlesztőt találni?
-
PumpkinSeed
addikt
válasz
[KgP].Robot #4333 üzenetére
Hogy sikerült neki a teszt feladata?
-
t181
senior tag
válasz
[KgP].Robot #4307 üzenetére
Szia!
Ahogy látom lekéstem (10 perce találtam rá erre a topikra), de később még hátha hasznos lesz. Én legalábbis annak találtam, amikor rájöttem, hogy fogalmam nincs mi az, amit tudnom kellene.
What I look for in a Junior Android DevA cikkből szvsz a Retrofit-et érdemes kiemelni, nekem legalábbis nagyon nagy fejtörést okozott, elképzelni nem tudtam miért jellemzi minden oldal az "egyszerű" szóval.
-
PumpkinSeed
addikt
válasz
[KgP].Robot #4323 üzenetére
Igen, így kellett létrehozni az Intent-t:
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uriString));
-
PumpkinSeed
addikt
válasz
[KgP].Robot #4321 üzenetére
A terv most:
PluginActivity mint Main. Ha nincs URL akkor company://welcome, ha van akkor company://upload-ra intent. A probléma, amit nem értek miért nem működik:
React oldalon van a Linking package ami elkapja az ilyen beérkező kéréseket és kezeli őket. Amikor meghívom ezt:
adb shell am start -W -a android.intent.action.VIEW -d "company://$1" com.company/.MainActivity
akkor működik, de amikor ezt csinálom a PluginActivity-ből, akkor nem (ez csak átküld a MainActivity-be, de az URL-t a Linking nem kapja meg, szóval félig működik):
Intent intent = new Intent();
String uriString = "company://welcome";
intent.setData(Uri.parse(uriString));
startActivity(intent);Az ide tartozó React Native rész:
componentWillMount() {
Linking
.getInitialURL()
.then(event => this.handleOpenURL(event))
.catch(console.error);
Linking.addEventListener('url', this.handleOpenURL);
this.props.loadCredentials();
}
handleOpenURL(event) {
console.log('Event:');
console.log(event);
if (event === null || event.url === undefined || Helpers.isObjectEmpty(event)) {
this.props.setWelcomeRedirect(true);
return 0;
}
var res = event.url.split("#");
switch (res[0]) {
case `${Config.APP_SCHEMA}upload`:
Actions.Upload();
break;
default:
Actions.Home();
}
}Az utolsó módosított Manifest.xml:
<application
android:name=".MainApplication"
android:allowBackup="true"
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
android:theme="@style/AppTheme">
<activity
android:name="com.company.MainActivity"
android:launchMode="singleTask"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="company"
android:host="*" />
</intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
<activity android:name="com.company.PluginActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="application/vnd.sony.scan3d" />
</intent-filter>
</activity>
</application> -
PumpkinSeed
addikt
válasz
[KgP].Robot #4319 üzenetére
Szerintem az lesz a baj, hogy alapból a MainActivity indul el a PluginActivity pedig nem Main. Amit még ma akarok megcsinálni, hogy kihozom a PluginActivity-t Main-nek, és alapból az dönt el mindent. Ha nincs file url amit a másik app küld akkor csak Intent a MainActivity-re, amúgy meg csinálja a dolgát.
-
PumpkinSeed
addikt
válasz
[KgP].Robot #4317 üzenetére
Hát nem tudom, de ha már itt vagyok akkor kérdezek, ugyanis már totálisan megteltem utálattal az Androiddal szemben.
Nem vagyok Android programozó Java programozó meg még inkább, csak meg kell csinálnom. Szóval van egy React Native alkalmazás, ebben a MainActivity-t a React automatikusan felhúzza. A manifest a következő:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.company"
android:versionCode="1"
android:versionName="1.0">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="22" />
<application
android:name=".MainApplication"
android:allowBackup="true"
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:launchMode="singleTask"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="company"
android:host="*" />
</intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
<activity android:name=".PluginActivity">
<intent-filter>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
</manifest>A cél a PluginActivity-ben átnavigálni egy URL-n keresztül a MainActivity-be ami alapból jobb esetben már fut is.
Intent intent = new Intent(PluginActivity.this, MainActivity.class);
long valid = validTo - System.currentTimeMillis();
String uriString = "company://upload";
intent.setData(Uri.parse(uriString));
startActivity(intent);A PluginActivity akkor fut le amikor egy másik alkalmazásból meghívják, ehhez van nem megosztott meta-data a manifest-ben. Viszont maga a startActivity nem navigál át a MainActivity-re. Az alkalmazás fut probléma nélkül. Minden megy szépen, egyszerűen mikor a másik alkalmazásban rámegyek a gombra akkor az URL-t ami a "company://upload" nem kapom meg a React részen belül holott, a
adb shell am start -W -a android.intent.action.VIEW -d "company://$1" com.company/.MainActivity
szépen megnyitja és elvártan működik.
-
PumpkinSeed
addikt
válasz
[KgP].Robot #4315 üzenetére
Én nem nagyon vagyok tisztában a magyar bérezésekkel, de szerintem ha tényleg akarsz neki munkát ajánlani, akkor egy kódteszt sok mindent eldönt. Valami nem nagy de gondolkodtató. De az igazság az, hogy a tag erősen pályakezdő, szóval gyakornoki program amit tudok javasolni.
-
scream
veterán
válasz
[KgP].Robot #4313 üzenetére
Én nem a srác fizetési igényére értettem, hogy korrekt, mert nincsen junior szinten sem, hanem azt mondtam, hogy a 2000ft/óra az reális fizetés lehet egy junior fejlesztőnek (de ugye a teljesen kezdő != junior dev).
Szerintem a layoutoknál fontosabb (mert szvsz abba elégé hamar bele lehet rázódni, még akkor is, ha előtte nem is látott ilyet), hogy a lifecycle dolgokkal (legalább activityknél, mert fragmenteknél lássuk be elég bonyolult) tisztában legyen, mi a singleton és hasonszőrű dolgok.
-
scream
veterán
válasz
[KgP].Robot #4311 üzenetére
Hát őszintén junior android dev(re pályázó) pozícióba szerintem azért már illik tudni alapvető android specifikus dolgokat...
Még a végzettségére lennék kíváncsi, hogy csak az online tanfolyamos papírja van, vagy van más egyéb is?
Meg ha ez főállás, akkor miért óradíjat mondott (ami egyébként szerintem megfelelő tudás mellett reális is lehet, márha nettóról beszélünk)?
Persze lehet hogy csak az irigység beszél belőlem, hogy én nem egyből junior-ként kezdtem és ki kellett érdemelni a junior rangot is.
-
PumpkinSeed
addikt
válasz
[KgP].Robot #4309 üzenetére
A fizetés igényből amúgy tényleg nagyon sok minden kiderül.
-
hati
addikt
válasz
[KgP].Robot #4307 üzenetére
Hogy mennyi fizetést kér.
-
Karma
félisten
válasz
[KgP].Robot #4300 üzenetére
Ha megvan az APK, akkor meg tudod nézni a tanúsítvány ujjlenyomatát.
Ebből a válaszból idézve:
keytool -list -printcert -jarfile valami.apk
kiírja az aláíró tanúsítvány adatait az APK-ból; másrészről akeytool -list -keystore valami.keystore
kilistázza a keystore fájlban lévő összes tanúsítványt. A fingerprint alapján meg tudod találni a megfelelőt. -
Karma
félisten
válasz
[KgP].Robot #4296 üzenetére
Az eredeti kulcs kell a frissítés publikálásához. Ha elveszne, akkor törölheted az alkalmazást és feltöltheted új azonosítóval maximum... Természetesen az Android Studioval is használható a régi kulcs.
-
domel
tag
válasz
[KgP].Robot #4284 üzenetére
Abban bíztam, hogy van működőképes Google Cloud Message vagy Pusher chat-ed, mert nekem ezek a mai napig nam jöttek össze, A Pusher az ilyen websocket szolgáltatás, de valami thermo hibával elszáll, pedig az lenne az igazi, egy olyan chat mint pl a facebook chat, hogy nem kéne másodpercenként lekérdezgetni a szervert, hanem csak akkor jön adat, ha valaki üzent
-
domel
tag
válasz
[KgP].Robot #4282 üzenetére
Robot miféle chat-et csinálsz? Mármint mi a chat motorja? Google Cloud Message, vagy Pusher, Azure, vagy saját magad bütykölöd a szerver oldali részt is (PHP)?
-
sztanozs
veterán
válasz
[KgP].Robot #4280 üzenetére
-
domel
tag
válasz
[KgP].Robot #4273 üzenetére
én nem chat programot írok de van recyclerview a programban, és kiváncsiságból beraktam egy edittext-et a reciclerview alá, és nálam nem veszti el a fókuszt, olyannyira nem, hogy még görgethetem is a cardview-et, sőt a cardview-en a button gombot is lenyomhatom, akkor is villog tovább a kurzor, ha gépelek akkor természetesen meg is jelennek a betűk.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4273 üzenetére
Update:
Minimális scrollozásra nem veszti el az Edittext a focust. Még mindig nem jöttem rá, hogy mitől függ. Az onScroll tehát kizárva. LayoutManagerben lehet valami, ami elveszi a focust? Illetve amint elveszti az Edittext a focust, akkor semmi nem kerül focusba, null lesz az aktuális focusban lévő View.
Valami ötlet? -
scream
veterán
válasz
[KgP].Robot #4242 üzenetére
Glide.with(MainActivity.this)
.load("http://sampleurl.com/sample.jpg")
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.into(imageView);Wiki-ből: Caching and Cache Invalidation
Én általában a
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
-ot használom, de van más is még. -
scream
veterán
válasz
[KgP].Robot #4240 üzenetére
Csupán érdeklődésből, miért ilyen régi libet használsz? 2015 nov. vége óta nem nyúltak hozzá. Ott a Glide pl, az sokkal naprakészebb (meg jobb).
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4233 üzenetére
Ne haragudjatok, kicsusztam a szerkesztesbol.
Mikozben irtam a gondomat, eszembe jutott valami es mukodik is. Szoval az elozo kerdesem solved.
Tegnap sz@r napom volt es delutan semmi sem akart osszejonni. Nem ment. Gondoltam ti mint segitokesz programozok, tudtok majd segiteni. Mindenesetre sikerult.
Azert koszonom es sorry megegyszer.
R. -
WonderCSabo
félisten
válasz
[KgP].Robot #4225 üzenetére
A view-kat nullazd ki, mivel ahogy mondtam, mindenkeppen ujra fog toltodni. A kepeket nem tudom hogyan huzod be, de hasznalhatsz Glide/Picasso stb. libeket a megfelelo cacheleshez.
-
WonderCSabo
félisten
válasz
[KgP].Robot #4223 üzenetére
Ha meghivodik az onDestroyView, akkor mindenkeppen ujra kell rajzolni a Fragment View-jat. Ez is csak akkor szamit, ha retained a Fragment, vagy back stackrol ter vissza, ellenkezo esetben eleve uj Fragment objektum jon letre.
-
gyurkikrisz
őstag
válasz
[KgP].Robot #4220 üzenetére
És mitől kell ennyi képnek a memóriában lennie? Nincs memória szivárgás az appban?
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4220 üzenetére
Kozben beallitottam a Manifestben ezt a 2 erteket true-ra:
android:hardwareAccelerated="true"
android:largeHeap="true"Annyiban segitett, hogy 500 feletti lefoglalt memoria eseten szellt csak el az app. Joval tovabb kellett nyomogatnom a kepeketmire elszallt.
-
hati
addikt
válasz
[KgP].Robot #4212 üzenetére
Nem kapsz, de bármikor le tudod ellenőrizni, hogy vásárolt-e és valójában neked arra van csak szükséged.
-
hati
addikt
válasz
[KgP].Robot #4210 üzenetére
Nem, de miért is kellene neked? Amúgy mit jelent a ki? Az email címére vagy kíváncsi?
-
hati
addikt
válasz
[KgP].Robot #4208 üzenetére
A vásárlás tényét megkapod az IabHelper.OnIabPurchaseFinishedListener -ben.
-
hati
addikt
válasz
[KgP].Robot #4197 üzenetére
Én így szoktam tiltani a mozgás detekciót pl. addig, amíg ráfrissítek egy listára.
viewPager.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event)
{
return true;
}}); -
gyurkikrisz
őstag
válasz
[KgP].Robot #4177 üzenetére
tévedtem.
-
gyurkikrisz
őstag
válasz
[KgP].Robot #4175 üzenetére
Ez az osztály konkrétan a HttpUrlConnection-tól örököl, úgyhogy éppen fordítva van, mint hiszed.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4166 üzenetére
1: A progressBar problema megoldva! Most mar latszodik a dialog mikozben kommunikalok a szerverrel.
2: Megprobaltam HttpUrlConnection-nel is, viszont ezt lattam a HttpUrlConnection peldanynal:
"com.android.okhttp.internal.huc.HttpURLConnectionImpl:..."
Ebbol nekem az jon le, hogy a HttpUrlConnection is az okhttp-t hasznalja.Valami egyeb otlet?
-
gyurkikrisz
őstag
válasz
[KgP].Robot #4171 üzenetére
HttpUrlConnection-t lehet érdemes megnézned.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4166 üzenetére
Mas otletek esetleg?
Mondjuk nem ragaszkodom az okhttp-hez sem, szal ha van mas megoldas ezen feltetelek mellett, kiprobalom azt is szivesen. -
Sianis
addikt
válasz
[KgP].Robot #4166 üzenetére
Szia!
AsyncTask: A konstruktor lefut? Kap Context-et? És az nem null?
OkHttp: Message helyett szerintem a body-t kellene nézned. Ott jön az ami neked kell nem?Ezt most csak így kutyafuttában. Bocsi.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4166 üzenetére
Erre valaki?
-
WonderCSabo
félisten
válasz
[KgP].Robot #4099 üzenetére
El kell menteni onSaveInstanceState-ben az aktualis poziciot es visszaallitani onRestoreInstanceState-ben.
Egy kis olvasnivalo.
-
WonderCSabo
félisten
válasz
[KgP].Robot #4094 üzenetére
Igy tudod lekerni a stilusbol az item-ek ertekeit.
Nalad valszeg igy fog kinezni:
int[] attrs = { R.attr.icon };
TypedArray ta = context.obtainStyledAttributes(R.style.NavigationStyle, attrs);
int attributeResourceId = ta.getResourceId(0, 0);
Drawable drawable = context.getResources().getDrawable(attributeResourceId);
ta.recycle();Kovetkezo hsz:
Ha nincs beallitva az activitynek a "android:configChanges="orientation|keyboardHidden|screenSize", akkor mukodik, csak ilyenkor ugye ujraindul az Activity es sokaig tart.
Biztos vagy benne, hogy jo otlet, hogy Te akarod lekezelni a forgatas stb. miat torteno valtozasokat? Az Android rendszer igy van kitalalva, hogy config change utan ujra elkeszeti az Activity-t, es a legtobb dolog igy out of the box megy is (kello onSaveInstanceState / onRestoreInstanceState hasznalataval). Nagyon keves pelda az, amikor kezzel kell ezeket lekezelni.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4089 üzenetére
Erre valakinek otlet?
Mas:
<style name="NavigationStyle">
<item name="icon">@drawable/icon</item>
</style>Kodbol hogyan tudom elerni az "icon"-t?
Igy probaltam:
TypedArray a = getTheme().obtainStyledAttributes(R.style.NavigationStyle, new int[] {R.attr.icon});
int attributeResourceId = a.getResourceId(0,0);
a.recycle();
Egy onClick-et szeretnek raakasztani de a findViewById null-lal ter vissza ha az attributeResourceId-t hasznalom.Koszonom.
-
WonderCSabo
félisten
válasz
[KgP].Robot #4087 üzenetére
Design support library tudja ezeket nagyreszt.
-
WonderCSabo
félisten
válasz
[KgP].Robot #4082 üzenetére
Nem tud magatol appra racsatlakozni a debuggerrel. De ha crashel az app, a stacktrace-t lathatod logcatban, es onnan mar ki lehet talalni mi volt a gond.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4081 üzenetére
Most override-oltam a onNewIntent metodust es mindaddig mukodik az elvaras szerint, amig az app fut. Ha lelovom az appot es rakattintok a linkre a naptarban akkor megprobal elindulni az app de elszall. Ilyenkor hogy lehet debugolni? Mmint ra tudom venni valahogy a studiot, hogy ha eszreveszi az app indulasat akkor egybol lepjen debug modba?
Ugy talan kiderulni miert szall el. -
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4080 üzenetére
Attettem az onResume-ba de ott minden linkre kattintas utan null a data ergo nem tudom, hogy hogyan navigaljak a fragmenten.
-
WonderCSabo
félisten
válasz
[KgP].Robot #4073 üzenetére
Nem tudod tenyleges linkkent megjeleniteni a leirasban.
Kovetkezo hsz-edre: a manifestben az activityd-ben add meg ezt: android:launchMode="singleTask". Elvileg ekkor az az aptar uj appkent fogja megnyitni.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #4073 üzenetére
Meg annyi kerdesem lenne, hogy miutan megnyilik az app a naptarbol (linkre kattintas utan), akkor gyakorlatilag a naptarban nyilik meg az app. Magyarul ha ezutan megnyitom a futo alkalmazasokat, akkor ott van a naptar de az nem a naptar hanem maga az app. Ahhoz hogy ujra meg tudjam nyitni a naptarat nem eleg nyomnom egy back gombot vagy a futo alkalmazasok kozul kivalasztani a naptarat, hanem ujra ra kell kattintanom a naptar ikonjara.
Van ra mod, hogy ez ne igy legyen? Vagyis legyen a naptar meg legyen az app es ne egy naptar app kombo. Vissza gombra meg menjen vissza a naptarba.
Koszonom szepen az otleteket! -
WonderCSabo
félisten
válasz
[KgP].Robot #4065 üzenetére
Ezt csak ugy tudod megcsinalni, hogy a naptar esemeny leirasaba elhelyezel egy deep linket, amit pedig lekezelsz az appon belul.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #3774 üzenetére
Ugy tunik megoldodott!
-
Sianis
addikt
válasz
[KgP].Robot #3763 üzenetére
Kövezzetek meg ha tévedek. De kell ide az application context? Nem elég maga az activity?
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #3760 üzenetére
Picassora visszaterve
Picasso.with(activity.getApplicationContext()).load(imgUri).into(holder.icon);
ettol az egy sortol megoldodott a laggolas problema.
Koszonom Karma! -
Karma
félisten
válasz
[KgP].Robot #3760 üzenetére
A szükséges szerveroldalt is neked kell előállítani hozzá? Szabad kezed van, vagy van technológiai megkötés? Netalán lehet felhőmegoldásokat használni rá? Mert a real-time követéshez például a Firebase egy elég fain megoldási lehetőség lenne.
-
Karma
félisten
válasz
[KgP].Robot #3756 üzenetére
A képbetöltés az a probléma, amit nem szabad elkezdeni magadtól megírni, amikor rengeteg kulcsrakész lib van hozzá: Picasso, Fresco,
UniversalImageLoader; csak hogy hármat felsoroljak. Ezek mind megoldják helyetted az átméretezést, háttérszálak helyes kezelését, cache-elést!, stb.Szerk.: Az UIL-t kihúztam, mert már nem támogatja a fejlesztője. Javaslom a Picassót, pofonegyszerű használni.
vlevi: Ez az állításod a mezei ListView-ra is igaz.
-
vlevi
nagyúr
válasz
[KgP].Robot #3756 üzenetére
Lehet, rosszul okoskodok, de talán érdemes lenne megpróbálni a recyclerview-t. Az csak annyi elemet tölt be, amennyi a képernőre kifér.
-
Karma
félisten
válasz
[KgP].Robot #3717 üzenetére
Dzsesszus! Mi akar ez lenni?
A hiba elég egyértelmű, egy AsyncTask doInBackground metódusában (ami elég beszédes, hogy háttérszálon fut), piszkálsz egy UI elemet. Ez nyilván tilos és az exception ezt is mondja neked.
Viszont mielőtt beírsz még valamit, hogy a UI szálra térjen vissza a lekérdezés, inkább töröld ki az egészet a francba. Ha csak késleltetni akarsz valamit UI szálon, oldd meg egy darab Runnable + Handler.postDelayeddel, mint ahogy egyébként ennek a halálpiramisnak a közepén tetted. Nincs szükség se AsyncTaskra, se runOnUiThreadre, se ennyi sorra.
...Most látom csak, hogy a piramis után ezt az egészet pont ugyanúgy, postDelayeddel indítod el. Na, csak ez kell, az AsyncTaskot égesd el.
Nestor16: Mit jelent az, hogy "nem akar összejönni"? Ez a kiinduló kód elég korrekt.
-
[KgP].Robot
aktív tag
válasz
[KgP].Robot #3716 üzenetére
Sziasztok!
Ujra feltennek egy kerdest. Az alabbi kodban az a gondom, hogy a "bcVideoView.isPlaying" sorra azt irja, hogy "Method isPlaying must be called from the UIThread".
Ezt nem en irtam es igazabol nem is latom at annyira a szalakat, de fontos lenne.
Koszonom szepen. -
thon73
tag
válasz
[KgP].Robot #3708 üzenetére
Velem akkor történt ilyen, amikor az sd-kártyát akartam elérni; az ugyanis nincs jelen a bekapcsoláskor. (nem fagyott ugyan le, hanem hibaüzenetet adott.) Esetleg valami hasonlóan működő periféria?
-
Karma
félisten
válasz
[KgP].Robot #3694 üzenetére
-
Karma
félisten
válasz
[KgP].Robot #3692 üzenetére
Egy nagyon súlyos hiba biztosan volt: idetettél egy kilométer forrást a Programkód formázás használata nélkül. Mondjuk ekkora mennyiséget még formázással együtt se dobj be kérlek a jövőben.
Új hozzászólás Aktív témák
Hirdetés
- ÚJ- Lenovo ThinkVision T24i-10 - 24" monitor - Számla, garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5800X 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- ÁRCSÖKKENTÉS Dell Latitude E6320 notebook eladó
- Bomba ár! HP ZBook FireFly G8 - i7 I 16GB I 512SSD I 15,6" FHD Touch I Nvidia 4GB I Cam I W11 I Gar!
- Apple iPhone 14 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged