This depends on project complexity.
For simple apps, a hybrid approach is the best, helping save budget
and time.
For projects based on certain technologies, cross-platform is the
best by reusing source code.
For complex apps with use of native features, native approach gets
the best results.