The best app is whatever you use to consume media in the target language.
The only way to acquire a language is to expose yourself to it in a natural context. You can't acquire a language just by studying with flashcards or grammar exercises or whatever – any app that offers enhanced versions of those will at best be a minor supplement to actually using the language.
Your comments seems to imply that just using the language is enough to learn it. This is not necesserily true, especially with more complex grammars than english. You need a source to teach you grammar and basic vocabulary, then you use these basics information to roughly understand spoken language and slowly building up your actual vocabulary and consolidate the rules. You cannot skip neither of those two passages
This is the answer. The answer is Netflix and Youtube. Anything with media using both audio and subtitles in the language you're trying to learn.
You still need a teacher to get you past learning enough basics of vocabulary and grammar to get started (and no, language learning apps are probably not an effective way past that) but once you have enough basic words and you understand how a sentence is put together the answer is to watch media even if you don't fully understand what's being said, paying attention and stopping sometimes to use dictionaries and translators to get you there on sentences you almost get.
I know people who spent years spinning their wheels on learning apps while refusing to sit through media in the target language because they get frustrated or tired by the effort of trying to keep up. It's a bit annoying, but it really works.
To be clear about what I'm saying, the setup is subtitles in the same language as the audio. So if you're learning French you set French audio with French subtitles.
That REALLY helps bind the pronuntiation to the writing and it actually makes it far easier to understand the speech. Assuming you're reading the subtitles at the same time, of course.
You won't understand a lot of it, and you'll have to put up with the frustration of losing the plot often for a while, but it does help, in my experience.
Subtitles in your own native language just make you tune out the audio and read the dialogue. That's not helpful.