Hirdetés
- Android alkalmazások - szoftver kibeszélő topik
- Ultrák küzdelme várható Európában 2026-ban
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- Samsung Galaxy A54 - türelemjáték
- Google Pixel topik
- Android szakmai topik
- Mit várunk 2026-ban a mobilpiacon?
- Motorola Edge 50 Ultra - szépen kifaragták
- Xiaomi Mi 8 - így csinálunk csúcsmodellt Mi
- Samsung Galaxy A56 - megbízható középszerűség
Új hozzászólás Aktív témák
-
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
Új hozzászólás Aktív témák
- DOKKOLÓ BAZÁR! Lenovo, HP, DELL és egyéb más dokkolók (TELJES SZETTEK)
- Samsung Galaxy S22 Ultra 256GB, Kártyafüggetlen , 1 Év Garanciával
- 174 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5070Ti (ELKELT)
- Vivo V50 12/512GB,Újszerű,Adatkabel,12 hónap garanciával
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


