Long press the ं key. You should get ँ as one of the options.
Note that ॅ (just the moon without a dot on top) is a different symbol and is not part of the standard script for Hindi. It is used to transliterate foreign-language vowels that are not present in Hindi. Eg: The English word 'call' is written कॉल.
हां is just a (pretty common) misspelling of हाँ.
More generally, ं stands for the insertion of a nasal consonant and ँ stands for nasalising the vowel. For example, हंस (meaning 'swan') is pronounced 'hans' where a nasal consonant 'n' is inserted because of the dot. On the other hand, हँस (meaning 'laugh') is pronounced 'has' but with the 'a' sound being made from your nose as well as your mouth.
That said, when there is no place over the line to insert ँ because of other diacritics, a ं is inserted in its place. For example, the dot in मैं ('I') stands for vowel nasalisation.