मैं एप्लिकेशन को फिर से स्थापित करने और अनुमति देने के बाद सच होने के बाद साझा प्राथमिकताएं से मान (Android 9.0 डिवाइस पर) प्राप्त करने में समस्या आ रही है।
<manifest ... >
...
<application android:allowBackup="true" ... >
...
</application>
</manifest>
इसके अनुसार: https://developer.android.com/guide/topics/data/autobackup
साझा प्राथमिकताएं बहाल होनी चाहिए?
SharedPreferences prefs = getSharedPreferences("TEST", MODE_PRIVATE);
String name = prefs.getString("name", "No name defined");//"No name defined" is the default value.
int idName = prefs.getInt("idName", 0); //0 is the default value.
SharedPreferences.Editor editor = getSharedPreferences("TEST", MODE_PRIVATE).edit();
editor.putString("name", "Elena");
editor.putInt("idName", 12);
editor.apply();
- मैंने (इम्यूलेटर) फोन (एपीआई 27) पर अपने जीमेल खाते में लॉग इन किया है और ड्राइव ऐप, बैकप, ऐप-डेटा में जाने पर मुझे 18 ऐप जैसे कि यूट्यूब, जीमेल आदि दिखाई देते हैं और मेरा अपना ऐप भी है।
- जब मैं "सेटिंग> सिस्टम> बैकअप" पर जाता हूं तो मुझे वही एप्लिकेशन और अपना स्वयं का ऐप दिखाई देता है। मैं एप्लिकेशन लोड करता हूं, साझाकरण कोड निष्पादित किया जाता है। मैं ऐप को बंद करता हूं और इसे मेमोरी से हटा देता हूं। और फिर मैं "अब बैकअप" बटन दबाता हूं:
सत्यापित करने के लिए मैं सूची में अपना ऐप देख सकता हूं और इसे 0 मिनट पहले बैकअप मिला है:
फिर मैं ऐप को हटाता हूं और 2 मूल्यों (ऐलेना और 12) के होने की उम्मीद करता हूं। लेकिन वे मिट जाते हैं ...
मैंने कमांड लाइन के माध्यम से भी यही कोशिश की है, लेकिन यह भी काम नहीं कर रहा है: https://developer.android.com/guide/topics/data/testingbackup.html#Preparing
adb shell
dreamlte:/ $ bmgr enabled
Backup Manager currently enabled
dreamlte:/ $ bmgr list transports
android/com.android.internal.backup.LocalTransport
com.google.android.gms/.backup.migrate.service.D2dTransport
* com.google.android.gms/.backup.BackupTransportService
dreamlte:/ $ bmgr backupnow my.package.name
Running incremental backup for 1 requested packages.
Package @pm@ with result: Success
Package nl.dagelijkswoord.android with progress: 1536/309248
Package nl.dagelijkswoord.android with result: Success
Backup finished with result: Success
dreamlte:/ $ dumpsys backup
Backup Manager is enabled / provisioned / not pending init
Auto-restore is disabled
No backups running
Last backup pass started: 1573804513565 (now = 1573806675410)
next scheduled: 1573819001046
...
1573806051616 : my.package.name
dreamlte:/ $ bmgr restore 1573806051616 my.package.name
No matching restore set token. Available sets:
35e84268c94b7d9c : SM-G950F
3a8e32898034f8af : SM-G950F
3e2610c4ea45fb96 : Nexus 5X
done
dreamlte:/ $ bmgr restore 35e84268c94b7d9c my.package.name
Scheduling restore: SM-G950F
restoreStarting: 1 packages
onUpdate: 0 = my.package.name
restoreFinished: 0
done
- ऐप निकालें
- एप्लिकेशन को फिर से इंस्टॉल करें और जांचें कि क्या साझाकरण मान अभी भी हैं।
- मान गए ...
सैमसंग क्लाउड के साथ सैमसंग उपकरणों पर भी व्यवहार अलग-अलग प्रतीत होता है, लेकिन अब हम स्टॉक एंड्रॉइड पर ध्यान केंद्रित करते हैं।
अपडेट करें:
यह अब और काम नहीं कर रहा था क्योंकि मैंने build.gradle में संस्करण को डाउनग्रेड कर दिया था:
build.gradle:
versionCode 70
versionName "1.6.1"
यहां तक कि साथ android:restoreAnyVersion="true"
में AndroidManifest
यह केवल काम करेगा जब संस्करण डाउनग्रेड नहीं किया गया था।