.line 1854
invoke-virtual {p1}, Landroid/location/Location;->isFromMockProvider()Z
move-result p1
goto :goto_6
.line 1856
:cond_d
iget-object p1, p0, Lcom/bel/HYS/FileexplorerActivity$NetworkHitLatLong;->this$0:Lcom/bel/HYS/FileexplorerActivity;
invoke-static {p1}, Lcom/bel/HYS/FileexplorerActivity;->access$100(Lcom/bel/HYS/FileexplorerActivity;)Landroid/content/Context;
move-result-object p1
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object p1
const-string v7, "mock_location"
invoke-static {p1, v7}, Landroid/provider/Settings$Secure;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v7, "0"
invoke-virtual {p1, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
xor-int/2addr p1, v5
:goto_6
if-eqz p1, :cond_e
I tried fixing the value of p1 by const/4 p1, 0x0 after the line containing isfrommockprovider()Z but the problem persisted. I also tried to change if-eqz p1 directly to goto but it still didn't resolve.
Directly modifying
p1after theinvoke-virtualcallis not a good idea. Because the return value of
isFromMockProvider()will be written one command later bymove-result p1intop1. So changing it before that will not have any effect as it is overwritten bymove-result.As invoking
isFromMockProvider()has no other effect than the return value I would replace both calls shown above (invoke-virtualandmove-result) by the lineIf it still doesn't work then this is not the only check.