I've been using flash cards with Anki to learn Chinese lately. If you don't know Anki, it's just a free app that uses spaced repetition for helping you memorize stuff. The spaced repetition technique is incredibly effective for memorizing stuff. Researchers ave studied why it works, but I think part of it is that it makes it feel like a game that is almost fun. I usually don't have the patience to memorize stuff for exams, but I was able to score a couple of A's in college thanks to Anki. The software is completely free and open source, so you won't be bombarded with ads and upsells like in certain other apps. Memorization of words and phrases alone won't make you fluent in a language, but flash cards combined with Google translate will make it kinda fun and rewarding to learn vocabulary.
Instant feedback on my pronounciation
What I do is having Google translate open on my laptop while using the Anki app on my phone. I tell Google to translate from Chinese to English and use the voice recognition function. For every flash card, I say the word or phrase to Google translate, and it gives me some feedback on my pronounciation. The voice recognition is not perfect, and sometimes it won't understand what you're saying even if you say it 100% correctly. But in most cases it will help you correct your mistakes. Google translate basically works and an automated language coach. If I want feedback on my pronounciation, I would normally need a teacher or a native speaker to tell me. Speaking to a computer is not the same as speaking to a human, but it still feels a little bit interactive and social.