For the sake of argument, put our personal opinion on whether a given law is just or unjust aside, and also put aside our personal feelings on the tactics used by law enforcement. If you want to argue logically, you cannot appeal to feelings.
Obviously, If you were the plaintiff, you are clearly not in the position to decide whether the law you are charged with is just or unjust. The jury can exercise their judgment, and that could result in jury nullification. But you cannot persuade the jury by talking to the prosecutor.
In your fictional Bob robbing the liquor store scenario, he did not have to talk to the police as long as he's apprehended in his act. Even if that is not enough to build a strong case to prosecute him (which is very unlikely), the fact you cannot rob a liquor store without being apprehended is enough of a deterrent. On the other hand, if you cannot apprehend Bob, then he will do it again even if he knows he might one day be caught. And he will do it again even if he has been caught before and served his sentence. If you believe that serving a sentence is the just way to repay for one's crime, then to Bob, the state transition between committing a crime and serving his sentence is merely a lifestyle choice. Maybe the cycle will end when he grows tired of it. In the mean time, I still don't think you would want to live in the same neighborhood as Bob. I am less concerned about whether Bob gets convicted after a robbery. I'm more concerned about being able to stop him in his act, ensuring that liquor store robbery will never happen.
I've actually been mugged once, but after filing the police report, they never asked for my testimony. This has really puzzled me for a long time. I finally understood that, because the thief had attempted to use both my credit and debit cards, he left an electronic trail with enough evidence to prosecute him of a greater crime. If the police did not need my testimony, what makes you think they needed the suspect's?