There are effective and ineffective ways to maintain engagement. Getting users addicted is very effective.
Even scarier, this doesn't even have to be conscious on part of anyone running the companies. There is no need for bad intent. Simply optimizing for engagement leads to addictiveness.
(I'm not saying there's no bad intent, just that it's optional and we're screwed even without it)
Their entire purpose is to maintain engagement, it's not a conspiracy.