我可以在我的应用程序中使用私有API,然后上传到Google Play市场吗?

时间:2015-07-22 11:53:22

标签: android

在我的应用程序中,我使用了下面的代码段

public static void setMobileDataEnabled(Context context, boolean enabled) {
try {
    final ConnectivityManager conman = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    final Class<?> conmanClass = Class.forName(conman.getClass().getName());
    final Field iConnectivityManagerField = conmanClass.getDeclaredField("mService");
    iConnectivityManagerField.setAccessible(true);
    final Object iConnectivityManager = iConnectivityManagerField.get(conman);
    final Class<?> iConnectivityManagerClass = Class.forName(iConnectivityManager.getClass().getName());
    final Method setMobileDataEnabledMethod = iConnectivityManagerClass.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE);
    setMobileDataEnabledMethod.setAccessible(true);
    setMobileDataEnabledMethod.invoke(iConnectivityManager, enabled);
} catch (Exception e) {
    e.printStackTrace();
}

有人知道我在我的应用程序中使用此代码时,Google仍然允许我上传我的应用程序,或者会阻止/拒绝 - 因为它是私有API /禁止API?

1 个答案:

答案 0 :(得分:1)

是的,它支持,甚至建议您在一个apk文件中与多个版本的Android OS兼容的情况。

你可以查看android官方博客中有关反思的文章。

http://android-developers.blogspot.com.br/2009/04/backward-compatibility-for-android.html