MySQL veritabanı ile Android arasında nasıl bağlantı kulur?

Arkadaşlar merhaba,
MySQL veritabanı ile Android arasında nasıl bağlantı kurabilirim? Kaynak atabilecek, yardımcı olabilecek var mı?
-İyi çalışmalar

F
0 kişi takip ediyor.
Misafir olarak yayınla
17
17 CEVAP

httprequest ile veri alis verisi yapabilirsin.
Volley kutuphanesi isini gorur

O

merhabalr. İnternet uzerinde bircok ornegi var. Ancak direk veritabani ile baglanti kurman buyuk bir guvenlik acigi. Apk dosyalari decompile edildigi icin direk veritabani adreslerin meydanda olacak. Sen en iyisi web service bağlantılarıni arastir.

A

Json yap gitsin hic ugrasma

S

Json ile alaklı örnekler var ama biraz karışık geldi, kolay örnekler varsa paylaşabilir misiniz?

Ferdi Büyükeskil 3 yıl

http://www.dyn-web.com/tutorials/php-js/json/array.php Bu php ile json yapma. Olumune kolaydir. Androidden de yaz google cikar ole kolay bisi sordun ki yapamamaya imkan yok

Sezer Tasbey 3 yıl

burada basit bir şekilde Sqlite ile anlattığım örnek var bir incele istersen https://github.com/VB10/VeriTabaniFull

V

Ben de senin gibi yeni yeni bağlantı kurmaya çalışıyorum Symfony ile web servis yazacaksın. Verileri json olarak yolla yip retrofit kütüphanesi ile android studio dan json verilerini alacaksın.

A

firebase kullanırsan daha rahatlıkla işlemleri çözebilirsin

Veli Dramalı 3 yıl

Kolaylığı nerde sağlıyor bakaym ben

Azad Geçgel 3 yıl

web servis vs yazmana gerek yok araştır bana hak verirsin

Veli Dramalı 3 yıl

Hmm tamam kardeşim bakacam mutlaka Teşekkürler

Azad Geçgel 3 yıl

Çok temiz. Net service ornegim var işine yararsa verebilirim

M

Olabilir valla şuan söylenilen herşeyi araştırıyom inceliyorum

Ferdi Büyükeskil 3 yıl

Sen sadece servisi çağırıp gerekli parametre leri geciyorsun json yada php gibi çorba da değil gayet temiz ve bütün bağlantı stringleri sunucuda

M

Bekliyorum

Ferdi Büyükeskil 3 yıl

Su servis ornegını atarmısın biz de nasıplenelım

İbrahim Tvkc 3 yıl

Hem c# hem android soap kismını eve gecince paylasicam arkadaşlar

Metin Yeşiltaş 3 yıl

Firebase kullanabilrsn bunun için yada bir webservis yazablrsn

V

Burada importlarımız olacak zaten siz servisi ilk oluşturduğunnuzda onlar gelmiş olucak

[WebService(Namespace = " http://sitem.com/androidservice")]
// To allow this Web Service to be called from script, using http://ASP.NET/ AJAX, uncomment the following line.
[System. Web. Script. Services. ScriptService]
public class androidservice: System. Web. Services. WebService
{
[WebMethod] // android kısmından kullanmak istediğimiz her metod için bu anahtarı metodun başında kullanıyoruz
public string metos_ismi(string user)
{
String yanit="";
String server = "localhost";// burası değişmiyor
String database = ""; // database ismi
String uid = ""; // kullanıcı adı
String password = ""; // parola
String connectionString = "SERVER=" + server + ";" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
MySqlConnection connection = new MySqlConnection(connectionString);

try
{
if (connection. State == ConnectionState. Closed)
{
connection. Open();
yanit="bağlantı açıldı !";
}
cath(exception ex)
{
yanit="bağlantı hatası";
}
return yanit; //burada soap için yanıtımızı döndürüyoruz bu kadar
}
}
}

M

Bizzat kullandigim kodlardır anlamadığıniz yeri sorabilirsiniz

M

Ana class içinde bu 3 değişkeni tanımlıyoruz

*

public final static String URL = " http://sitem.com/androidservice.asmx?op=Hello"; burasıda sitede sizin çağıracağınız metot ismi olacak metodu sitede test ederken browsern url kısmında metoda tıkladığınızda ne görüyorsanız onu yazacaksınız
public static final String NAMESPACE = ""; // burası http şeklinde servicenin çalışacağı dizin olacak örnek " http://sitem.com/androidservice" gibi
public static final String SOAP_ACTION_PrefIX = "/"; burası ayıraç dokunmuyoruz

*

burası ana soap clasımız 

private class AsyncTaskRunner extends AsyncTask { 

* 
burada değişken tanımlamaları yapılabilir 
* 

@Override 
protected String doInBackground(String... Params) { 

publishProgress("mesaj"); 

try { 

* 
bunlar soapın kendi ayarları 
* 
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope( 
SoapEnvelope. VER11); 

SoapObject request = new SoapObject(NAMESPACE, METHOD); 

* 
burada serviste kullandığımız metodlara parametre geçiriyoruz 
* 
PropertyInfo parametre = new PropertyInfo(); 
parametre = new PropertyInfo(); 
parametre. SetName("metodun aldığı parametre ismi"); 
parametre. SetValue("gönderilen değer"); 
parametre. SetType(String. Class); // değişken tipi 
request. AddProperty(parametre); 
* 
parametnre sayısı birden fazla ise hemen üstte oluşturduğumuz PropertyInfo sınıfından türeyen parametre sınıfını 

parametre = newPropertyInfo(); 
şeklinde yeniden tanımlayıp altına aynen yukarıdaki gibi değişkenlerimizi verebiliriz ve bunu kaç parametre geçireceksek o kadar yapmalıyız burada dikkat edilmesi gereken bir konu mesela servisteki metod örn 5 parametre alıyorsa siz 5 parametreyide burada sırasıyla belirtmek zorundasınız soldan sağa olacak şekilde sadece boş parametrelerin setvalue kısmını "" şeklinde boş bırakın yeter 
* 
envelope. DotNet = true; // burası önemli çünkü. Net ile çalışırken bunu aktif yapmalıyız 
envelope. BodyOut = request; 
httpTransportSE transport = new httpTransportSE(URL); 
try { 
transport. Call(NAMESPACE + SOAP_ACTION_PrefIX + METHOD, 
envelope); 
} catch (IOException e) { 
e. PrintStackTrace(); 
} catch (XmlPullParserException e) { 
e. PrintStackTrace(); 
} 

if (envelope. BodyIn != null) { // burada servisten dönen cevap envelope. BodyIn içine alınıyor boş olup olmadığını kontrol ediyoruz 

SoapPrimitive resultSOAP = (SoapPrimitive) ((SoapObject) envelope. BodyIn) 
.getProperty(0); 
resp = resultSOAP. ToString(); // yanıt boş değilse ki bu hata mesajı bile olabilir yanıtı resp değişkenine atıyoruz ve resp return ediliyor 
} 
} catch (Exception e) { 
e. PrintStackTrace(); 
resp =e. GetMessage(); 
} 
return resp; 
} 

/** 
* @see android. Os. AsyncTask#onpostExecute(java. Lang. Object) 
*/ 
@Override 
protected void onpostExecute(String result) { 

// burası resp return edildikten sonra çalışan blok gelen resp değeri ni burada alıp istediğiniz gibi action yapabilirsiniz 

super. OnpostExecute(result); 
} 

@Override 
protected void onPreExecute() { 
// burası doInBacground dan önce ve soap içinde aynı şekilde olmak üzere en önce çalışan metodtur burada gerekli ön değişken işlemleri yapılabilir değer atama vs 

super. OnPreExecute(); 
} 

@Override 
protected void onProgressUpdate(String... Text) { 
// Toast. MakeText(ctx, text[0], Toast. LENGTH_LONG).show(); 

//burasıda işlemler devam ederken çalışan bölümdür mesela text değişkeninin içine doinbackgraund içinde publishProgress("mesaj"); şeklinde bir ibare kullandım ben siz orada istersenin bilgilendirme amaçlı olarak progressbar falan kulllanabilirsiniz 
super. OnProgressUpdate(); 
} 

}
M

Ayrıca ben bu yapıyı kullanarak ses video dosyasida gonderebiliyorum aynı şekilde string olarak burada base64 formatında encode edip gönderiyorum service tede decode edip kaydediyorum çok kolay oluyor isterseniz yarin konuda gönderebilirim

M

Bu arada soapin çalışması için ksoap2 jar dosyasının olması gerekir internetten kolayca bulabilirsiniz bulamazsanız gonderirim

M

bir servis yazıp ksoap kütüphanesini kullanarak onla bağlantı kur

F

Nasıl bağlantı kuracağını paylaştım zaten yapmasi gereken de o

M

Metin Yeşiltaş aykut hocayla bir akrabalık var mı

F

Maalesef

M