setNetworkConnection does not work on Android Lollipop for setting up mobile data

I have tested the setNetworkConnection for setting mobile data on/off with Android device OS version 5.
It failed setting the mobile data,
I followed up the implementation and found that setData at adb.js is calling:
“am start -n io.appium.settings/.Settings -e data ’ + (on === 1 ? ‘on’ : ‘off’)”

At the end this command runs Android service 'DataService" from appium.io.settings project.
there the code for setting mobile data on/off uses reflection with private API which is no longer available from Android lollipop:

final ConnectivityManager conman = (ConnectivityManager) mContext.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, on);

enter link description here