Firebase Dynamic Links & Android

Firebase Dynamic Links Öyle bir link olsun ki; Masaüstü bilgisayarımda linke tıkladığımda kişisel web sitem açılsın, Eğer mobil cihazımdan linke tıklarsan; Uygulama cihazda yüklü ise uygulamam açılsın (Belirtmiş olduğum Activity vs.), Uygulama cihazda yüklü değilse Google Play Store veya App Store açılsın, Uygulama cihazda yüklü olsa bile eğer belirttiğim versiyon kodundan eski bir sürüm varsa yine Google Play Store vs. açılsın, … gibi sorulara tek bir link ile cevap verebilirsiniz....

February 20, 2023 · 3 min · Me

Firebase Dynamic Link & Deep Link & App Link

Öncelikle ne yapmak istiyoruz? Her hangi bir yerden uygulamamıza yönlendirme yapmak ve ilgili sayfayı/içeriği açmak Eğer uygulamamız yüklü değil ise kullanıcıyı direkt olarak store a yönlendirmek Web browser üzerinden açılmış ise ilgili web sayfasına yönlendirmek Dynamic link üretirken kendi domain adresimizi kullanmak Hangi linke ne kadar tıklanmış vs. gibi temel analytics verilere erişmek. Deep Link & App Link Her ikisi de aynı amaca hizmet etmesine rağmen aralarında ki fark linke tıklanma ve güvenilirlik oranını ciddi derecede etkileyecektir....

February 9, 2023 · 4 min · Me

İngilizce Kaynakları

Sıfırdan yabancı dil öğrenmek/mevcut seviyesini geliştirmek isteyenler için faydalı uygulamalar ve siteler olmak üzere 37 ücretsiz kaynak: Reading (Okuma) News in Levels: https://newsinlevels.com Engoo Daily News: https://engoo.com.tr/app/daily-news Breaking News English: https://breakingnewsenglish.com Mentalfloss: https://mentalfloss.com Science Alert: https://sciencealert.com The National Geographic: https://nationalgeographic.com Mashable: https://mashable.com Voice of America: https://learningenglish.voanews.com/ British Council: https://learnenglish.britishcouncil.org/skills/reading Listening (Dinleme) ELT Podcast: https://eltpodcast.com/archive/bc 6 Minute English https://www.bbc.co.uk/learningenglish British Council https://learnenglish.britishcouncil.org/general-english/audio-zone The English We Speak https://www.bbc.co.uk/learningenglish/english/features/the-english-we-speak Luke’s English: https://teacherluke....

January 11, 2023 · 1 min · Me

Android SMS User Consent API Kullanımı

Problem? Android işletim sisteminin ilk versiyonlarında SMS’lere erişim oldukça kolaydı. Fakat şimdi sadece özel izne sahip uygulamalar bu izne sahip olabiliyor. Google’a bir form doldurarak ve neden SMS okuma özelliğine kesin olarak ihtiyacınız olduğunu anlatarak bu izni talep ediyorsunuz. Peki bizim amacımız tek seferlik bir SMS okumak ise yine bu süreçten geçmeli miyiz? Hayır! Google tek seferlik SMS okuması yapabilmek için çeşitli API’ler çıkardı. Bu API’lere sayfanın en altında bulunan Kaynaklar bölümünden erişebilirsiniz....

November 2, 2021 · 1 min · Aykut Asil

.Net Sqlite Konfigürasyonu

CLI ile Entity Framework işlemleri gerçekleştirmek için dotnet-ef toolunu yüklemelisiniz. dotnet tool install --global dotnet-ef dotnet add package Microsoft.EntityFrameworkCore.Design SQLite provider’ı için ilgili paketi yüklemelisiniz dotnet add package Microsoft.EntityFrameworkCore dotnet add package Microsoft.EntityFrameworkCore.Sqlite SQLite konfigürasyonu için startup.cs dosyasını aşağıdaki gibi güncellemelisiniz. public void ConfigureServices(IServiceCollection services) { services.AddDbContext<MainDbContext>(x => x.UseSqlite("DataSource=app.db")); services.AddControllers(); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "ws_agt_ext_api", Version = "v1" }); }); } Users tablosunu oluşturmak için aşağıdaki gibi ilgili sınıfları oluşturmalısınız....

June 24, 2021 · 2 min · Aykut Asil

Teamcity Slack Entegrasyonu

Senaryo Kendi sunucunuz üzerine kurmuş olduğunuz Teamcity’e Slack entegrasyonu yaparak, build > deploy adımlarını Slack üzerinden nasıl izleriz? Çözüm Öncelikle Slack yapılandırmaları ile başlayalım. https://api.slack.com/apps adresine giriyoruz ve yeni bir App oluşturuyoruz. OAuth & Permissions tabına geçerek ilgili yetkilendirmeleri yapıyoruz. Botumuza, ihtiyaç duyacağı tüm izinleri verdikten sonra Install to Workspace diyerek yetkilendirmeyi tamamlıyoruz. Oluşan tokenı Teamcity tarafında kullanıcaz. Slack tarafında App‘imizi oluşturduktan sonra şimdi Teamcity tarafında gerekli ayarlamaları yapabiliriz....

January 5, 2021 · 1 min · Aykut Asil

PowerShell Invoke-Command ile Uzak Bilgisayarda Komut Çalıştırma

Senaryo Şu anda çalışmış olduğum şirkette, kendi local sunucularımız üzerine kurmuş olduğumuz Teamcity ile projelerin derlenip sunulma aşamasını otomatize etmeye çalışıyoruz. Teamcity kurmuş olduğumuz sunucu ile projelerin deploy olacağı sunucular farklı. Biz şimdilik bu deploy sürecini teamcity built-in FTP özelliğini kullanarak hallediyoruz. Fakat .net core projelerinin deploy olma sürecinde yaşanan bir problem var. Eğer .net core projeniz IIS arkasında konuşlanma şeklinde ayarlanmış ise IIS, projenizin .exe dosyasını çalıştıyor olacak ve bu çalışma süresince siz bu dosyayı değiştirme, silme vb....

December 21, 2020 · 2 min · Aykut Asil

Düzeltilmiş .gitignore ile Projenin Yeniden Yapılandırılması

Problem Zaten halihazırda .gitignore dosyası eklenmiş şekilde bir git repunuz var. Sonradan .gitignore dosyasınızı yapılandırdınız fakat yine de bu dosyalar track(izlenmeye) devam ediyor. Sebep Proje dosyalarını ilk commit yaptığınızda mevcut .gitignore yapılandırmanız baz alınarak dosyalar cachelenir. Ve sonrasında bu dosyalarda yapılan tüm değişikler izlenmeye devam eder. Sonradan .gitignore dosyanızda değişiklik yapsanız dahi cachelenmiş dosyalarda değişiklik olmaz. Çözüm git cache’ini temizleyerek izlenenen tüm dosyaları yeni .gitignore yapılandırmanıza göre tekrardan cachelenmesini sağlayabilirsiniz....

December 7, 2020 · 1 min · Aykut Asil

Android Fastlane Kurulumu

Fastlane, mobil ile ilgili neredeyse tüm süreçleri (build,test,deploy vs.) otomatize etmeye yarayan bir araçtır. Fastlane kullanarak hangi CI/CD platformunu kullanıyor olursanız olun uygulama süreçleriniz tekil hale getirebilirsiniz. Kurulum brew install fastlane Fastlane aracının kurulumunu tamamladıktan sonra, ilk olarak projenizin root klasörüne gelip fastlane init komutunu çalıştırmalısınız. Komut satırında Package Name istenildiğinde uygulamamızın package name‘ini (com.example.myapplication) giriyoruz. Diğer adımları şimdilik es geçebilirsiniz. Proje yapılandırması tamamlandığında app klasörü ile aynı seviyede fastline isimli bir klasör oluşacak....

November 4, 2020 · 2 min · Aykut Asil

Android Fastlane Screengrab Kurulumu

Fastlane kurulumunu henüz tamamlamadıysanız sizi buraya alalım. Screengrab Mobil ekran görüntüsü alımını otomatize eden bu aracın kullanımı için öncelikle aşağıdaki komut ile ilgili aracı yüklüyoruz. sudo gem install screengrab Daha sonra AndroidManifest.xml dosyasına aşağıdaki bloğu eklemeliyiz. <!-- Allows unlocking your device and activating its screen so UI tests can succeed --> <uses-permission android:name="android.permission.DISABLE_KEYGUARD" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <!-- Allows for storing and retrieving screenshots --> <uses-permission android:name="android....

November 4, 2020 · 3 min · Aykut Asil