Android'te ücretli bir uygulama indirilip apk'sı çıkarılıp dağıtılabilir mi?

1- Ücretli bir uygulama indirilip apk'sı çıkarılıp dağıtılabilir mi?
2- Geliştiricinin oluşan zararını önlemek için ne gibi tedbirler alınabilir?
3- Apk içine eğer marketten indirilmemiș ise kontrolü yapılabilir mi?

Eğer, marketten indirilmemiș ise ;

reklamları göster ;
özellikleri kapat;

gibi işlemler ile ücretli ürünün haksız yere kullanılmasının önüne geçebilir miyiz ?

Başka fikir ve önerileri olan?

Bu bir Araştırmadır.
Herkes Bilgisini ve fikrini sunabilir.

Şerif Çalıbaş
Ş
1 kişi takip ediyor.
Misafir olarak yayınla
5
5 CEVAP

1- Play Store'dan indirdiğiniz uygulamaları apk olarak veren pek çok araç var. İndirdikten sonra decompiler edilip, farklı bir imza ile dağıtılabilirler.
2- Bunu önlemenin yolu yok. Zira decompiler edildikten sonra yapacağınız tüm önlemler dikkatli tersine mühendislik ile çözülebilir. Proguard ile obfuscate etseniz dahi. Bu yüzden apkmirror gibi sitelerde tonlarca ücretli büyük uygulamaların ücretsiz sürümlerini bulabiliyorsunuz.
3- https://stackoverflow.com/questions/10809438/how-to-know-an-application-is-installed-from-google-play-or-side-load

4- Decompiler edildiğinde sizin yazacağınız reklam gizle göster kodunuzu da silebilirler. Dolayısıyla bu da aslında bir önlem değil.

Gökhan Turac
G

mutlaka bir çözümü var. bu şeye benziyor. Evde sinek var, kovarsin, gene gelirse aman napim mi diyelim. HAYIR gene kovarsin, çözüm bulmak istiyor muyuz önemli olan bu

Şerif Çalıbaş 23 gün

İnternetsiz açılmayacak şekilde bir uygulama yapılabilir. Açılış internet gerektirir. O arada yeni yukletilir ve kodlar uygulamayı sıfırlar ve reklam çıkar özellik kısıtlanıyor. yada uygulama belirli aralıklarla kendini sıfırlar. Ağa bağlanır ve durdurulur

Şerif Çalıbaş 23 gün

Dostum anlamıyorsun; Apk'lar decompiler edilebildiği sürece buna çözüm yok dostum. Sen oraya ne yazarsan yaz. Adam girip, bir if else silip devam edebiliyor. Sen en fazla süreci zorlaştırabiliyorsun. İsterseniz yazdığınız kodu bile şifreleyin. Hepsi çözülüyor. Bu sorun sadece sizin değil, tüm büyük firmaların da sorunu. Mİlyonların, Milyarların döndüğü Spotify'ı ApkMirror'dan full sürüm reklamsız indirebiliyorsunuz. Üstelik para vermeden. Spotify'ın mühendisleri bunu dert etmiyor mu sanıyorsunuz?

Gökhan Turac 23 gün

anlamam gerekmiyor çünkü senin yaklaşımını pes edici buluyorum. benim yapmak istediğimi yazmışsın ne guzeku yani süreci zorlaştırmak. İşte amaç bu. Oturup aylarca emek verdiğim şeyi onlar on dakika dağıtmasın iki gün uğraşsın ne bilim bir sene uğraşsın. Kolay olmasın.

Şerif Çalıbaş 23 gün

Spotify kar zarar hesabını yapmıştır. Tolere edebilecek sevilerde olduğu İçin yasal yollara başvurmamıș olabilir.

Şerif Çalıbaş 23 gün

Google play lisansi gibi bir olay var oyunlarda normal uygulamayada uyararlanir heralde ama maalesef onuda bir sekilde kiriyorlar java nin en kotu yani sanal makinede calisiyo kodlar decompile edilebiliyor

Furkan Algac
F

1-evet
3-evet
2- arkadaşların da dediği gibi decompiler ile tüm kodlarını görürler maalesef. Tek çözüm tüm işlemleri backend ile authentication yaparak çözmek. Son bir iki yıldır online mobil oyunlarda sıkça gördüğümüz sürekli backend ile authentication işlemi bu problemi dekarte edebilecek tek yol ama o da ne kadar tutarlı olursa. İyi bir developer (ne kadar büyük olursa olsun kodlar ) algoritmayı çıkarıp müdahale eder. Ama backend e decompiler ile erişemeyeceği için finansal işlemlerin hepsini backendde halletmeliyiz.

Enes Demirgen
E

back and olayını kendi bir kaç cümlenle açıklayabilir misin

Şerif Çalıbaş 23 gün

her bir isteğin body sine uygulamanın orjinal olup olmadığını kontrol edecek bir yapı dizayn etmelisin. Ve her bir satın alma işleminde;önce backende bu isteği yollayacak ve backend orjinalliği kontrol edecek. Backendden OK yanıtı gelmeyecekse satın alma işlemi de gerçekleşemeyecek. Atlatılamaz bir çözüm değil fakat en etkili yöntem de bu. Daha önce yapmadığım için yapıyı şu an kuramadım. Biraz araştırmak lazım.

Enes Demirgen 23 gün

Bir oyun olarak düşünürsek satın alma işlemi ile coin satın alacak biri coin satın al diyip örneğin 10 ₺ ye 500 coin satın almak isterse ve bu işlemi gerçekleştirme olayı uygulama tarafındaysa kolaylıkla atlatılır. Fakat bu işlemi backend e taşırsak ve onclick işlemi bir api'a istek yapılıp api ile adamın database'indeki coin miktarı arttırılırsa ve sürekli o db den veriler çekilirse bu atlatılamaz. Benim aklıma bu şekilde çözüm geliyor ama siz yine de araştırın.

Enes Demirgen 23 gün

Enes Demirgen database connectionu uygulama kırılırsa görülmez mi? Yani db kullanıcı adı, şifresi gözükmez mi ?

Furkan Güler 23 gün

Statik olarak kim tanımlar ki? Database connection yapmıyoruz zaten. Database kısmı sunucuda, bir endpointler ile çalışıyoruz.

Enes Demirgen 23 gün

Kotlin ile yazilan uygulamalar da da ayni sorun olur mu ki

Kazım Tarkun
K

Bunun kesin bir cozumu olmali. Yani adsense nin uygulamasi var. O zaman bn kirarim uygulamayi baskasinin parasini ceker gecerim o yuzden google vs. Bunu nasil engellemis bakmak incelemek hatta decompiler etmek lazim

Kazım Tarkun
K

O tur uygulamalar veriyo webden cekiyor sende o sekilde yapabilirsin

Furkan Algac 23 gün

müthiş fikir yukarıda bahsettiğim olayı yapıyorlar. Uygulama tarafında hiçbir şey yok. Sadece UI. Tüm iş backendde.

Enes Demirgen 23 gün