Android Studio ile projenizdeki API keyleri gizleme

Merhabalar
Android projelerinizde mutlaka dışarıdan dahil edeceğiniz, başkalarıyla paylaşmayacağınız, size özel API keyler ya da buna benzer değişkenleri nasıl barındırmamız gerekiyor bu yazıda bundan bahsetmeye çalışacağım.

Şimdi şöyle düşünün bir projeniz var ve içerisinde sadece sizin görmek isteyeceğiniz başkalarıyla paylaşmamanız gereken bir API key kullanıyorsunuz ve projenizi bir VCS(Github,Bitbucket,Gitlab vs) ile paylaşmak durumundasınız. İşte bu durumda alttaki adımları takip ederek API key değişkeninizi rahatlıkla gizleyebilirsiniz.

Öncelikle bir Git VCS ile çalışacağımızdan projenizin ana dizinine .gitignore dosyası oluşturuyoruz. Bunun için Android Studio’da sol tarafta bulunan Project görünümünden alttaki gibi Project kısmını seçiyoruz.

Ekran Resmi 2016-08-23 14.56.19

Daha sonra projenin ana dizinine sağ tıklayıp New -> File -> .gitignore dosyası oluşturuyoruz.
Ayrıca yeri gelmişken belirteyim bu dosya içerisine yazdığınız dosya isimleri kesinlikle git servera push edilmeyecektir. Şimdi bu dosya içerisine gradle.properties dosya ismini ekliyoruz. Evet git kısmı ile ilgili işlemlerimiz bitti. Şimdide API key değişkenini nasıl tanımlayacağımıza geçelim. Bunun için altta gördüğünüz gibi biraz önce .gitignore dosyasına eklediğimiz gradle.properties dosyasını açıyoruz ve içerisine API key değişkenini ekliyoruz.

Ekran Resmi 2016-08-23 15.05.43

Şimdi yine aynı dizinde bulunan build.gradle (Module:app) dosyasını açıp android kapsamının sonuna alttaki kodları ekliyoruz ve üst barda çıkan Sync Now tıklıyoruz.

Evet şimdi sıra geldi bu değişkeni çalıştığımız java kodları arasına almaya.
Şu aşamaya kadar alttaki kodlarla bu değişkeni bir String değişkene atayıp kendi kodlarımız arasına alabiliriz.

Ancak benim size tavsiyem bu şekilde değilde daha çok OOP standartlarına uymak amaçlı alttaki yöntemle kodlarınızda kullanmanız. Bunun için Constants adında bir class oluşturun ve içerisine static bir değişken tanımlayın.

Kendi kodlarınızda da artık

şeklinde kullanabilirsiniz.

Hepsi bu kadar. Umarım faydalı olmuştur.

Kaynaklar :

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.