Probleme bei der Erkennung von Carbon Backups mit Nexus 7

7

Ich habe ein Backup meines Nexus 7 erstellt, bevor der Bootloader mit Carbon und der zugehörigen Windows-App entsperrt wurde. Ich habe dann den Carbon-Ordner vom internen Speicher auf meine Computerfestplatte übertragen.

Beim Entsperren, Rooten, Flashen usw. habe ich später den Carbon-Ordner dort abgelegt, wo er war:

 /storage/emulated/0/carbon

Ich habe eine zusätzliche Anwendung installiert und gesichert, um zu bestätigen, dass Carbon dort neue Backups speichert:

Trotzdem keine Freude.

Ich habe auch die Sicherungsdaten nach Google Drive kopiert. Carbon findet die Daten dort auch nicht.

Sie könnten vermuten, dass es sich um ein Berechtigungsproblem handelt. Soweit ich sehen kann, ist es nicht.

Diese Person ( Thread-Link ) hatte ähnliche Probleme mit einem Nexus 7, aber nicht mit einem Nexus 4. Sie hat den Entwicklern vor einem Monat eine E-Mail gesendet und sich nicht gemeldet. Ich habe ihnen auch eine E-Mail geschickt , aber ich halte nicht ehrlich den Atem an. und bekam tatsächlich eine Antwort. Ich poste nicht den vollständigen Text der E-Mail, da dies eine Verletzung der Privatsphäre darstellen würde, aber hier ist das Fleisch davon.

Sie haben die Sicherung manuell verschoben. Dies ist ein nicht unterstütztes Szenario in Carbon. Aus diesem Grund können Sie die Sicherungen nicht sehen. Hierfür gibt es keine Lösung oder Problemumgehung.

Was kann ich dagegen tun?

badp
quelle
Ich stelle fest, dass der Adobe Reader-Ordner 4 Elemente enthält, während die anderen nur 3 Elemente enthalten. Ich verwende Carbon nicht, daher weiß ich nicht, ob dies sinnvoll ist, aber es scheint verdächtig. Ist auf dem Weg vielleicht etwas Wichtiges in den Backups verloren gegangen?
Eldarerathis
Zum Support: Ich habe dem Entwickler vor ungefähr 2 Monaten ebenfalls eine E-Mail mit einem Problem gesendet, einschließlich aller erforderlichen Debug-Details (Logcat usw.). 3 Mails bisher. Keine Antwort. Während Koush damit beschäftigt ist, viele gute Sachen zu entwickeln, scheint er leider nicht auf Support-Anfragen zu antworten :(
Izzy
@eldarerathis Die zusätzliche Datei ist "com.adobe.reader.json":{"enabled":true,"system":false,"flags":10010180,"packageName":"com.adobe.reader","versionCode":73784,"label":"Adobe Reader","versionName":"10.5.2","locked":false,"date":1367072517125,"apk":false,"backup":true}
Badp
Dies ist die Steuerdatei von Carbon zur Identifizierung eines Backups, einschließlich der Daten, die für die Wiederherstellung angezeigt werden müssen. Wenn sich .jsonin den anderen Verzeichnissen keine solchen Dateien befinden , kann Carbon sie nicht identifizieren. Sie könnten versuchen, solche Dateien für die anderen Apps zu "fälschen" (erstellen Sie sie mit den entsprechenden Daten) - aber ich habe keine Ahnung, was für "Flags" und "VersionCode" verwendet werden soll.
Izzy
@Izzy ... warum hat Carbon diese Dateien dann nicht zuerst erstellt?
Badp

Antworten:

3

Wie sich herausstellte, .jsonfehlte allen anderen Apps die entsprechende Datei. Keine große Sache: Wie die Antwort von badp zeigt, kann man einfach adb restoredie Backups wiederherstellen. Da jedoch möglicherweise nicht jeder das SDK (oder sogar eine minimale ADB ) installiert hat (oder sogar einen Computer verfügbar ist - einer ist möglicherweise auf einer Reise), wird meine Antwort einen anderen Ansatz verfolgen.

Was wir brauchen

Als erstes müssen Sie eine Sicherung vornehmen müssen einige App, eine Funktion zu erhalten .jsonDatei. Wie die Frage besagt, gab es eine solche aus dem Adobe Reader . Um es für Sie zu visualisieren, com.adobe.reader.jsonsieht die entsprechende Datei ( ) folgendermaßen aus:

{
  "enabled":true,"system":false,"flags":10010180,"packageName":"com.adobe.reader‌​",
  "versionCode":73784,"label":"Adobe Reader","versionName":"10.5.2","locked":false,
  "date":1367072517125,"apk":false,"‌​backup":true
}

Sie benötigen außerdem:

  • ein Dateimanager
  • ein Bearbeiter

Natürlich können Sie die folgenden Schritte auch von Ihrem Linux- Computer aus ausführen . Achten Sie bei Verwendung eines anderen Betriebssystems auf die Codierung und die Zeilenumbrüche der Datei.

Was wir tun

Ich wähle hier eine Beispiel-App aus: Kindle für Android . In den Screenshots der Frage wird sie in der Nähe des Adobe Reader als aufgeführt com.amazon.kindle. Wählen Sie für Ihre Apps einfach die entsprechenden Werte aus, die auf diesem Beispiel basieren:

  1. kopieren com.adobe.reader/com.adobe.reader.jsonnachcom.amazon.kindle/com.amazon.kindle.json
  2. com.amazon.kindle/com.amazon.kindle.jsonmit einem Editor öffnen
    • ersetzen com.adobe.readerdurch com.amazon.kindlefürpackageName
    • Ersetzen Adobe Readerdurch Kindle for Androidfür label(eigentlich können Sie hier alles einfügen - möchten aber vielleicht lieber wissen, was Sie haben :)
    • Optional ersetzen Sie das versionNameentsprechend (es wird ohne funktionieren)
    • Speicher die Datei

Ich bin mir nicht sicher, wofür versionCodeoder wofür ich flagsstehe, also berühren wir diese besser nicht. Wir können auch den Rest ignorieren:

  • "enabled" = "true" sollte bedeuten "diese App ist aktiviert (dh nicht eingefroren)"
  • "system" = "false": Es ist keine System-App (Übereinstimmungen: Kindle ist keine System-App)
  • "gesperrt" = "falsch": Diese App ist nicht "geschützt"
  • "Datum" enthält offensichtlich einen Unix-Zeitstempel (höchstwahrscheinlich den des Backups)
  • "apk" = "false": Ah, nur Daten (Cabons Standard ist es, die Daten nicht .apkin das Backup aufzunehmen, um die Dinge zu beschleunigen).
  • "backup" = "true": Ist das ein Witz? Was könnte es sonst sein?

Lassen Sie uns zunächst sehen, ob Carbon unseren Trick akzeptiert. Wenn Kindle für Android korrekt als für eine Wiederherstellung verfügbar aufgeführt ist, können Sie die obigen Schritte auch für Ihre anderen Sicherungen wiederholen.

Izzy
quelle
2

Es ist ein Kludge, aber Carbon verwendet das Standard- adb debugBackend für seinen Betrieb. Dies bedeutet, dass das .abFormat nicht proprietär ist und jedes einzelne Backup über die ADB-Befehlszeile wiederhergestellt werden kann:

adb restore C:\whatever\Carbon\things.the.all\things.the.all.ab

... oder über ein Grafikwerkzeug wie Droid Explorer .

badp
quelle
2

Ich hatte das gleiche Problem und schaffte es, es zum Laufen zu bringen.

Nach der Neuinstallation der von mir gesicherten Anwendungen (in meinem Fall Angry Birds) habe ich den Carbon-Ordner vom Telefon gelöscht (eine Kopie auf dem PC aufbewahren). Ich habe dann Angry Birds gesichert, damit der Carbon-Ordner auf dem Telefon neu erstellt wird usw. Dann habe ich die neue AB-Datei durch die ursprünglich gesicherte ersetzt. Bei der Wiederherstellung konnte ich die Anwendung sehen und wiederherstellen.

user35051
quelle
2

Ich habe derzeit das gleiche Problem, aber ich habe das Update gefunden. Ich habe Nexus 7 2013, vor dem Update auf Android 5.0 habe ich den Carbon-Ordner auf meinen PC kopiert, nach dem Update auf 5.0 habe ich den Carbon-Ordner zurück in den Haupt-Nexus-Ordner verschoben zeigte nichts, aber nach langer Recherche fand ich das Update:

  1. Öffnen Sie Windows PowerShell
  2. Fügen Sie diesen Code ein:
$subfolders = Get-ChildItem -Path 'Link to your PC carbon folder\*'
foreach ($f in $subfolders){
    if($f.Attributes.ToString() -eq "Directory") {
        $filecont="{`"enabled`":true,`"packageName`":`""+$f.name+"`",`"label`":`"" + $f.Name + "`",`"locked`":false,`"date`":1375398819080,`"apk`":true,`"backup`":true}"
        $fname= $f.FullName + "\" + $f.Name + ".json"
        [System.IO.File]::WriteAllText($fname, $filecont)
    }
}

Dieser Code fügt .json-Dateien in den Ordner jeder App ein und funktioniert. Jetzt werden alle meine Anwendungen auf der Registerkarte "Wiederherstellen" von carbon angezeigt.

So sieht es aus, nachdem alle .json-Dateien hinzugefügt wurden

Klicken Sie auf das Bild für eine größere Version

Rudolph
quelle
1

Izzys Antwort ist ein guter Anfang: Überprüfen Sie, ob Sie eine .json-Datei für die App haben.

Wenn Sie diese Datei nicht haben, sichern Sie vor dem Kopieren und Bearbeiten der .json-Datei einer anderen App einfach irgendwo die .ab-Datei Ihrer App und sichern Sie die App erneut mit Carbon.

Diesmal sollte eine .json-Datei gespeichert werden. Sie können dann die .ab-Datei des neuen Backups durch die zu ersetzende ersetzen, und die App wird von Carbon erkannt.

(Wenn eine .json-Datei immer noch nicht gespeichert wird, verwenden Sie die Methode von Izzy.)

michel v
quelle