Can I new the native component instead of using Provider?

I know the new native component suggests the native function to use Provider and set the native object like this:

constructor(file : File){
}

test(){
    this.file.moveFile(...);
}

But I think the old static method is better:

test(){
    File.moveFile(...);
}

and I think the new native definition doesn’t obey the open close principle because when I add a new native function I also need to change the app.module.ts in order to add the provider, can I just use

new File().moveFile(...);

?

It isn’t, because using injectables allows avoiding including all the parts of ionic-native that you aren’t using in your app package.

I don’t know if you can, but I don’t think you should. In a DI framework, let the framework own objects like this. Perhaps they are pooling some heavy initialization code that you would be repeatedly triggering for no reason.