J'ai le problème suivant.Comment écrire un fichier * .kl et le copier dans/system sur un système enraciné
Je dois verrouiller ma tablette pour une application spécifique. J'utilise mon application en KioskMode, mais j'ai besoin de bloquer certains boutons, "Switch_app", "Volume_UP", "Volume_DOWN", etc.
J'ai été capable de bloquer ces boutons en accédant à l'explorateur de fichiers ES et en changeant le fichier manuellement, en enregistrant et en redémarrant la tablette.
Cependant, je voudrais changer ce fichier progammatically.
J'ai essayé ce qui suit:
{
using (StreamReader sr = new StreamReader("/system/usr/keylayout/Generic.kl"))
{
string line;
// Read and display lines from the file until the end of
// the file is reached.
while ((line = sr.ReadLine()) != null)
{
if (line.Contains("VOLUME"))
{
line = $"# {line}";
}
text += line + "\n";
System.Console.WriteLine(text);
}
}
CreateFile();
TransferFile();
};
void CreateFile()
{
string sdCard = Android.OS.Environment.ExternalStorageDirectory.AbsolutePath;
string path = Path.Combine(sdCard, "MyFolder/Generic.kl");
// This text is added only once to the file.
if (!System.IO.File.Exists(path))
{
// Create a file to write to.
System.IO.File.WriteAllText(path, text);
}
}
Et pour transférer le fichier créé pour/système/usr/Keylayout J'utilise ceci:
Java.Lang.Runtime.GetRuntime().Exec("su -c mount -o rw,remount,rw /system");
Java.Lang.Runtime.GetRuntime().Exec("su -c rm system/usr/keylayout/Generic.kl");
Java.Lang.Runtime.GetRuntime().Exec("su -c mv /storage/emulated/0/MyFolder/Generic.kl system/usr/keylayout/Generic.kl");
Lorsque j'utilise ces commandes, le fichier est copié, mais lorsque je redémarre la tablette, plus aucun bouton physique ne fonctionne. Donc, je crois que c'est un problème lié à la suppression de l'ancien fichier et à l'ajout du nouveau.
Toute aide sera la bienvenue ainsi que des idées.
Merci à tous.
Merci Alex P. Vous m'avez beaucoup aidé parce que je faisais face à des problèmes de permissions et maintenant je ne les ai plus. Pouvez-vous me poser une question? Si je dois désactiver, comment écris-je l'inverse? –
Supprimer le commentaire sur VOLUME_DOWN - VOLUME_UP –