Should my app generate _id field value if _id is not part of the shard key?

I’m using sharding in my application. And my shard key doesn’t include _id field. I have come across an article on mongo tutorials that says that “MongoDB expects applications to enforce the uniqueness of the _id values across the shards.” Does that mean my app should generate a unique identifier and use it in place of _id field before I save the document to DB?

You can find the article here: under “Important” box with “Uniqueness and the _id Index” subheading