#googleplus etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
#googleplus etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

10 Nisan 2019 Çarşamba

ANDROID JSOUP

Merhaba,
Bu yazimdan Jsoup kullanimi ile ilgili ornek yapacagim.
Oncelikle Jsoup nedir kisaca ondan bahsedelim. Jsoup html parse eden yani ayristiran bir java kutuphanesidir. Jsoup ile html sayfalarindan css elemanlarini kullanarak veri cekebilir ve bu verileri uygulamamiz icinde kullanabiliriz.

Dezavantaji ise web sitesinin html elemanlarinda degisiklik yapildiginda istedigimiz veriyi cekemeyebiliriz.

Oncelikle ilk adim olarak build.gradle a jsoup u ekleyelim.

compile 'org.jsoup:jsoup:1.11.3'



Simdi de Manifest e gidip internet izni verelim cunku uygulamamiz internetten veri cekecek.

Simdi layoutumuza bir buton koyalim ve o butona tiklandiginda http://sengamze.blogspot.com/2019/04/android-resim-ekleme.html
bu linkte yer alan yazimin basligini ekrana yazdirsin.

package gykizmir.com.jsoupexample;

import android.app.ProgressDialog;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

import java.io.IOException;


public class MainActivity extends AppCompatActivity {

    Button learnTitleBtn;
    TextView titleOfBlog;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        titleOfBlog = (TextView) findViewById(R.id.learnTitle);

        learnTitleBtn = (Button) findViewById(R.id.learnTitle);

        learnTitleBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                new Title().execute();
            }
        });


    }

    private class Title extends AsyncTask<Void, Void, Void>{

        String url = "http://sengamze.blogspot.com/2019/04/android-resim-ekleme.html";
        String title;
        ProgressDialog progressDialog;

        @Override
        protected void onPreExecute(){
            super.onPreExecute();
            progressDialog = new ProgressDialog(MainActivity.this);
            progressDialog.setTitle("Jsoup Example");
            progressDialog.setMessage("Title is retrieving");
            progressDialog.setIndeterminate(false);
            progressDialog.show();
        }

        @Override
        protected Void doInBackground(Void... params) {
            try {
                Document document = Jsoup.connect(url).get();
                title = document.title();
            } catch (IOException ex){
                ex.printStackTrace();
            }

            return null;
        }

        @Override
        protected void onPostExecute(Void avoid){
            titleOfBlog.setText(title);
            progressDialog.dismiss();
        }
    }

}




layoutumuz ise asagidaki gibi olmali.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="gykizmir.com.jsoupexample.MainActivity">

    <Button
        android:id="@+id/learnTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Learn Title"/>


    <TextView
        android:id="@+id/title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="Title" />


</LinearLayout>




Calistirdigimizda ise ekran goruntusu asagidaki gibidir.

          

4 Nisan 2019 Perşembe

Android - Move layouts up when keyboard is shown

Android uygulamalarimizda ekranimizdaki ogeler ekrani kapliyorsa o ekranda klavey acildiginda itemlerin bazilari klavyenin altinda kalir. Bu durumda ilgili edittex secildiginde o layout yukari tasinir ve ilgili item in gorunmesi saglanir.

Bunu yapmamizi saglayan kod parcasi ve nasil yapilcagi asagidadir.

Activity nin onCreate() methoduna alttaki kod yapistirilir.

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);

3 Nisan 2019 Çarşamba

Android Resim Ekleme

Merhaba,
Bir android projesi olusturdugumuzda android icinde var olan resimleri nasil ekleriz onu anlatacagim.
File -> New -> Vector Asset diyoruz ve ekrana gelen icon listesinden birini seciyoruz.


Daha sonra layoutlarda @drawable altindan ekledigimiz dosya adini veriyoruz.


<item    android:id="@+id/navigation_diet"    
android:icon="@drawable/ic_room_service_black_242dp" 
 android:title="@string/title_diet" />


24 Mart 2019 Pazar

GELECEĞİ YAZAN KADINLAR PROJESİ

Merhaba,
Bugun benim de bir parcasi oldugum projeden bahsetmek istiyorum. Turkcell kadinlar icin Android egitimi duzenliyor. Sinif ici / online egitim verip daha sonra bir proje gelistirmelerini istiyor, ve basarili olan kadinlari bir cok odul bekliyor. Hem projelerine destek alabiliyor hem is imkanlarina sahip oluyorlar hem de teknolojinin en guzel inceliklerini ogrenip bir proje gelistirebiliyorlar.

2017 yilinda ben de ogrenci olarak bu projeye basvurmustum ve haziran - temmuz aylarinda egitimlerimi almistim. O zaman universiteden mezun olmus, ise baslayacagim Eylul ayina bostum ve o boslugumu boyle bir surecle degerlendirmistim.

Ve artik eminim ki zamanimi degerlendirme seklim cok guzel bir yontemmis. Cunku hem android ogrendim ve bir proje gelistirdim hem de yari finale katilma hakki kazanmistim. Projeme buradan ulasabilirsiniz.

Kendi kendime de cok guzel seyler basarilara imza atabilecegimi kanitlamis oldum 😏

Daha sonra Turkcell benimle iletisime gecip bu sene projenin tekrar duzenlecegini ve egitmen olmami teklif etti. Tabiki bu teklife atladim. Cunku bu projeden ben yararlandiysam ben bir seyler ogrendiysem bunu diger insanlarla da paylasmaliyim ki onlar da yararlansin, hem de ulkemizde kadinlarimiz her alanda aktif olsun ☺

Kabul eden egitmen adayi arkadaslarimizla birlikte Turkcell in daveti uzerine Istanbul a gittik. Burada hem surec hakkinda bilgi edindik hem de ekipce bir proje gelistirdik. O projeme de buradan ulasabilirsiniz.

Daha sonra da Izmir Turkcell Plaza da katilimcilara gun boyu suren bir Java egitimi verdik.

Simdi ise Android egitimleri ile devam ediyoruz. Her sey gibi bilgi de paylastikca guzel ve degerli 😊😊😊😊








23 Mart 2019 Cumartesi

ANDROID - FINE LOCATION VE COARSE LOCATION FARKI

Android de uygulamamiz eger konuma erisme ihtiyaci duyuyorsa o zaman AndroidManifest ten konum erisimine izin vermemiz gerekir.

2 izin tipinin farkindan bahsedecegim:


1. The Fine location provides better and accurate locations.

Requires permission,

ACCESS_FINE_LOCATION

<uses-permission android:name=”android.permission.ACCESS_FINE_LOCATION” />

It gives permission for using both GPS_PROVIDER and NETWORK_PROVIDER

or  GPS_PROVIDER only for determining the position.

2. The Coarse location provides less accurate locations.

Requires permission,

ACCESS_COARSE_LOCATION

<uses-permission android:name=”android.permission.ACCESS_COARSE_LOCATION” />

It gives permission for using both NETWORK_PROVIDER only for determining the position.




9 Aralık 2018 Pazar

Android Uygulamalara Dil Secenegi Ekleme

Merhaba bu yazimda android projelerine dil destegi eklemeyi anlatacagim. Diyelim bir uygulamamiz var ve bu uygulamanin baska dil secili telefonlarda o dilde calismasini istiyoruz. Burada yapmamiz gereken uygulamamizdaki her kelimenin diger dildeki(uygulamanin calistigi telefon dilinde) karsiligini yazacagimiz bir dosya olusturmak.

Bunun icin res klasorune sag tiklayip New -> Android resource directory -> Karsimiza cikan ekrandan Locale secip -> Gelen listeden istedigimiz dili secmektir.

Ornegin Ingilizce icin bu sekilde bir secim yaptigimizda values-en adinda, Almanca icin ise values-de adinda bir klasor olusturacaktir. Simdi ise yapmamiz gereken her values klasorunun altina strings.xml adinda bir resource file olusturmak. (Bu arada gorunumu Project olarak degistirelim. Ben Android gorunumundeyken olusturdugum klasorleri gorememistim)

Dosyalarin nasil gorundugune alttaki resimden bakabilirsiniz.



















Simdi ise ingilizce karsiligi olmasi gereken kelimeleri strings.xml den kopyalamak ve values-en e altindaki strings.xml e yapistirmak. Orada ingilizce karsiliklarinii yazmak. Asagida bir ornek yapacagim.

Alttaki turkcedeki strings.xml

<resources>
    <string name="app_name">CheckBoxExample</string>
    <string name="btnName1">GONDER</string>
    <string name="text1"> Cinsiyetinizi secin</string>
</resources>





Alttaki ise values-en alttaki strings.xml

<?xml version="1.0" encoding="utf-8"?><resources>
    <string name="app_name">Ornek Uygulama</string>
    <string name="btnName1">SEND</string>
    <string name="text1">Choose your gender</string>
</resources>

Ancak bu sekilde ayarlama yaptiktan sonra ekranda gosterecegimiz mesajlarin

statik degil dinamik olmasi gerekir. Ornegin bir buton icin :

<Button    
  android:id="@+id/sec"
  android:text="@string/btnName1"    
  android:gravity="center"  
  android:layout_width="wrap_content"    
android:layout_height="wrap_content" />

Uygulamanin calistigi telefondaki dil Turkce ise turkce , ingilizce ise ingilizce 
karsiliklari yazar. 
Iyi calismalar

13 Haziran 2016 Pazartesi

ANDROİD SİLİNMEYEN FOTOĞRAFLAR - GALERİ - GOOGLE+ - FACEBOOK - PİCASA

Herkese merhaba,
Bu yazimda silinemeyen, senkronizasyon ile galerimize gelen resimleri nasil silicegimizden bahsedecegim.Samsung Galaxy S3 markali telefonuma yeni format atmis olmama ragmen galeriyi actigimda senkronizasyon nedeniyle tum resimlerimin (hangouts tan, google+ dan ) orda oldugunu gordum.Bundan nasil kurtulacagimi arastirdim ancak ne yaparsam yapayim resimlerim siliniyor sonra tekrar orda oluyorlardi. Biraz da kendim ugrasmayi denedim ve soyle bir secenek buldum ve cozumun o oldugunu anladim.
    Ilk Adimda Ayarlar -> Hesaplar -> Google diyoruz.Ve acilan Google hesabimiza tikliyoruz.Karsimiza senkronizasyon ayarlari sayfasi geliyor.Burdaki uygulamalardan resimlerimin gelmis olabilecegini dusundugum uygulamalarin karsisindaki tiki kaldirdim.Bu uygulamalar :
Google+, Google+ Fotograflar, Google+ Yuklemeleri, Picasa Web Albumleri idi. Sizler de resimlerinizin hangi uygulamalardan gelmis olabilecegini dusunuyorsaniz o uygulamalardaki tik isaretini kaldirabilirsiniz.

    Ikinci Adimda ise Ayarlar - > Uygulamalar -> Galeri diyerek Veriyi Sil secenegini seciyoruz.Ve bu sekilde Galerimizde bulunan sekronizasyon ile gelmis tum resimler siliniyor.Diger resimlerimize bir sey olmuyor.
    Dedigim gibi bu yontemi Samsung Galaxy S3 telefonumda denedim ve basarili oldum. Umarim herkese yardimci olmusumdur.Ayrica daha fazlasi icin ekran resimleri de ekliyorum.

Iyi gunler dilerim...