Ben gönderdiğin linklerdeki örneklere bakarak işlemi gerçekleştirmeye çalıştım ancak bir sorunla karşılastım.Sorunu aşağıya belirtecegim, fakat ondan önce belirtmediğim birşey daha var onu da sana aktarmak istiyorum, loading ekranı olusturmak istememdeki sebep bir radyo uygulaması geliştirmeye calısıyorum ve kullanıcı play tusuna bastıgında o arada ekrana bos bos bakmasın diye loading koymak istedim, yani kullanıcı play e bastıgında açılıyor lütfen bekleyiniz diye bir loading ekranı acılacak ve o sırada da arka planda belirttiğimz url de radyo yayını varmı yok mu kontrol edip, varsa devam edecek yoksa yayın bulunamadı diyecek. Çünkü bazen internet radyolarının yayınları kesiliyor, açılmıyor. Eğer ben loading koymazsam kullanıcı programın calısmadıgını bozuk oldugunu sanacak böyle bir durumla karsılastıgında. Durum bundan ibaret, şimdi sıkıntıyı paylasıyorum seninle, doInBackgraound metodu içinde vogelladaki kodu denemeye calıstım ve sonra birde progress dialog kullanmak istedim ancak , progress dialog kullandıgımda normalde 4 tane tab olan ekranımda ilk açılışta tek bir tab gösteriyor ve AnasayfaActivity icindeki button, seekbar, logo, arka planresmi vs gibi bütün ne varsa yok ediyor, hatanın resmini ve Anasayfa activity icindeki kodları gonderiyorum.
package com.denemeservis;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import android.R.string;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.view.Window;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
import android.widget.Spinner;
import android.widget.Toast;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ToggleButton;
public class AnasayfaActivity extends Activity implements
OnCheckedChangeListener, OnSeekBarChangeListener {
private Button digerRadyo;
private Button mesajGonder;
private Button kamera;
private ToggleButton playStop;
private AudioManager manager;
private SeekBar ses;
int volume = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.anasayfa2);
//this.requestWindowFeature(Window.FEATURE_NO_TITLE);
new AsyncTaskClass().execute();
Log.d("onCreate", "onCreate");
baslasinUI();
if (!networkKontrol()) {
baglantiMesaji();
}
manager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
int maxVolume = manager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
int curVolume = manager.getStreamVolume(AudioManager.STREAM_MUSIC);
ses.setMax(maxVolume);
ses.setProgress(curVolume);
digerRadyo = (Button) findViewById(R.id.btndigerRadyo);
digerRadyo.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent radyo = new Intent("android.intent.action.DigerRadyo");
startActivity(radyo);
}
});
mesajGonder = (Button) findViewById(R.id.btnmesajGonder);
mesajGonder.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent radyo = new Intent("android.intent.action.Mesaj");
startActivity(radyo);
}
});
kamera = (Button) findViewById(R.id.btnKamera);
kamera.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent radyo = new Intent("android.intent.action.Kamera");
startActivity(radyo);
}
});
}
private void baslasinUI() {
Log.d("UI", "UI");
playStop = (ToggleButton) findViewById(R.id.tglbtnPlayStop);
playStop.setOnCheckedChangeListener(this);
ses = (SeekBar) findViewById(R.id.skbrSes);
ses.setOnSeekBarChangeListener(this);
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
//try {
if (isChecked) {
Log.d("play", "play");
startService(new Intent(this, DinlemeServisi.class));
//Toast.makeText(getApplicationContext(), "Açılıyor, Lütfen Bekleyiniz!", Toast.LENGTH_LONG).show();
AsyncTaskClass taskClass = new AsyncTaskClass();
taskClass.execute(new String[]{ "http://85.95.248.115:8014/" });
} else {
Log.d("stop", "stop");
stopService(new Intent(this, DinlemeServisi.class));
}
try {
if(DinlemeServisiRahmetFM.class !=null){
stopService(new Intent(this,DinlemeServisiRahmetFM.class));
}if(DinlemeServisiYurtFM.class !=null){
stopService(new Intent(this,DinlemeServisiYurtFM.class));
}if(DinlemeServisiRisaleFM.class !=null){
stopService(new Intent(this,DinlemeServisiRisaleFM.class));
}if(DinlemeServisiIrsadFM.class !=null){
stopService(new Intent(this,DinlemeServisiIrsadFM.class));
}if(DinlemeServisiHikmetFM.class !=null){
stopService(new Intent(this,DinlemeServisiHikmetFM.class));
}else if(DinlemeServisi.class !=null){
startService(new Intent(this,DinlemeServisi.class));
}
} catch (Exception e) {
e.printStackTrace();
}
/*} catch (Exception e) {
e.printStackTrace();
}*/
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
manager.setStreamVolume(AudioManager.STREAM_MUSIC, progress, 0);
volume = progress;
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
Toast.makeText(getApplicationContext(),
"Ses : " + Integer.toString(volume), Toast.LENGTH_SHORT)
.show();
}
public boolean networkKontrol() {
try {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = cm.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnectedOrConnecting()) {
return true;
}
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
protected void baglantiMesaji() {
try {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("İnternet Bağlantınıza Ulaşamadık!" + "\n" +"Lütfen Bağlantınızı Kontrol Ediniz!")
.setPositiveButton("Tamam",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
System.exit(0);
}
});
final AlertDialog alert = builder.create();
alert.show();
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode==KeyEvent.KEYCODE_BACK){
AlertDialog.Builder backbuilder = new AlertDialog.Builder(this);
backbuilder.setMessage("Uygulamadan Çıkmak Üzeresiniz!").setTitle("ÇIKIŞ").setCancelable(false)
.setPositiveButton("Evet", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
AnasayfaActivity.this.finish();
moveTaskToBack(false);
try {
if(DinlemeServisiRahmetFM.class !=null){
stopService(new Intent(getApplicationContext(),DinlemeServisiRahmetFM.class));
}if(DinlemeServisiYurtFM.class !=null){
stopService(new Intent(getApplicationContext(),DinlemeServisiYurtFM.class));
}if(DinlemeServisiRisaleFM.class !=null){
stopService(new Intent(getApplicationContext(),DinlemeServisiRisaleFM.class));
}if(DinlemeServisiIrsadFM.class !=null){
stopService(new Intent(getApplicationContext(),DinlemeServisiIrsadFM.class));
}if(DinlemeServisiHikmetFM.class !=null){
stopService(new Intent(getApplicationContext(),DinlemeServisiHikmetFM.class));
}else if(DinlemeServisi.class !=null){
stopService(new Intent(getApplicationContext(),DinlemeServisi.class));
}
} catch (Exception e) {
e.printStackTrace();
}
}
})
.setNegativeButton("Hayır", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
AlertDialog alertDialog = backbuilder.create();
alertDialog.show();
}
return super.onKeyDown(keyCode, event);
}
private class AsyncTaskClass extends AsyncTask<String, Void, String>{
@SuppressWarnings("unused")
String message;
ProgressDialog progressDialog;
@SuppressWarnings("unused")
public void resfreshTask(String message){
this.message = message;
this.progressDialog = new ProgressDialog(AnasayfaActivity.this);
}
@Override
protected void onPreExecute() {
progressDialog.setMessage("Açılıyor, Lütfen Bekleyiniz!");
progressDialog.setIndeterminate(true);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.setCancelable(true);
progressDialog.show();
super.onPreExecute();
}
@Override
protected String doInBackground(String... urls) {
String response = "";
for(String url : urls){
DefaultHttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
try {
HttpResponse execute = client.execute(httpGet);
InputStream content = execute.getEntity().getContent();
BufferedReader buffer = new BufferedReader(new InputStreamReader(content));
String s = "";
while ((s = buffer.readLine()) != null) {
response += s;
}
} catch (Exception e) {
e.printStackTrace();
}
}
return response;
}
@Override
protected void onPostExecute(String result) {
/*if(progressDialog.isShowing()){
progressDialog.dismiss();
}*/
super.onPostExecute(result);
}
}
}