When initializing my EGL\GLES context, I use fullscreen. My application is then rendered in half resolution and finally blitted to the screen using a simple draw.
However, for performance reasons, is it possible to initialize my context in an arbritary resolution (for example half the full resolution) and have the driver\hardware handle the blit to fullscreen?
You can use the android hardware scaler for this.
The way you use it depends if you initialize EGL from java or native C++ code:
// java
surfaceView.getHolder().setFixedSize(1280, 720);
// native
int32_t ret = ANativeWindow_setBuffersGeometry(window, 1280, 720, 0);
Using the hardware scaler generally gives you better rescaling quality, better performance and less energy usage than using a render target.