jak programowo zainstalować certyfikat CA na Androidzie bez interakcji użytkownika

Próbuję zainstalować certyfikaty bez monitowania użytkownika. Wiem, że to nie jest dobra praktyka, ale tego właśnie chce premier.

Za pomocąKeyChain.createInstallIntent(), Mogę uruchomić Android, aby uruchomić okno dialogowe instalacji certyfikatu, dzwoniącstartActivity. Jednak, kiedy przekazuję zamiarsendBroadcast, nic się nie dzieje. Może platforma nie obsługuje tego ze względów bezpieczeństwa?

String CERT_FILE = Environment.getExternalStorageDirectory() + "/test/IAT.crt";
Intent intent = KeyChain.createInstallIntent();
try {
    FileInputStream certIs = new FileInputStream(CERT_FILE);
    byte [] cert = new byte[(int)certFile.length()];
    certIs.read(cert);
    X509Certificate x509 = X509Certificate.getInstance(cert);
    intent.putExtra(KeyChain.EXTRA_CERTIFICATE, x509.getEncoded()); 
    intent.putExtra(KeyChain.EXTRA_NAME, "IAT Cert");
    EapActivity.this.startActivityForResult(intent, 0);  // this works but shows UI
    EapActivity.this.sendBroadcast(intent);  // this doesn't install cert
} catch (IOException e) {

questionAnswers(6)

yourAnswerToTheQuestion