macos - nslocationwheninuseusagedescription - Editar archivo ipa plist en linea de comando
plist file (4)
La respuesta de @ user478681 no me funcionó, debido al paso faltante para descomprimir y comprimir el archivo ipa.
Encontré un site con esos pasos.
En breve:
unzip app.ipa
/usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier newidentifier" Payload/MyApp.app/Info.plist
zip -qr ResignedApp.ipa Payload
Si necesita renunciar a su aplicación, siga las instrucciones en el sitio mencionado anteriormente.
Me gustaría cambiar el valor de cadena ''bundle-identifier'' en un archivo plist usando la línea de comando. Usando ''valores predeterminados'', ¿cómo haría esto?
Para su información aquí está el plist en su totalidad:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>http://eventpilotadmin.com/doc/clients/ISES/Eventworld2011/proofs/iphone_Eventworld2011_proof.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.ativsoftware.Eventworld2011</string>
<key>bundle-version</key>
<string>1.0</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>Eventworld2011</string>
</dict>
</dict>
</array>
</dict>
</plist>
Prueba esto:
/usr/libexec/PlistBuddy -c "Set :items:0:metadata:bundle-identifier newidentifier" your.plist
Si el formato de línea es consistente, podría hacerlo con sed
siguiente manera:
sed -n ''/bundle-identifier/{p;n;s/>.*</>new value</;};p'' your.plist
En su ejemplo, esto cambiaría com.ativsoftware.Eventworld2011
a un new value
Agregue -i
para editar en su lugar.
Versión actualizada:
/usr/libexec/PlistBuddy -c "set :CFBundleIdentifier newidentifier" your.plist