Rehber ADB ile Root'suz Uygulamalarınızın Yedeğini Alın

pense34

Deneyimli Üye
Deneyimli Üye
MIUI Sever
Adım
Levent
Cihazım
Mı Note 10 Lite
Konum
İstanbul
Katılım
4 Mayıs 2021
Konular
10
Mesajlar
244
Çözümler
1
Tepkime puanı
133
Puanları
58
Herkese merhabalar,

Öncelikle gereksinimlerden başlayacağız.

1) ADB uygulamasını içeren platform-tools'un indirme link'leri:


(Linux kullanan arkadaşların daha kolay bir yöntemi var. Kendi repo'larında bulunan platform-tools'u sudo apt install android-tools-adb komutu ile yükleyebilir, indirmelerine gerek yok)
2) USB Hata Ayıklama'nın açık olması gerekmektedir.

Konu başlığından da anlayacağımız üzere ADB ile yedek alınabilen uygulamaların yedeğini nasıl alacağımızı gösteriyor olacağız. Neden yedek alınabilen dedik çünkü ADB ile her uygulamanın yedeği alınamıyor. Alınamıyor olmasının sebebi ise uygulamanın bunun desteklememesi. Peki bunu nasıl öğreneceğiz?

ADB ile telefonumuzu bilgisayara bağladıktan sonra aşağıdaki komutu uyguluyoruz:

adb shell pm dump com.package.name | grep ALLOW_BACKUP

com.package.name ---> Bunun yazılı olduğu yere ADB ile yedek alınıp alınmadığını kontrol edeceğiniz uygulamanın ismini yazıyorsunuz.

Eğer uygulama ismi doğru ise ve komutu girdiğinizde hiçbirşey gelmiyor yani sanki komut satırındayken Enter'a basmış gibi bir durum söz konusu ise anlayın ki o uygulama ADB ile yedeklemeye uygun değil.
Diğer bir seçenek eğer komutu girdiğinizde flags= ile başlayan bir mesaj gelirse anlayın ki o uygulama ADB ile yedeklenebiliyor.


Öncelikle bilgisayarınızda (Windows) Android USB sürücülerinin yüklü olduğundan emin olun.

Sonrasında telefonunuzun USB Hata Ayıklama Modu'nu aktif etmeniz gerekiyor. Bunun için sırasıyla Ayarlar ---> Telefon Hakkında bölümüne gidiyoruz ve MIUI Versiyon yazısına defalarca tıklıyoruz. Sonrasında Artık Geliştiricisin mesajını göreceksiniz. Bu bölümde işimiz bitti. Sırasıyla Ayarlar ---> Ek Ayarlar ---> Geliştirici Seçenekleri'ni açıyoruz. Aşağıya doğru biraz indiğimizde USB Hata Ayıklama seçeneğini göreceksiniz. Bu seçeneği kapalı durumdan açık hale getiriyoruz.

Windows makinemizde platform-tools'u ZIP dosyasından çıkardıktan sonra platform-tools klasörüne giriyoruz ve boş bir alanda (herhangi bir klasör veya dosyaya tıklamadan) SHIFT tuşuna basılı tutup fare ile sağ tık yapıyoruz. Açılan menüden komut satırını buradan aç seçeneğine (bazı Windows 10 kullanıcılarında Powershell çıkabilir sorun değil) tıklıyoruz. Karşımıza komut satırı çıkacaktır.

CMD varsa ---> adb devices yazıyoruz ve bu esnada telefonunuzun ekranında izin isteme mesajı belirecek onu kabul ediyoruz ve sonrasında adb shell komutunu kullanarak telefonumuz üzerinde komut satırı açıyoruz.
Powershell varsa ---> .\adb.exe devices yazıyoruz ve telefonunuza gelen izin isteğini onaylıyoruz. Sonrasında .\adb.exe shell komutunu kullanarak telefonumuz üzerinde komu satırı açıyoruz.
Linux varsa ---> Eğer repo listesinden yüklemişseniz ki bu en kolay yoludur. Telefonumuzu bilgisayara bağladıktan sonra sudo adb devices komutu ile telefonumuzun bağlı olup olmadığını kontrol ediyoruz ve işlemlere hazır hale gelmiş oluyoruz.


*Bir uygulamayı data'sı (depolama alanındaki bilgileriniz örneğin uygulama içerisindeki ayarlarınız) ve APK'si ile birlikte yedeğini almak için:
adb backup -f app.backup -apk com.package.name
*Bir veya birden fazla uygulamayı data'sı ve APK'si ile birlikte yedeğini almak için aşağıdaki komutu uyguluyoruz. Data'sı ve APK'si ile birlikte yedeğini almayı istediğiniz uygulamaları sırasıyla aralarında birer boşluk bırakarak yazabilirsiniz.
adb backup -f app.backup -apk com.package.name1 com.package.name2
*Bir uygulamanın sadece data'sının yedeğini almak için (APK hariç) aşağıdaki komutu uyguluyoruz. Yine aynı şekilde birden fazla uygulamanın sadece data'sını almak isterseniz aralarında birer boşluk bırakarak yapabilirsiniz.
adb backup -f app.backup com.package.name
*Kullanıcının tüm uygulamalarının data'sı ve APK'leri ile birlikte sistem uygulamaları hariç yedeğini almak için:
adb backup -f app.backup -all -apk -nosystem
*Yedeğini aldığınız uygulamaları geri getirme yani restore etme işlemi için:
adb restore app.backup

Şimdi birtakım komutlar kullandık ama ne olduklarını açıklamadık. Bu bölümde bunları açıklayacağız.

app.backup ---> Bu alacağınız yedeğin ismini belirliyor. Yani o uygulamanın yedeğini alırken bilgisayara kaydedeceği ismi belirleyen kısım. Mesela Galeri uygulamamız var onun yedeğini alırken gallery.backup yazarsanız eğer sonradan o yedeğin Galeri uygulamasına ait olduğunu anlayabilirsiniz ve karışıklık olmaz.
com.package.name ---> Bu kısım ise yedeğini alacağınız uygulamanın sistemdeki ismi. Buna uygulamanın özelliklerine gittiğinizde ulaşabilirsiniz.
-all ---> Tüm uygulamaların yedeğini almak için kullanılan opsiyon.
-apk ---> Uygulamanın yedeğini alırken APK dosyasını da al demek için kullanılan seçenek.
-nosystem ---> Mesela tüm uygulamaların yedeğini almak istiyorsunuz ama sistem uygulamalarını almak istemiyorsunuz (önerilen budur) o zaman bu seçeneği kullanıyorsunuz. Eğer sistem uygulamalarını da almak isterseniz o zaman -system seçeneğini yazıyorsunuz ama tabii ki bu kesinlikle önerilmez çünkü ROM'a gelen her güncelleme sonrası fabrika ayarlarına dönmek en temizidir ve sistem uygulamalarının ayarlarını almak gereksizdir.

Önemli Notlar:
*ADB yedekleme sadece Android 4.0 ve üzeri versiyonlarda çalışır.
*Eğer full yedekleme aldıysanız o yedeğin içerisinden istediğiniz bir uygulamayı restore etme gibi bir şansınız yok. Bunun için her uygulama için ayrı yedek almanız gerekiyor.
*Yedeğini aldığınız uygulamayı restore ederken ya aynı versiyonda ya da daha yüksek bir Android versiyonunda yapmalısınız bu işlemi.
*Eğer bir uygulamanın sadece data'sının (APK hariç) yedeğini aldıysanız o uygulamanın telefonda yüklü olması gerekiyor.


Not: Bir sonraki konuda root'a gerek duymadan üçüncü parti uygulamalar ile nasıl yedek alınır onları anlatmayı düşünüyorum.


İyi forumlar herkese..
 
Moderatör tarafında düzenlendi:

bebahce1907

Deneyimli Üye
Deneyimli Üye
MIUI Sever
SMS Onaylı
Adım
hakan
Cihazım
M2007J3SG
Yaş
42
Konum
ankara
Katılım
8 Kasım 2016
Konular
1
Mesajlar
216
Çözümler
2
Tepkime puanı
155
Puanları
58
Eline sağlık hocam. Çok faydalı bir konu olmuş.
 

slm.ycl02

Usta Üye
Usta Üye
MIUI Sever
SMS Onaylı
Adım
Selim
Cihazım
Note 6 Pro
Meslek
Öğrenci
Yaş
21
Konum
34000
Katılım
27 Eylül 2019
Konular
48
Mesajlar
1.538
Çözümler
6
Tepkime puanı
1.282
Puanları
138
Elinize sağlık 8-|
 

Lenovoş

Kıdemli Üye
Kıdemli Üye
MIUI Sever
SMS Onaylı
Adım
Cihazım
Konum
Katılım
14 Mart 2019
Konular
101
Mesajlar
490
Çözümler
5
Tepkime puanı
62
Puanları
43
Herkese merhabalar,

Öncelikle gereksinimlerden başlayacağız.

1) ADB uygulamasını içeren platform-tools'un indirme link'leri:


(Linux kullanan arkadaşların daha kolay bir yöntemi var. Kendi repo'larında bulunan platform-tools'u sudo apt install android-tools-adb komutu ile yükleyebilir, indirmelerine gerek yok)
2) USB Hata Ayıklama'nın açık olması gerekmektedir.

Konu başlığından da anlayacağımız üzere ADB ile yedek alınabilen uygulamaların yedeğini nasıl alacağımızı gösteriyor olacağız. Neden yedek alınabilen dedik çünkü ADB ile her uygulamanın yedeği alınamıyor. Alınamıyor olmasının sebebi ise uygulamanın bunun desteklememesi. Peki bunu nasıl öğreneceğiz?

ADB ile telefonumuzu bilgisayara bağladıktan sonra aşağıdaki komutu uyguluyoruz:

adb shell pm dump com.package.name | grep ALLOW_BACKUP

com.package.name ---> Bunun yazılı olduğu yere ADB ile yedek alınıp alınmadığını kontrol edeceğiniz uygulamanın ismini yazıyorsunuz.

Eğer uygulama ismi doğru ise ve komutu girdiğinizde hiçbirşey gelmiyor yani sanki komut satırındayken Enter'a basmış gibi bir durum söz konusu ise anlayın ki o uygulama ADB ile yedeklemeye uygun değil.
Diğer bir seçenek eğer komutu girdiğinizde flags= ile başlayan bir mesaj gelirse anlayın ki o uygulama ADB ile yedeklenebiliyor.


Öncelikle bilgisayarınızda (Windows) Android USB sürücülerinin yüklü olduğundan emin olun.

Sonrasında telefonunuzun USB Hata Ayıklama Modu'nu aktif etmeniz gerekiyor. Bunun için sırasıyla Ayarlar ---> Telefon Hakkında bölümüne gidiyoruz ve MIUI Versiyon yazısına defalarca tıklıyoruz. Sonrasında Artık Geliştiricisin mesajını göreceksiniz. Bu bölümde işimiz bitti. Sırasıyla Ayarlar ---> Ek Ayarlar ---> Geliştirici Seçenekleri'ni açıyoruz. Aşağıya doğru biraz indiğimizde USB Hata Ayıklama seçeneğini göreceksiniz. Bu seçeneği kapalı durumdan açık hale getiriyoruz.

Windows makinemizde platform-tools'u ZIP dosyasından çıkardıktan sonra platform-tools klasörüne giriyoruz ve boş bir alanda (herhangi bir klasör veya dosyaya tıklamadan) SHIFT tuşuna basılı tutup fare ile sağ tık yapıyoruz. Açılan menüden komut satırını buradan aç seçeneğine (bazı Windows 10 kullanıcılarında Powershell çıkabilir sorun değil) tıklıyoruz. Karşımıza komut satırı çıkacaktır.

CMD varsa ---> adb devices yazıyoruz ve bu esnada telefonunuzun ekranında izin isteme mesajı belirecek onu kabul ediyoruz ve sonrasında adb shell komutunu kullanarak telefonumuz üzerinde komut satırı açıyoruz.
Powershell varsa ---> .\adb.exe devices yazıyoruz ve telefonunuza gelen izin isteğini onaylıyoruz. Sonrasında .\adb.exe shell komutunu kullanarak telefonumuz üzerinde komu satırı açıyoruz.
Linux varsa ---> Eğer repo listesinden yüklemişseniz ki bu en kolay yoludur. Telefonumuzu bilgisayara bağladıktan sonra sudo adb devices komutu ile telefonumuzun bağlı olup olmadığını kontrol ediyoruz ve işlemlere hazır hale gelmiş oluyoruz.


*Bir uygulamayı data'sı (depolama alanındaki bilgileriniz örneğin uygulama içerisindeki ayarlarınız) ve APK'si ile birlikte yedeğini almak için:
adb backup -f app.backup -apk com.package.name
*Bir veya birden fazla uygulamayı data'sı ve APK'si ile birlikte yedeğini almak için aşağıdaki komutu uyguluyoruz. Data'sı ve APK'si ile birlikte yedeğini almayı istediğiniz uygulamaları sırasıyla aralarında birer boşluk bırakarak yazabilirsiniz.
adb backup -f app.backup -apk com.package.name1 com.package.name2
*Bir uygulamanın sadece data'sının yedeğini almak için (APK hariç) aşağıdaki komutu uyguluyoruz. Yine aynı şekilde birden fazla uygulamanın sadece data'sını almak isterseniz aralarında birer boşluk bırakarak yapabilirsiniz.
adb backup -f app.backup com.package.name
*Kullanıcının tüm uygulamalarının data'sı ve APK'leri ile birlikte sistem uygulamaları hariç yedeğini almak için:
adb backup -f app.backup -all -apk -nosystem
*Yedeğini aldığınız uygulamaları geri getirme yani restore etme işlemi için:
adb restore app.backup

Şimdi birtakım komutlar kullandık ama ne olduklarını açıklamadık. Bu bölümde bunları açıklayacağız.

app.backup ---> Bu alacağınız yedeğin ismini belirliyor. Yani o uygulamanın yedeğini alırken bilgisayara kaydedeceği ismi belirleyen kısım. Mesela Galeri uygulamamız var onun yedeğini alırken gallery.backup yazarsanız eğer sonradan o yedeğin Galeri uygulamasına ait olduğunu anlayabilirsiniz ve karışıklık olmaz.
com.package.name ---> Bu kısım ise yedeğini alacağınız uygulamanın sistemdeki ismi. Buna uygulamanın özelliklerine gittiğinizde ulaşabilirsiniz.
-all ---> Tüm uygulamaların yedeğini almak için kullanılan opsiyon.
-apk ---> Uygulamanın yedeğini alırken APK dosyasını da al demek için kullanılan seçenek.
-nosystem ---> Mesela tüm uygulamaların yedeğini almak istiyorsunuz ama sistem uygulamalarını almak istemiyorsunuz (önerilen budur) o zaman bu seçeneği kullanıyorsunuz. Eğer sistem uygulamalarını da almak isterseniz o zaman -system seçeneğini yazıyorsunuz ama tabii ki bu kesinlikle önerilmez çünkü ROM'a gelen her güncelleme sonrası fabrika ayarlarına dönmek en temizidir ve sistem uygulamalarının ayarlarını almak gereksizdir.

Önemli Notlar:
*ADB yedekleme sadece Android 4.0 ve üzeri versiyonlarda çalışır.
*Eğer full yedekleme aldıysanız o yedeğin içerisinden istediğiniz bir uygulamayı restore etme gibi bir şansınız yok. Bunun için her uygulama için ayrı yedek almanız gerekiyor.
*Yedeğini aldığınız uygulamayı restore ederken ya aynı versiyonda ya da daha yüksek bir Android versiyonunda yapmalısınız bu işlemi.
*Eğer bir uygulamanın sadece data'sının (APK hariç) yedeğini aldıysanız o uygulamanın telefonda yüklü olması gerekiyor.


Not: Bir sonraki konuda root'a gerek duymadan üçüncü parti uygulamalar ile nasıl yedek alınır onları anlatmayı düşünüyorum.


İyi forumlar herkese..
Güzel anlatım ama koyu modda kırmızı yerler biraz zor okunuyor
 

mihrakula

Yeni Üye
Yeni Üye
MIUI Sever
Adım
YUNUS EMRE
Cihazım
gm discovery
Yaş
30
Konum
Malatya
Katılım
21 Temmuz 2016
Konular
0
Mesajlar
1
Tepkime puanı
0
Puanları
1
alınan yedeğin nereye kaydolduğunu yazaydın iyiydi knk
 

Bulut1111

Yeni Üye
Yeni Üye
MIUI Sever
Adım
Bulut
Cihazım
Samsung J7P2
Yaş
15
Konum
İstanbul
Katılım
31 Ekim 2023
Konular
0
Mesajlar
1
Tepkime puanı
0
Puanları
1
yedeği tam olarak nereye kaydediyor peki
 
Üst Alt