Кажется, что единственный способ сделать это - предотвратить спуфинг места, предотвращающий MockLocations. С другой стороны, есть некоторые пользователи, которые используют Bluetooth-устройства GPS для получения лучшего сигнала, они не смогут использовать приложение, поскольку они должны использовать макет местоположения.
Для этого я сделал следующее:
// returns true if mock location enabled, false if not enabled.
if (Settings.Secure.getString(getContentResolver(),
Settings.Secure.ALLOW_MOCK_LOCATION).equals("0"))
return false;
else return true;
Вы должны изменить следующий код:
while($c = $stmt->fetch(PDO::FETCH_ASSOC)){
$output .= '<option value=' . $c['cat_id'] . '>' . $indent . $c['cat_name'] . "</option>\n";
if($c['cat_id'] != $cat_parent_id){
CategoryTree($output, $c['cat_id'], $indent . " ");
}
}
на:
while($c = $stmt->fetch(PDO::FETCH_ASSOC)){
$disable= "";
if($cat_parent_id==0 ){
$disable= 'disabled="disabled"';
}
$output .= '<option '. $disable.' value=' . $c['cat_id'] . '>' . $indent . $c['cat_name'] . "</option>\n";
if($c['cat_id'] != $cat_parent_id){
CategoryTree($output, $c['cat_id'], $indent . " ");
}
}