3

我需要创建一个 Android 应用程序来设置运营商配置(例如 VoLte)。应用程序应该从我们的后端获取配置并将它们应用到手机上。

在 Android 文档中,我找到了以下文章:这篇文章说,我可以创建自己的应用程序并覆盖CarrierService

public class SampleCarrierConfigService extends CarrierService {

private static final String TAG = "SampleCarrierConfigService";

public SampleCarrierConfigService() {
    Log.d(TAG, "Service created");
}

@Override
public PersistableBundle onLoadConfig(CarrierIdentifier id) {
    Log.d(TAG, "Config being fetched");
    PersistableBundle config = new PersistableBundle();
    config.putBoolean(
        CarrierConfigManager.KEY_CARRIER_VOLTE_AVAILABLE_BOOL, true);
    config.putBoolean(
        CarrierConfigManager.KEY_CARRIER_VOLTE_TTY_SUPPORTED_BOOL, false);
    config.putInt(CarrierConfigManager.KEY_VOLTE_REPLACEMENT_RAT_INT, 6);
    // Check CarrierIdentifier and add more config if needed…
    return config;
}

}

我使用此服务创建了一个应用程序,但onLoadConfig(CarrierIdentifier id)系统从未调用该方法。

所以我想从系统中调用我的重写方法,而不是系统的。我应该怎么办?

4

1 回答 1

0

我在研究如何做类似的事情时发现了你的问题。

在您链接的文章中,它说:

相关运营商应用程序必须使用 SIM 卡上的相同证书进行签名,如 UICC 运营商特权中所述。

由于我们无法从您的运营商那里获得证书(他们永远不会给您)我认为我们无法实现自己的风格可悲:-(

于 2019-12-30T13:42:00.740 回答