Dove si trovano le informazioni sulla cartella del negozio di lancio? (database, ecc.)

2

Quindi ho cercato in giro e ho cercato di capirlo, ma non riesco a farlo.

So che il database SQLite del launchpad è memorizzato in ~/Library/Application Support/Dock/some-uuid.db ( ref ), ma come meglio posso dire non sembra includere alcuna informazione sulle cartelle create nel launchpad.

Qualcuno sa dove sono archiviate queste informazioni e in quale formato?

Modifica: trovato la posizione, i dettagli nella mia risposta di seguito. Gli unici bit che non riesco a capire ora sono:

  • Come creare in modo programmatico una nuova cartella e spostare le app in essa (usando questo db)
  • Per cosa vengono utilizzati i file db-shm e db-wal .
  • Indica se ~/Library/Application Support/Dock/some-uuid.db è usato o se è rimasto solo da un aggiornamento osx.
posta devalias 04.05.2016 - 05:04
fonte

1 risposta

2

Ok, penso di averlo trovato. Risulta che (almeno sotto El Capitan) le cose sono un po 'diverse.

Questa risposta AskDifferent di < a href="https://apple.stackexchange.com/users/112442/greg-hacke"> Greg Hacke mi ha indirizzato nella giusta direzione.

Sembra che i database siano memorizzati in $TMPDIR/../0/com.apple.dock.launchpad/db/ , con il db sqlite principale giustamente chiamato db .

(Dopo aver letto Geoff Hackworth's AskDifferent response , sembra un modo migliore per ottenere il percorso sarebbe getconf DARWIN_USER_DIR piuttosto di $TMPDIR/../0/ )

L'editing di questo con una GUI sqlite ha mostrato che la tabella groups memorizza le cartelle, con title che contiene il nome della cartella.

Dopo aver apportato le modifiche desiderate e averle scritte sul db, dobbiamo ancora fare una killall Dock per aggiornare la schermata del launchpad.

Alcune osservazioni:

  • Ci sono un certo numero di gruppi che non hanno un title (impostato su null), quindi non sono veramente sicuro di cosa siano.
  • Sembra che la creazione di una nuova voce non provochi la comparsa di un gruppo (forse perché sarebbe una 'cartella vuota'?).
    • In questo caso, come possiamo creare una nuova cartella e spostarci le app dal db?
  • Modificando il campo title nella tabella apps possiamo modificare il nome visualizzato dell'app.
risposta data 04.05.2016 - 05:43
fonte

Leggi altre domande sui tag