Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 安全性中的addProvider方法返回未定义的_Java_Android - Fatal编程技术网

Java 安全性中的addProvider方法返回未定义的

Java 安全性中的addProvider方法返回未定义的,java,android,Java,Android,我正在尝试使用addProvider方法,虽然导入了import java.security.security,但它似乎未定义 package com.example.fingerprient2; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.KeyStore; import java.securi

我正在尝试使用
addProvider
方法,虽然导入了
import java.security.security,但它似乎未定义

package com.example.fingerprient2;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.KeyStore;
import java.security.NoSuchAlgorithmException;
import java.security.PrivateKey;

import java.security.PublicKey;
import java.security.SecureRandom;
import java.security.Signature;

import java.security.Security;

import java.security.interfaces.ECPublicKey;

import java.security.spec.InvalidKeySpecException;
import java.security.spec.X509EncodedKeySpec;
import java.util.Arrays;
import java.security.Security;
import org.bouncycastle.jcajce.BCFKSLoadStoreParameter;
import org.bouncycastle.jce.ECNamedCurveTable;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
import org.bouncycastle.jce.spec.ECParameterSpec;
import android.security.keystore.KeyProperties;
import javax.crypto.KeyGenerator;

public class EnCryptor {



    Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
    KeyPairGenerator kpg = KeyPairGenerator.getInstance(
            KeyProperties.KEY_ALGORITHM_EC, "AndroidKeyStore");
    KeyGenerator keyGenerator =KeyGenerator.getInstance(KeyProperties.KEY_ALGORITHM_EC ,"AndroidKeyStore");

}

有什么帮助可以知道为什么addProvider没有出现吗?

因为您不在可以调用方法的范围内。需要从函数或初始值设定项调用它:

public class Encryptor {
    public void initialize() {
        Security.addProvider(new BouncyCastleProvider());
    }
}

非常感谢,问题已经解决了。但是我在KeyPairGenerator kpg=KeyPairGenerator.getInstance(KeyProperties.KEY_ALGORITHM_AES,“AndroidKeyStore”)中有另一个错误;错误是:未处理的异常:java.security.NoSuchAlgorithmException,java.security.NoSuchProviderException