pascallantzsch
Goto Top

AndroidManifest.xml mit php bearbeiten

Hallo liebe Community,

folgendes Problem:

Ich möchte gerne die AndroidManifest.xml bearbeiten und somit dort Werte austauschen, allerdings übersteigt das gerade irgendwie mein Verständnis von der XML Bearbeitung, vielleicht kann mich ja hier ein freundlicher User auf den richtigen Weg bringen...

Folgende Manifest Anordnung
 
<manifest>
<application>
<meta-data android:name="Source" android:value="custom"/>  
<meta-data android:name="website" android:value="http://website.de"/>  <!-- Diese Zeile will ich bearbeiten -->  
<meta-data android:name="SaveLogToDisk" android:value="false"/>  
</application>
</manifest>
folgendes habe ich bereits versucht

 
<? 
$xml = simplexml_load_file($androidManifestDir);
$xml->manifest->application->meta-data[@android:value] = 'http://website.de';  
$xml->asXML($androidManifestDir);
?>

da bekomme ich aber natürlich einen Fehler wegen "-" & ":"

Die Frage ist für einen Kenner denke ich einfach... wie spreche ich die gewünschte Zeile richtig an? da es ja mehrere Zeilen mit <meta-data gibt und er das "-" & den ":" mir als Fehler ausgibt.

Vielen Dank schonmal face-smile

Content-Key: 259563

Url: https://administrator.de/contentid/259563

Printed on: April 19, 2024 at 23:04 o'clock

Member: colinardo
Solution colinardo Jan 12, 2015, updated at Feb 25, 2015 at 16:34:23 (UTC)
Goto Top
Hallo pascalllantzsch,
also für folgendes well-formed XML-Manifest mit Definition des Namespaces (was bei dir oben fehlt) geht das so
back-to-topManifest
<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android"> 
	<application>
		<meta-data android:name="Source" android:value="custom"/> 
		<meta-data android:name="website" android:value="http://website.de"/>  <!-- Diese Zeile will ich bearbeiten --> 
		<meta-data android:name="SaveLogToDisk" android:value="false"/> 
	</application>
</manifest>
back-to-topPHP-Code
$xml = simplexml_load_file($androidManifestDir);
$result = $xml->xpath("/manifest/application/meta-data[@android:name='website']");  
if ($result) {
     $result->attributes('android',true)->{'value'} = 'http://www.demo.de';  
     $xml->asXML($androidManifestDir);
}
Grüße Uwe
Member: pascallantzsch
pascallantzsch Jan 13, 2015 at 08:04:07 (UTC)
Goto Top
Die Definition des Namespaces hatte ich weg gelassen face-big-smile
Aber danke dir, hat wunderbar funktioniert face-smile