The rocker, who has battled drug issues for years, was picked up by police in Los Angeles late last month (Jul14) after he fled a Beverly Hills store with a bag of razors he didn't pay for.
Officers stopped him a block away and came across the meth as they searched him for other stolen items.
Weiland has been charged with felony possession of a controlled substance and burglary.
Cops tell Tmz.com he entered the drug store with the intent of stealing. Reports suggest he was carrying an "insulated" bag which prevents security censors from going off.
The rocker is still behind bars and bail has been set at $95,000 (Gbp55,900).