【问题标题】:Android - Where is the best place to place the "addProvider" / "Security.insertProviderAt" code lineAndroid - 放置“addProvider”/“Security.insertProviderAt”代码行的最佳位置在哪里
【发布时间】:2025-11-22 21:05:01
【问题描述】:

我想,在 Android 应用程序中,哪里是放置以下代码的最佳位置:

static {
    Security.insertProviderAt(new org.spongycastle.jce.provider.BouncyCastleProvider(), 1);
//  Security.addProvider(new BouncyCastleProvider());
}

有些人在Application 的子类中这样做,但我真的不想继承Application

提前致谢。

【问题讨论】:

    标签: android bouncycastle spongycastle


    【解决方案1】:

    就个人而言,我也不喜欢将其插入Application 的子类的想法。我更喜欢在我的主 Security/CryptoManager 类中添加这个静态初始化块,用于与安全相关的事情,在执行任何需要 SC 的操作之前,您知道您将始终引用/创建的实例。

    为了安全起见,你可以通过调用一些方法来确保这个静态块被执行

    CyrptoManager.init()
    

    【讨论】: