Problem in voice control using hc05 and uno

I'm not familiar with String objects and what your app is actually passing, but it looks like you need to explicitly break from the reading routine. I tested this code with sending *forward# and *off# and it works with the onboard led. Without the break it does not.
There are more robust ways to receive Serial data as character arrays with start and end markers. See Serial Input Basics - updated - Introductory Tutorials - Arduino Forum

#include <SoftwareSerial.h>
SoftwareSerial BT(10, 11);
String readData;
void setup()
{
  BT.begin(9600);
  Serial.begin(9600);
  pinMode(13, OUTPUT);
  digitalWrite(13, LOW);
}
void loop()
{
  while (BT.available())
  {
    delay(10);
    char c = BT.read();
    readData += c;
    if(c =='#') break;//add this line
  }
  if (readData.length() > 0)
  {
    Serial.println(readData);
    if (readData == "*forward#")
    {
      digitalWrite(13, HIGH);
    }
    if (readData == "*off#")
    {
      digitalWrite(13, LOW);
    }
    readData = "";
  }
}