Hirdetés
- Autós kamerák
- Azonnali informatikai kérdések órája
- Felvenné a Noctua kesztyűjét az ASUS
- Leiskolázná a mezőnyt az új Samsung csúcs-SoC
- Kormányok / autós szimulátorok topikja
- Milyen monitort vegyek?
- Épített vízhűtés (nem kompakt) topic
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Apple asztali gépek
- Ami Kínában OnePlus Pad Pro, az errefelé mégis csak Pad 2 lett
Új hozzászólás Aktív témák
-
domel
tag
Úgy néz ki, hogy megoldotta a problémám a memória csere, a 4GB lett cserélve 16GB-ra. A feladatkezelőben látom hogy folyamatos 4,5 GB a memóriaszint, ezért lehetett hogy folyamatosan töltött ha egyik applikációból mentem egy másikba. A 16 GB kicsit túlzás volt, emulátorral is csak 6,5 GB, és annak is elfogadható lett a sebessége. Amúgy mondták a szerelők, hogy lassan töltött be a windows annak ellenére, hogy egy erős gép, úgyhogy valami bibi lehet még, majd még ennek utánajárok.
-Domel
-
thon73
tag
Nem létezik, hogy nem működik.
Nekem Intel D525 / 4Gb RAM és most Intel J1900 / 4Gb mellett, Linux és Windows alatt is tökéletesen működik (és kb. egyforma idővel). És ezek azért elég lassú, energiatakarékos procik; igaz SSD-t használok.
Ha kell a saját virtuális gép, akkor az lassan indul, de utána már az is gyors.Ha a fordítás lassú, akkor EZT olvasd el! Nekem négy percről pár 10 másodpercre csökkent a fordítási idő:
Settings/Build…/Compile independent modules in parallel…
Settings/Build…/Compiler/Make-project automatically…
és
SettingsBuild…/BuildTools/Gradle/Offline workmindegyikét bekapcsoltam, de ezek most egy picit máshol vannak az opciókban, úgy emlékszem.
Más:
Említetted a GitHub-ot. Az ugyan nyílt, de nem (vagy elsősorban nem) kész példakódok megosztására szolgál. Sokan fejlesztés alatt álló dolgokat tesznek fel (pl. én is), ami nem feltétlenül működik az adott pillanatban. Ezt azért érdemes előtte megnézni, mert különben nehéz belőle tanulni.
-
domel
tag
válasz
bucsupeti
#3891
üzenetére
Nekem 2012-es a gép, i5 2,7GHz mittudomén hány mag, a mai gépek sem tűnnek sokkal izmosabbnak. Android Studio alatt folyamatosan tölt és maxon a memória, már a vírusírtót is letiltottam. Megpróbálok venni ramot, aztán meglátom.
Linux alatt... az más, ott a nyers erővel dolgozik a gép, de nekem az nem jó mert windows-os programokat is irok.
-Domel
-
bucsupeti
senior tag
A 4gb az elég kene hogy legyen. Milyen a processzor? Milyen a hdd vagy ssd?
Windows? Xp? Win7? 8? 10? 32 vagy 64 bites?Nekem spec 16 gb ram van a gépembe ami egy i5 procis lenovo L450. Ebből 8 gb ramdisknek van beallitva. Ide van iranyitva a tmp könyvtara a linuxnak (ja linuxot hasznalok) illetve ide mutat a bongeszok cache-e is. A maradék 8 gbot az hasznalja ami akarja. Van hogy virtualisan egy linux szerver fut meg alatta.
Ez mellett 256gb ssd van a gépbe. Ez a konfig azert szaguld rendesen.Szerintem 4gb ram, i3, ssd-vel mar kenyelmes, de rambol jobb a tobb. Meg persze 64 bites oprendszer ugye azert illik a sokgiga ramhoz.
-
domel
tag
Hi! Nálatok milyen vas van az Android Studio alatt? Nálam eszméletlen lassú minden, a memória csurig (4GB), de a procik 1-8%-on, és ha átlépek az internet böngészőbe akkor meg az lassú, amíg össze nem szedi magát...
A fragmentek része az Android Studionak? Itt bróbálok tájékozódni a témában [link] de plugin telepítését kéri ami persze nem jön össze (2013-as a cikk) lehet hogy el is avult, vagy abban az időben még android studio sem volt.
Tud valaki olyan helyet ahol sok működő és letölthető demó van? Ez a GitHub olyan mintha egy óriási szemétdombon túrkálnák, minden tizedik letölthető app indul el valamilyen hiba nélkül, de néha még olyan kódokat is megosztanak amik nem csinálnak semmit, az időm viszont megy velük
Köcce!
Domel -
thon73
tag
Egy biztos: A google HQ nem úgy alkotta a rendszert, hogy ki kelljen lőni bármit is, ha nincs rá szükség.

Szerintem a kérdés megközelítése rossz - de épp emiatt nem vagyok elég okos, hogy megválaszoljam. Szóval szerintem a hiba a kilövésben van, mégpedig attól tartok, Te az egész application-t leállítod, nem csak az activity-t. De erre nincsenek pontos információm, úgyhogy cáfoljatok meg, ha hülyeséget gondolok.
A háttértől függetlenül: próbáld ki, mi történik, ha finish()-sel állítod le az Activity-t miután a service-t elindította (persze start-tal)!
-
domel
tag
Üdv!
Csináltam egy programot ami elindít egy Service-t, az meg figyel egy internetes text fájlot és csipog ha változás van. Mivel a MainActivity nem lényeg, a programot ki is lövöm(telefon alkalmazás-választó menüből), ekkor a Service újraindul és teszi a dolgát.(1 folyamat 1 szolgáltatásként) Ha a kódba beteszek egy sortpublic int onStartCommand(Intent intent, int flags, int startId) {
adatnull = intent.getStringExtra("adat0"); // <--- eztakkor valahogy megváltozik az APK szerkezete, és mikor kilövöm az app-ot, nem indul újra a Service. (0 folyamat 1 szolgáltatás lesz, majd egy másodperc múlva bezáródik a Service).
Kérdéseim:
-Futhat úgy Service, hogy 0 feladat 1 szolgáltatás?
-Ha kilövöm a programot, akkor miért indul újra a Service?
-Ha beteszem azt a bizonyos sort, akkor miért nem? Most akkor melyik a bug?Ha én szeretnék egy háttérben futó alkalmazást, amit az alkalmazás-választó menüből is kilőhetek úgy, hogy az továbbra is a háttérben működjön, akkor merre induljak el?
Üdv! -Domel
-
thon73
tag
-
domel
tag
Üdv! Hogyan lehet kikapcsolt (és usb kábelről lehúzott) telefonon pontos időzítést csinálni?
Thread lessThread = new Thread(r);
lessThread.start();
. . .
public Runnable r = new Runnable() {
@Override
public void run() {
mySound4.start();
szamlalo = szamlalo + 1;
if (szamlalo == 60){
szamlalo = 0;
new Feldolgoz().execute();
}
handler.postDelayed(this, 1000);
}
};A mySound4.start() -ban egy tizedmásodperces néma hang szól, és ha az nincs ott, akkor minden lesz az, csak nem 60 másodperc (pár másodperc eltérés nem számítana), ha a postDelay-t 60000-re állítom, akkor még a mySound sem számít, 200-300%-os eltérések lesznek a meghívások között.
Próbáltam mással is,scheduledPool.scheduleWithFixedDelay(r, 1, 1, TimeUnit.SECONDS);,de a probléma ugyanaz. Mivel lehet még időzíteni?
A telefonon már korábban "teljesítményre" állítottam az energiagazdálkodást, elvileg az nem lehet hiba, és bekapcsolt telefonnál sincs hiba az időzítéssel.Köcce! -Domel
-
-
thon73
tag
Érdekes. Az interneten már mindent megválaszoltak, csak én nem tudok jól kérdezni.
Megint csak a teljesség kedvéért ezt találtam:
Detect 7 inch and 10 inch tablet programmatically
Hát, nem a világ legegyszerűbb feladata, ügyes volt aki ezt így végigszámolta.
-
vlevi
nagyúr
Talán ez a kép is segíthetaz asynctask megértésrhez
Ezen a képen aztláthatod, hogy az egyes paraméterek hogyan kapcsolodnak egymáshoz. Pl az async taskod visszatrrrsi rrtéke lehet egy integer, a textből beolbasott szám értéke. Ezt a számot megkapja a postexecute metódus, és mivel az már az UI szálon fut, írhatsz is akár a képerőre.
-
thon73
tag
Hát én pont azért kezdtem el (újra) programozni, mert nem találtam senkit, aki helyettem - pénzért - megcsinálja. Egyébként meg igen drága.
Fel a fejjel! Fog az menni, csak legyél türelmetes!

A világ legelvarázsoltabb service-vel játszom egy ideje, a billentyűzetvezérlővel, úgyhogy az android csavarjait nekem nem kell bemutatni. A jó hír: megy benne a háttérszál! A rossz: az asynctask még a service-nél is hülyébb állatfaj.
EZT olvasd végig, ha gondolod. Régi, de segíteni fog az asynctask megértésében. Elküldöm a készülő kódot is szívesen, de kicsit nagyra nőtt, nehéz benne bogarászni.A lényeg:
A Service megvalósít egy Listener-t, amin keresztül az AsyncTask tudja jelezni az eredményt.
Ezt a Listener-t az AsyncTask konstruktorában adom át, vagyis magát a service-t.
A Service meghívja .execute-tal az AsyncTask-ot, de a sikeres lefutást már a Listener-ben meghatározott metódusok kezelik le, amiket az AsyncTask onPostExecute metódusa hív meg.
Ez a szűk lényeg, mert az Asynctask előnye, hogy látod, hogy hol tart; ad visszajelzést a hibáról; és persze meg lehet szakítani. Épp csak ezeket is mind fel kell programozni, bár a terep elő van készítve.Internetet még nem használtam (mármint közvetlenül a programból), de az biztos, hogy az UI szál erre tiltott. Azt, hogy pontosan milyen módon teszed háttérbe a feladatot (AsyncTask, Loader, Service, Thread stb.) mérlegelni kell, de az AsyncTask-ot mindenképp érdemes behatóan ismerni.
-
domel
tag
Oké, String ügyben meggyőztetek!

Azt szeretném kérdezni, hogy Service-ben lehetséges egy text fájlot letölteni az internetről? Egy ideje szenvedek vele, úgy vettem észre hogy a Service gyengébb még az UI-nál is a terhelhetőséget illetőleg, még a bevállt
private class MyTask extends AsyncTask<Void, Void, Void> {sem megy

Esetleg lenne egy vállalkozó szellemű köztetek, akit ha megfizetek, megír egy olyan programot, ami Service-ben fél percenként megvizsgál egy interneten lévő text fájlot, és ha változás van, lejátszik egy hangot. A program akkor is működne, ha a programot bezárom, pont úgy ahogy a facebook messenger vagy a Skype (tehát látszólag meg sincs nyitva semmi, mégis megy). Én meg utalok mondjuk a PayPal-en vagy simán bankon keresztül. Én meg az így kapott forráskódból tanulnák, mert egyedül sajnos nagyon nehezen megy.
Üdv: Domel
-
-
domel
tag
Igazad lehet abban hogy a két string mutatója kavar be, de szerintem ez néha számít, néha nem

String k1="vava";
String k2="zaza";
. . .
public void frissit(View view) {
k2="vava";
if (k1==k2) {
mySound.start();
}
}Elvileg ez sem lehetne egyenlő ha a string mutatója szerint nézzük, márpedig lejátsza a zenét.
-
thon73
tag
egyik = textResult; egyik és textResult is ugyanarra a stringre mutat (legyen stringA)
egyik = Integer.toString(Integer.parseInt(egyik)); textResult változatlan, de egyik már a toString által létrehozott új stringre mutat. (Ami tartalmazhat azonos szöveget stringA-val) Ez legyen tehát stringB."egyik == textResult" az ugyanaz, mint stringA == stringB, vagyis soha nem lesz igaz. textResult.equals(egyik) megoldás segíthet, de miért nem számolsz inkább integerekkel az átalakítás után?
A masik=egyik; utasítás viszont a fenti ellentéte, hiszen ettől kezdve mind a kettő ugyanarra a stringA-ra mutat, tehát értékük egyenlő.
Java-ban ezt egy picit nehéz megérteni, mert el van rejtve. A C pl. sokkal jobban rákényszeríti az embert a címaritmetika elsajátítására.
A String alapvetően egy Objektum, amely valahol egy komplex adathalmaz a memóriában.
Pl. String string = "Én egy adathalmaz vagyok"; utasításban lesz a memóriában egy ilyen mondat.
Ezzel szemben a "változó", amivel azonosítjuk a stringet, valójában egy mutató, ami erre az adathalmazra mutat. String esetén az adathalmaz final, vagyis nem változtatható meg, de a string nevű mutató természetesen mutathat más halmazra, ha új értéket kap.
Te azt hasonlítod össze, hogy a két mutató ugyanoda mutat-e, ahelyett, hogy a két mutató által mutatott adatokat hasonlítanád össze. -
domel
tag
Igazatok volt a text fájl internetes letöltésében, UI szálon esélytelen, találtam is működő példát, az valahogy async eljárásban tölt le az internetről. Az alábbi kóddal szenvedtem pár órát, egy Delphi-ben ismeretlen problémám volt, mutatom:
(van egy weboldalon egy counter.txt fájl, amiben a számot egy mozgásérzékelő növel ha változás van, akkor lejátszik egy másodperces hangot a telefon)package com.example.csabi.gondolok;
import android.media.MediaPlayer;
import android.os.AsyncTask;
import android.os.Handler;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Random;
public class MainActivity extends AppCompatActivity {
String textResult;
String egyik;
String masik;
MediaPlayer mySound;
private Handler handler = new Handler();
Random rand = new Random();
public Runnable r = new Runnable() {
@Override
public void run() {
TextView mtextview = (TextView) findViewById(R.id.mTextView);
mtextview.setText(egyik+"---"+masik);
if (egyik != masik){
mySound.start();
masik = egyik;
}
new MyTask().execute();
handler.postDelayed(this,5000);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mySound = MediaPlayer.create(this,R.raw.sound3);
Thread lessThread = new Thread(r);
lessThread.start();
}
public void frissit(View view) {
}
public void fressit(View view) {
}
private class MyTask extends AsyncTask<Void, Void, Void> {
//String textResult;
@Override
protected Void doInBackground(Void... params) {
URL textUrl;
try {
int n = rand.nextInt(9000);
textUrl = new URL("http://www.spessart.hu/counter.txt?a="+Integer.toString(n));
BufferedReader bufferReader
= new BufferedReader(new InputStreamReader(textUrl.openStream()));
String StringBuffer;
String stringText = "";
while ((StringBuffer = bufferReader.readLine()) != null) {
stringText += StringBuffer;
}
bufferReader.close();
textResult = stringText;
} catch (MalformedURLException e) {
e.printStackTrace();
textResult = "*";//e.toString();
} catch (IOException e) {
e.printStackTrace();
textResult = "*";//e.toString();
}
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
egyik = textResult;
int gz = Integer.parseInt(egyik);
egyik = Integer.toString(gz);
}
}
}Itt a végén
egyik = textResult;
int gz = Integer.parseInt(egyik);
egyik = Integer.toString(gz);
ha az "egyik = textResult" csak úgy simán, akkor öt másodpercenként pittyeg, hiába látom hogy például
42---42 akkor is lefut az alábbi kód
if (egyik != masik){
mySound.start();
masik = egyik;
}
Ez mitől van? A string tartalmazza a memóriacímet is??? Vagy bug?Üdv: Domel
-
hati
addikt
-
Shoo
senior tag
Hali!
Tudtok olyan programot ajánlani, ami engedi azt, hogy android programban az egérhez lehessen csatolni billentyűzetkombinációkat? Pl. ha szövegszerkesztőt használok a jobb gombbal a ctrl+1-es parancsot hajtsa végre?
Előre is köszi!
Üdv! -
Karma
félisten
Jesszus!
A lehető legrosszabb megközelítés ez, ha valóban ezt ajánlják bármely fórumon, azt a helyet messze kerülni kell.Először is, ha UI szálon indítasz hálózati kérést, az felrobban NetworkOnMainThreadExceptionnel. Valószínűleg ez történik a telefonodon is. Miért nem nézed meg a hibaüzenetet, amit kiír a logba?
Másodszor, ha a fájlban az újsoroknak jelentősége van, akkor ez a fajta soronként beolvasás el fogja szúrni. Ezt mondjuk a kódrészetben látható komment is írja. Az esetek döntő többségében teljesen felesleges és primitív megoldás readLine()-t használni, amikor a streamet közvetlenül is fel lehet dolgozni.
Harmadrészt az URLConnection helyett vannak magasabb szintű könyvtárak, amikkel a szerverkommunikációt értelmes keretek közé lehet szorítani. Nekem a favoritom a Retrofit.
De ha ez még nagy falat lenne, javaslom a hivatalos dokumentációt.
-
domel
tag
Üdv! Szeretnék egy text fájlot letölteni az internetről egy string típusú változóba, minden fórumon ezt ajánlják:
public void fafa(View view) {
try {
// Create a URL for the desired page
URL url = new URL("http://www.spessart.hu/counter.txt");
// Read all the text returned by the server
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String str;
while ((str = in.readLine()) != null)
{
// str is one line of text; readLine() strips the newline character(s)
}
in.close();
} catch (MalformedURLException e) {
} catch (IOException e) {
}
}de nekem hibaüzenet nélkül elszáll tőle a program (a telefonon).
Mi lehet a hiba? Van esetleg valakinek működő kódja? Megköszönném!

Üdv: Domel
-
domel
tag
válasz
SirRasor
#3851
üzenetére
Üdv Sir Rasor! (kiejteni Szőr Razor (??))
Néztem a tákolmányodat, a problémáddal nem foglalkoztam mert én is ugyanolyan kezdő vagyok mint te, de a Service-d nem egy stabil valami... Még usb kábel végén a telefonnal az oké, de ahogy lehúzom a kábelről, egy darabig megy, aztán egyre kevésbé, hiába hívod meg ezt másodpercenként
private Runnable runnable = new Runnable() {
@Override
public void run() {
food-=1;
handler.postDelayed(this, 1000);
}
};
egy fél percig megy, aztán egyre kevésbé, a végén már majdnem 2 perc is eltellik mire lefut a procedura.
Nekem pont most sikerült stabil Service-t csinálni, 5 másodpercenként lejátszik egy hangot, a kikapcsolt telefonnál is megy már fél órája, nem lassítja be az android, és bezárható (a task menüből is) a program, akkor is tovább fut. Most értem el ahhoz a részhez amivel te is szenvedsz, hogy újrainduló programmal is el kéne érnem a Service-t anélkül hogy fagyna, vagy újraindulna. Ha gondolod, -vak vezeti világtalant- segíthetünk egymásnak.Domel
-
thon73
tag
Csak a teljesség kedvéért: találtam egy AppCompatPreferenceActivity-t ami részletesen megmutatja, hogy mely pontokon kell az AppCompatDelegate metódusait meghívni. Ezzel ugyanúgy működik, mint a "klasszikus" PreferenceActivity; lényegesen egyszerűsítve mindent.
Egy problémám azért továbbra is maradt: mivel ez PreferenceActivity és nem AppCompatActivity, lehetetlen meghívni a getSupportFragmentManager-t, vagyis nem lehet dinamikus fragmenteket alkalmazni. (Vagy: a nem-support változatot kell használni, de akkor mindenből.) Úgy láttam, erre a világhálón sincs válasz.
-
thon73
tag
Még mindig PreferenceActivity.
Bár nem sikerült még a material kabátot ráadni, de máris olyat szeretnék, hogy a header dupla pane elosztása jelenjen meg a 8 inches gépen elforgatott képnél.
Eljutottam a public boolean onIsMultiPane() metódusig.
Milyen paramétert kellene megvizsgáljak ahhoz, hogy kiderüljön, hány inches a képernyőm? -
Gerzsi
tag
Ti hogyan tesztelitek az alkalmazást? Milyen keretrendszereket használtok a teszteléshez?
-
hati
addikt
A Google Play Developer Console másnál is 3-4 napnyi lemaradásban van?
-
thon73
tag
Használt már valaki AppCompatDelegate-ot? Csak annyi, hogy pl. a PreferenceActivity minden metódusából meghívom a Delegate megfelelő metódusát és kész? Onnantól kezeli pl. a headereket? és honnan lesz benne toolbar ettől?
Gondoltam megmodernizálom, sőt megmaterializálom a settings-et (is). Listák vannak a bugokról benne! Hogy lehet valami ennyire trehány módon megcsinálva?
Na mindegy, pontról pontra kijavítgattam mindent, de a headereknél elakadtam.
Előre is köszönöm, ha valaki utat mutat
-
SirRasor
addikt
Többszintű a probléma. 6-os androidból csak MIUI-t láttam, ahol konkrétan TE, mint felhasználó tudod rögzíteni azokat a futó alkalmazásokat, amiket szeretnél, hogy az android ne lőjön le.
1. egy mezei user nem fogja/tudja berögzíteni az alkalmazásodat
2. gyári marshmallownál lehet, hogy nincs is erre lehetőség az userek számára
És amúgy meg kipucol mindent bizonyos időkö...ja várjunk, lehet, hogy ezt csak a MIUI csinálja.Amúgy nem tudom. De rágugliztam, és elméletileg azt nem. Bár 2014-es volt a forrás, tehát 6-os androidnál megint kérdéses..
-
SirRasor
addikt
Start_sticky-vel van megoldva, tehát valahol máshol lesz a gubanc.
Pont délelőtt olvastam azt, hogy a sticky és no_sticky között az a különbség, hogy amikor elfogy a memória és az android bezárja a szolgáltatást, akkor majd ha megint lesz szabad memória, akkor a stickyvel újra elindítja a szolgáltatást, a no-val meg nem.
-
Karma
félisten
válasz
SirRasor
#3851
üzenetére
A csomagot most nem tudom megnézni, de egy Service indításakor a START_STICKY konstans segítségével jelezheted, hogy folyamatosan akarod futtatni, függetlenül a hívó kliensektől.
-
SirRasor
addikt
Üdv ismét!
És milyen meglepő, ismét elakadtam

Pedig már majdnem megvolt az egész.Tehát mit is szeretnék:
Activity-ből elindítani egy servicet, amiben menne egy számláló, aminek az állását pl: egy gombnyomással bármikor lekérhetném, és az activityben egy textView-t felfrissítve látható legyen.
KÉSZ, működik is.De ha bezárom az appot, akkor a szolgáltatás is leáll. Merthogy bound service. Bound előtt létrehoztam, és úgy csináltam meg a kötést, és így nem áll le, ha bezárom az appot (yeeee).
De ha elindítom megint, és a gombbal lekérem az adott értéket, akkor összecrash-el.
A gombos eljárásban megcsináltam megint a boundot, de így is. Gondolom a kötésnél valami nem jó, de gugliban és az oktató videókban sincs több erről, amit fel is fognék
Már csak ennyi hiányzik, kérem valaki segítsen

Itt van az egész becsomagolva., de szimpla magyarázat is megteszi, hátha felfogom

Egyébként az a terv, hogy a menhely szolgáltatása folyamatosan fusson és ott legyen az összes változóm pl: kaja, víz stb, aztán mondjuk óránként a szolgáltatás le is mentené a telefonra, hátha véletlen összeomlik. És akkor mondjuk a belső időzítő és egyéb számítgatás alapján egyszer csak szólna, hogy pl: mirci cica éhes és meg kéne etetni, mert megdöglik
![;]](//cdn.rios.hu/dl/s/v1.gif)
-
Sziasztok! Free offline map libraryk közül melyek az ajánlottak? POI kezelés lenne fontos.
-
thon73
tag
Sianis tette fel a kérdést:
"Hogyan lehet a stílusokat úgy használni, hogy hasonlítsanak a különböző API verzió között?"Erre nem érkezett válasz, de én is erősen csatlakoznék a kérdezők táborához. Csak tanulgatom a material design megjelenést, de nekem két készülékem sem egymáshoz sem a példához nem hasonlít... A maga nemében persze mindegyik működik, csak olyan jó lenne érteni, hogy hogyan...

-
Arcanus
aktív tag
válasz
xridergabo
#3842
üzenetére
public void deleteTask(View view) {
// itt csak megjeleníted a dialog-ot
createDialog(view);
}
private void createDialog(final View view) {
AlertDialog.Builder alertDlg = new AlertDialog.Builder(this);
alertDlg.setMessage("Are you sure ?");
alertDlg.setCancelable(false);
alertDlg.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//Ha YES-re katting akkor ez a rész aktiválódik
// ide jön a törlés
View parent = (View) view.getParent();
TextView taskTextView = (TextView) parent.findViewById(R.id.task_title);
String task = String.valueOf(taskTextView.getText());
SQLiteDatabase db = mHelper.getWritableDatabase();
Toast.makeText(/*context*/, "Delete!", Toast.LENGTH_LONG).show();
db.delete(TaskContract.TaskEntry.TABLE,
TaskContract.TaskEntry.COL_TASK_TITLE + " = ?",
new String[]{task});
db.close();
updateUI();
}
});
alertDlg.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// ha NO-ra kattint akkor ez a rész aktiválódik
}
});
alertDlg.create().show();
}Én így csinálnám (persze lehet optimalizálni rajta)
-
Arcanus
aktív tag
Sziasztok!
A következő lenne a helyzet: készítettem egy alkalmazást, teljesen ingyenes, egyedül reklám van benne (AdMob). Szeretnék kicsit több jövedelmet, ezért úgy döntöttem hogy kis donate ellenében, a reklámot kikapcsolom.
Sajnos nem tudok merchant fiókot készíteni a Google Playben, így az alkalmazáson belüli vásárlás kilőve. Arra gondoltam, hogy valamilyen módon (PayPal) donate gombot helyezek el az alkalmazásban.
A kérdés a következő: ha nem a Google InApp vásárlást teszem az alkalmazásba, hanem a PayPal donate gombot a Play áruházból bannolva leszek e? Esetleg bármilyen szabályt megszegek ezzel?
-
hati
addikt
válasz
xridergabo
#3842
üzenetére
Ott van a kihagyott hely hozzá a példádban.
alertDlg.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// Ide rakd, amit akarsz, ha OK-t választott.
}
}); -
xridergabo
csendes tag
Sziasztok.
Szeretnék készíteni egy egyszerű ToDolistet és szeretném elérni, hogy mielőtt törlöm a feladatott kérdezzen rá, hogy tuti-e a dolog.
Eddig így néz ki a dolog:public void deleteTask(View view) {
createDialog();
View parent = (View) view.getParent();
TextView taskTextView = (TextView) parent.findViewById(R.id.task_title);
String task = String.valueOf(taskTextView.getText());
SQLiteDatabase db = mHelper.getWritableDatabase();
Toast.makeText(this, "Delete!", Toast.LENGTH_LONG).show();
db.delete(TaskContract.TaskEntry.TABLE,
TaskContract.TaskEntry.COL_TASK_TITLE + " = ?",
new String[]{task});
db.close();
updateUI();
}
private void createDialog() {
// TODO Auto-generated method stub
AlertDialog.Builder alertDlg = new AlertDialog.Builder(this);
alertDlg.setMessage("Are you sure ?");
alertDlg.setCancelable(false); // We avoid that the dialog can be cancelled, forcing the user to choose one of the options
alertDlg.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
});
alertDlg.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
// We do nothing
}
});
alertDlg.create().show();
}Hogyan tudnám elérni, hogy a törlés folyamata csak a jóváhagyás után fusson le?
Teljesen kezdő vagyok, úgyhogy ne kövezettek meg kérlek 
-
hati
addikt
Mint kezdő programozó kérdem. A Thread.sleep() alatt, ha azt egy service-ben használom, akkor ébren van a készülék? Ha igen, akkor mit használjak helyette?
-
hati
addikt
válasz
SirRasor
#3832
üzenetére
Kezdőknek hasznos lehet (én is sokat tanultam belőle).
Ekler Péter- Fehér Marcell - Forstner Bertalan - Kelényi Imre: Android-alapú szaftverfejlesztés -
SirRasor
addikt
Direkt azt tanulom, amit a guglisok fejlesztenek, szóval nem gondoltam rá, hogy előveszem a Delphit. Bár nemmondom picit felkeltetted az érdeklődésemet
Nemnemnem, jó ez, tanulom szépen sorról-sorra, videóról videóra 
hunfatal szerintem picit félreértetted. Csak arról emlékeztem meg, hogy mi volt 10 éve. Nyilván már nem releváns.
-
domel
tag
válasz
SirRasor
#3829
üzenetére
Ha Delphihez értessz, akkor semmi gond, a Delphi már egy ideje fordít be Androidra is programokat.
Szóval a kimenetet átállítod Androidra, kiteszel két buttont és egy Timer komponenst (ez eddig 5-10 másodperc) és leprogramozod azt tíz perc alatt, amivel az Android Studioban egy fél napig szarakodnál.Delphi telepítését addig el se kezdd, amíg a Java legújabb verzióját fel nem teszed, mert nem fogod tudni, hogy mitől nem fordít a Delphi, viszont utána készen kapod azokat a dolgokat amiket az Android Studióban hónapokig kéne tanulni.
-
fatal`
titán
válasz
SirRasor
#3829
üzenetére
A programozás egyszerűbb lett mint régebben, csak közben az igények meg nagyobbak, így aztán komplexebb dolgokat kell fejleszteni (pl. ez a téma sem létezett 10 évvel ezelőtt, mert akkoriban max j2me-ben lehetett bohóckodni szerényebb eszközökre).
Az IDE nem fog helyetted programozni, drag & drop módszerrel soha.
A delphis részt inkább nem kommentálom, maradjunk annyiban hogy egy mostani IDE lényegesen fejlettebb.
-
SirRasor
addikt
Rábíztam az android studiora
Igazából meg se néztem, csak elfogadtam.Meg kell valljam picit rövidítettem. Leszedtem 3 oktatóvideót is, de gondoltam kis gyakorlattal csak meg tudok csinálni akármit.
Visual Studio-ban C#-al ment. De kezdem érezni, hogy ez *picit* bonyolultabb.Egyébként szomorú látni ennyi év távlatából, hogy nem előrefelé fejlődik a programozás bonyolultság terén
Visszatérve egy szimpla timerre, delphiben csak kihúztam a tervezői nézetből a grafikus felületre, majd kétszer rákattintottam, amitől még az OnTick eseményt is kigenerálta. És ez volt..atya isten vagy 10 éve. Visual Studio-nál vagy 5 évet kellett még várni, hogy ennyire alapvető dolgokat belerakjanak. Ha akkor megkérdeztek, azt mondtam volna, hogy 10 év múlva olyan IDE-k lesznek, amikkel már kb. drag&drop módszerrel egy általános iskolás is össze tud rakni egy alap programot (pl: Game Maker).Szóval nekiülök az oktató videóknak, mert úgy néz ki, hogy máshogy ez nem fog menni.
Ja amit föllinkeltem, annak az a baja, hogy a gui frissítéséhez el kéne érnie a guit, amihez nem lehet az eljárás static. A szolgáltatásos class-ban meg csak úgy tudok arra hivatkozni, ha static-ra állítom. Szóval vagy látja egymást a két class eljárása de a gui-t nem, vagy fordítva.
-
Karma
félisten
válasz
SirRasor
#3827
üzenetére
Dehogy vették. Elég alapvető API-ról van szó az Android kezdetei óta. Most nézem a projekted, mindjárt kiderítem, miért sír az IDE. Mármint kideríteném, ha lenne benne Handler. Ez most (az egyébként teljesen inkorrekt) szálas verzió.
Egyébként simán megtalálta nekem mind a
Handlert, mind apostDelayed(Runnable, long)metódusát. Biztos, hogy azandroid.os.Handlert importáltad be? -
SirRasor
addikt
Hajjajjaj.
2 napja egy szimpla kis programmal küzdök és egyszerűen nem megy.Van két gombom meg egy szövegem.
Egyik gombbal elindítok egy service-t, a másikkal megállítom.
A service másodpercenként számol, és a GUI-n lévő szöveget felfrissíti.
Ennyi. Nem egy nagy kaland.Csakhogy guglin nincs fent egy épkézláb működő példa gui-s frissítésre, ami működne is, pedig már egy csomót végignéztem. Mindegiyk példában volt pár sor, amit úgy bepirosozott az android studio, mintha nem is ismerné a parancsokat és sehogy se lehetett megoldani.
Valaki fel tudna dobni egy működő példát?
Vagy az is jó, ha az enyémet sikerül működésre bírni.Nagyon köszönöm előre is a segítséget!
Ja timer a programomban még nincs, de már szintén 2 napos szenvedéssel azt is tudok csinálni

Merthogy a timer új threadet csinál, ezért inkább használjunk handlert. Ezt írják mindenhol.
Na de az énhandlerem.postDelayed(this, <szám>; megintcsak nem működik, mert a .postDelayed-et nem ismeri az android studio...vagy a példák zöme erősen outdated.
-
domel
tag
válasz
WonderCSabo
#3822
üzenetére
valóban az energiakezelés módot kellett intelligensről teljesítményre állítani, és akkor nem zárja be egy idő után. köcce!
-
domel
tag
Helló! Írtam egy programot androidban, ez az első programom, azt csinálja hogy figyel egy text fájlot egy FTP szerveren, és ha változik a tartalma, akkor lejátszik a telefon egy pár másodperces hangot. (a text fájlot egy PHP hozza létre, amit a riasztó mozgásérzékelője hív meg)
Szóval én soha nem írtam még programot androidban, az android kódot Delphi hozza létre, ugyebár a Delphi-hez meg nem kell sok ész, csak beállítottam hogy a kimenet android legyen, és ha azt állítom be hogy IOS, akkor meg ugyanez, függetlenül attól hogy gőzöm nincs az IOS-ról.
A program működik is szépen amíg meg nem unja. Hiába állítottam be a telefonon a védett alkalmazásokban, egy ideig működik, aztán nem. Ha töltőn van a telefon akkor 8-10 órákat elmegy simán, de ha nincs akkor 10 perctől fél órán belül leáll a program működése, és ha bekapcsolom a telefont, akkor újra működik. Van olyan hogy bekapcsolom a telefont, a program sehol, majd mikor elindítom, akkorteljesen újraindul, de olyan is, hogy visszatér a megnyitott program.
Kérdésem: Akkor most meddig fut egy applikáció? Mi történik vele ha kikapcsolom a telefont (alvó módba)?
Csináltam olyant is, hogy deaktivításkor lejátszon egy hangot, de úgy tűnik sose deaktiválódik a program. Lejátszik egy másik hangot ha kilépek, de ez csak akkor fut le, ha a visszanyíllal kilépek a programból, ha az app választóból lövöm ki a programot, akkor még ez sem fut le.
Feltettem az Android Studiót is, de Delphi után túl bonyolult, lehet hogy mégis csak ezzel kéne kezdeni valamit? Olyan oldalt tudnátok ajánlani (de majd vissza is olvasok) ahol komplett programok vannak, ezek Android Studióba betölthetők, és tudnám belezgetni őket??
Köszi a segítséget!
Domel -
fatal`
titán
Egyelőre még csak ismerkedem vele, 1-1 mini projektet portoltam át javaról, de a hivatalos doksi elég jó abból "táplálkozom" nagyrészt, meg elolvastam 1 kotlin for scala developers cikket is (minimális scala tapasztalatom van, ezt is a kotlinlang.orgon találtam).
Ha nem játékokkal foglalkozol, akkor az anko libraryt érdemes még mellé megnézni.
-
vlevi
nagyúr
válasz
SirRasor
#3814
üzenetére
Alapesetben nem kell nagyon vacakolni amkülön felbontások miatt, android studioban sem. Nem kell azonnal mindegyik leiro xml-t megcsinálni. Persze, egy 4"-os, 800*400 lebontású telóra tervezett progi bambán fog kinézni 10" fullhd tableten, de ugyanugy meg fog jelenni azon is, csak furcsán nagy lesz minden. Pont az a jó a layout leíró xml-ekben, hogy a kód babrálása nélkül hozzáigazíthatod más kijelzőkre, fekvő nézethez, vagy akár más nyelvhez a kinézetet. Például a hosszú német szövegek miatt nagyobb helyet hagysz a feliratnak, a gombokat nem mellé, hanem aláteszed, satöbbi. A droid kiválasztja a helyzetnek legjibban megfelelő xml-t, és abból tölti be az activity kinézetét.
-
Karma
félisten
válasz
SirRasor
#3814
üzenetére
Természetesen natív Android fejlesztéshez Android Studiót. A Xamarin és a VS más történet (bár egyébként ha jól végzed a dolgod, a különböző felbontások és eszközök támogatása miatt ott is ugyanúgy belefutsz a többféle resource-ok kezelésébe).
Más komoly eszköz nincs, de nincs is rá szükség.
-
SirRasor
addikt
Üdv!
Milyen IDE-t használtok fejlesztéshez?
Eléggé kezdő vagyok még és nézelődöm. Visual Studio C#-al meg Xamarinnal nagyon csábító, csak beleütköztem pár hibába. (service-t kéne készítenem, de a xamarin dokumentáción nem megyek el, példa meg alig van) Illetve egy nagyon alap releaselt apk is 5MB-nál kezdődik

Régebben Android Studio-ban próbálgattam ezt-azt, csak a sok felbontásra való külön GUI rettentett el
Eclipse-t meg java miatt ismerem, de androidra még nem fejlesztettem benne (nagyon java-ra se
)
Más esetleg, ami még jó?Ja mit szeretnék? A lehető legkisebb energiabefektetéssel alapszintű programokat készíteni. Nem tudom melyik IDE tudna ebben a legjobban segíteni.
Az MIT App Inventor 2 nem elég jó; annál azért bonyolultabbakat szeretnék

Bár józan ész alapján nem az Android Studio a legjobb? Ha már egyszer az androidos guglisok fejlesztik..

-
hati
addikt
Sziasztok!
Van metódus amivel meg lehet megtudni egy saját L3 alhálózatban lévő IP cím MAC címét?
-
#16514048
törölt tag
Sziasztok!
Kicsit talán off, de nem találtam jobb topikot.
Szeretnék készíteni egy egyszerű 2D játékot, de a programozáshoz nem értek eléggé, így egy olyan engine-re lenne szükségem, ami nem igényel programozó tudást (vagy csak minimálisat).
Egyelőre a Construct 2 és a Unity ingyenes verziója + PlayMaker plugin a két kiszemelt. Van valakinek tapasztalata ezekkel, melyiket érné meg beszerezni? Esetleg tudtok ezektől jobbat elérhető áron?
-
Mr Dini
addikt
Sziasztok!
Egy sl4a-s python kódot nem lehet valahogy apk-vá 'konvertálni'? Mintha olvastam volna olyasmit, hogy az Eclipse képes lenne rá.
-
Sziasztok!
Létezik olyan API hívás, ami egy szoftver által adott hanggal helyettesíti a mikorfon hangját, és a hangszóróból jövő hangot pedig egy szoftvernek továbbítja?
Olyan progit szeretnék írni, ami a hívást voip-pal továbbítja máshova; kicsöngéssel együtt. Vagyis szoftveres hívásátirányítást szeretnék WIFI-n keresztül.
Még nem nagyon vagyok tapasztalt Android témában, de szeretem elsőre nagy fába vágni a fejszémet, abból tanul az ember.

Köszi!
-
Lacuss20
senior tag
Hogy ki milyen oldalt tud ajánlani, szeretnék több kezdő "tutorialt" végig csinálni, ne csak egy szemszögből lássam a dolgot.
Új hozzászólás Aktív témák
- Ezt nézed TikTokon és YouTube-on a telefonodon
- Samus: Linkin Park - In The End (Demo)
- A piac legerősebb kameráját ígéri a Xiaomi 17 Ultra
- Autós kamerák
- Azonnali informatikai kérdések órája
- GL.iNet Flint 2 (GL-MT6000) router
- Karácsonykor nyerte meg a Honor az üzemidőcsatát
- A rend őrei
- PlayStation 5
- GL.iNet OFF topik
- További aktív témák...
- Okosóra felvásárlás!! Samsung Galaxy Watch 5 Pro, Samsung Galaxy Watch 6 Classic
- BESZÁMÍTÁS! ASROCK B650M R7 7700 32GB DDR5 1TB SSD RX 6900XT 16GB Zalman Z1 PLUS Seasonic 750W
- Razer Barracuda X Chroma Black gamer Fejhallgató
- BESZÁMÍTÁS! SAPPHIRE B650M R7 8700F 32GB DDR5 512GB SSD RX 6800XT 16GB Zalman Z1 GIGABYTE 750W
- BESZÁMÍTÁS! ASUS H510M i5 11400F 16GB DDR4 512GB SSD RX 6700 10GB Zalman T4 Plus Chieftec 650W
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest








A lehető legrosszabb megközelítés ez, ha valóban ezt ajánlják bármely fórumon, azt a helyet messze kerülni kell.
Na mindegy, pontról pontra kijavítgattam mindent, de a headereknél elakadtam.



![;]](http://cdn.rios.hu/dl/s/v1.gif)
Nemnemnem, jó ez, tanulom szépen sorról-sorra, videóról videóra




