diff --git a/app/build.gradle b/app/build.gradle
index cd355ca..9cdf445 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -34,7 +34,7 @@ android {
buildTypes {
release {
buildConfigField "boolean", "LOG_ENABLED", "true"
- debuggable true
+ debuggable false
minifyEnabled true
shrinkResources true
signingConfig signingConfigs.config
diff --git a/app/release/LorealBA-LP-T-3.apk b/app/release/LorealBa-LP-FixGeotag-release.apk
similarity index 69%
rename from app/release/LorealBA-LP-T-3.apk
rename to app/release/LorealBa-LP-FixGeotag-release.apk
index e1822d8..e4d496f 100644
Binary files a/app/release/LorealBA-LP-T-3.apk and b/app/release/LorealBa-LP-FixGeotag-release.apk differ
diff --git a/app/src/main/java/com/cpm/lorealbaautomation/dailyactivity/StoreImageActivity.java b/app/src/main/java/com/cpm/lorealbaautomation/dailyactivity/StoreImageActivity.java
index fa0887e..8e75509 100644
--- a/app/src/main/java/com/cpm/lorealbaautomation/dailyactivity/StoreImageActivity.java
+++ b/app/src/main/java/com/cpm/lorealbaautomation/dailyactivity/StoreImageActivity.java
@@ -12,7 +12,6 @@ import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentSender;
-import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
@@ -20,6 +19,7 @@ import android.location.Location;
import android.location.LocationManager;
import android.os.Bundle;
import android.os.Environment;
+import android.os.Looper;
import androidx.annotation.NonNull;
import androidx.core.app.ActivityCompat;
@@ -37,6 +37,7 @@ import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
+import com.cpm.lorealbaautomation.Database.Lorealba_Database;
import com.google.android.gms.common.api.ResolvableApiException;
import com.google.android.gms.location.FusedLocationProviderClient;
import com.google.android.gms.location.LocationCallback;
@@ -95,6 +96,8 @@ import retrofit2.Response;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
+import android.content.SharedPreferences;
+
public class StoreImageActivity extends AppCompatActivity implements View.OnClickListener {
private static final int PERMISSION_ALL = 99;
private Button btn_save;
@@ -102,6 +105,7 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
private String _pathforcheck, _path, str, img_str, selfie_imge, visit_date, username, counter_id, userType;
private Lorealba_Database db;
private Runnable run;
+ private boolean isGeoTagAlertShown = false;
private Toolbar toolbar;
private ProgressDialog loading;
private Retrofit adapter;
@@ -114,6 +118,7 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
private LocationCallback locationCallback = null;
private SharedPreferences.Editor editor = null;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -205,7 +210,6 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
@Override
public void onClick(View v) {
int id = v.getId();
-
if (id == R.id.img_cam_selfie) {
clickFlag = true;
_pathforcheck = counter_id + "_Counter_Selfie_img_" + username + "_" + visit_date.replace("/", "") + "_" + getCurrentTime().replace(":", "") + ".jpg";
@@ -330,11 +334,9 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
StoreImageActivity.this.finish();
}
}
-
return super.onOptionsItemSelected(item);
}
-
private void AttempBaCoverage(final ProgressDialog loading, Context context) {
try {
getMid();
@@ -546,7 +548,6 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
} else {
/// checking GeoFencing
getLastLocation();
- checkingGeoFencing(getMid());
}
}
@@ -558,7 +559,6 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
}
if (!success_geoTag) {
getLastLocation();
- checkingGeoFencing(getMid());
}
checkgpsEnableDevice();
getMid();
@@ -579,28 +579,63 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
}
private void enableLocationSettings() {
- LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, // priority
- 5000 // intervalMillis: 5 seconds
- ).setMinUpdateIntervalMillis(3000) // fastest interval
+ LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 5000)
+ .setMinUpdateIntervalMillis(3000)
+ .setMaxUpdateDelayMillis(6000)
+ .setMinUpdateDistanceMeters(0f)// Optional batching
+ .setWaitForAccurateLocation(true) // Optional, improves first fix
.build();
- LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder().addLocationRequest(locationRequest).setAlwaysShow(true); // show dialog if GPS is off
+
+ LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder()
+ .addLocationRequest(locationRequest)
+ .setAlwaysShow(true); // Show dialog if GPS is off
SettingsClient settingsClient = LocationServices.getSettingsClient(this);
- settingsClient.checkLocationSettings(builder.build()).addOnSuccessListener(locationSettingsResponse -> {
- // All location settings are satisfied. You can request location updates here.
- }).addOnFailureListener(e -> {
- if (e instanceof ResolvableApiException) {
- try {
- ResolvableApiException resolvable = (ResolvableApiException) e;
- resolvable.startResolutionForResult((Activity) this, REQUEST_LOCATION);
- } catch (IntentSender.SendIntentException sendEx) {
- // Ignore the error.
- sendEx.fillInStackTrace();
+ settingsClient.checkLocationSettings(builder.build())
+ .addOnSuccessListener(locationSettingsResponse -> {
+ // All location settings are satisfied, start updates
+ startLocationUpdates(locationRequest);
+ })
+ .addOnFailureListener(e -> {
+ if (e instanceof ResolvableApiException) {
+ try {
+ ResolvableApiException resolvable = (ResolvableApiException) e;
+ resolvable.startResolutionForResult((Activity) this, REQUEST_LOCATION);
+ } catch (IntentSender.SendIntentException sendEx) {
+ sendEx.printStackTrace();
+ }
+ }
+ });
+ }
+
+ private void startLocationUpdates(LocationRequest locationRequest) {
+ fusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
+
+ locationCallback = new LocationCallback() {
+ @Override
+ public void onLocationResult(@NonNull LocationResult locationResult) {
+ if (locationResult == null) return;
+
+ for (Location location : locationResult.getLocations()) {
+ if (location != null) {
+ lat = location.getLatitude();
+ lon = location.getLongitude();
+ }
}
}
- });
+ };
+
+ // Don't forget permissions check
+ if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
+ != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+ // Request permissions if not granted
+ return;
+ }
+ fusedLocationClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper());
}
+
+
private boolean hasGPSDevice(Context context) {
final LocationManager mgr = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
if (mgr == null) return false;
@@ -643,7 +678,6 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
if (jcpObject != null && db.insertJCPData(jcpObject)) {
/// checking GeoFencing
getLastLocation();
- checkingGeoFencing(getMid());
AlertandMessages.showToastMsg(context, "Journey Plan Download Successfully.");
JourneyPlan jcp = db.getBIDfromJCP(username, counter_id);
if (jcp != null && jcp.getCheckout() != null && !jcp.getCheckout().isEmpty() && jcp.getCheckout().equals("Y")) {
@@ -829,8 +863,36 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
if (fusedLocationClient == null) {
fusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
}
- // fastest interval
- LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 5000).setMinUpdateIntervalMillis(3000) // fastest interval
+ if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
+ != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+ // Request permissions if not granted
+ checkAndRequestPermissions();
+ return;
+ }
+ // First, try to get the last known location
+ fusedLocationClient.getLastLocation()
+ .addOnSuccessListener(location -> {
+ if (location != null) {
+ lat = location.getLatitude();
+ lon = location.getLongitude();
+ checkingGeoFencing(getMid());
+ } else {
+ // No last known location, request updates for a new one
+ requestNewLocation();
+ }
+ })
+ .addOnFailureListener(e -> {
+ // Fallback: explicit request for a new location
+ requestNewLocation();
+ });
+ }
+
+ private void requestNewLocation() {
+ LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 5000)
+ .setMinUpdateIntervalMillis(3000)
+ .setMaxUpdateDelayMillis(6000)
+ .setMinUpdateDistanceMeters(0f)
+ .setWaitForAccurateLocation(true)
.build();
locationCallback = new LocationCallback() {
@Override
@@ -839,7 +901,10 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
if (location != null) {
lat = location.getLatitude();
lon = location.getLongitude();
- Log.d("Location", "Lat: " + lat + ", Lng: " + lon);
+ Log.d("Location", "Lat: " + lat + ", Lng: " + lon + " (new)");
+ checkingGeoFencing(getMid());
+ stopLocationUpdates(); // Stop updates after first valid location
+ break;
}
}
}
@@ -847,6 +912,7 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION)
!= PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
// Request permissions if not granted
+ checkAndRequestPermissions();
return;
}
fusedLocationClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper());
@@ -861,27 +927,37 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
@Override
public void onDestroy() {
super.onDestroy();
- stopLocationUpdates();
+ // stopLocationUpdates();
if (loading != null && loading.isShowing()) {
loading.dismiss();
}
}
+ @Override
+ protected void onPause() {
+ super.onPause();
+ stopLocationUpdates();
+ }
+
private void checkingGeoFencing(JourneyPlan jcp) {
if (jcp != null && jcp.getBID() != null) {
if (jcp.getGeoTag() != null && !jcp.getGeoTag().equalsIgnoreCase(CommonString.KEY_N) && jcp.getGeoFencingAllow() != null && jcp.getGeoFencingAllow() == 1) {
int distance = jcp.getGeoFencingRadius() != null ? jcp.getGeoFencingRadius() : 0;
int current_dist_from_store_using_lat = 0;
+ Log.d("latdata",lat + ","+lon + ","+jcp.getLatitude() + ","+jcp.getLongitude());
if (jcp.getLatitude() != 0.0 && jcp.getLongitude() != 0.0 && jcp.getGeoFencingRadius() != 0 && lat != 0.0 && lon != 0.0) {
current_dist_from_store_using_lat = DistanceUtils.calculateDistanceInMeters(lat, lon, jcp.getLatitude(), jcp.getLongitude());
Log.d("TagLoc", "Radius " + distance + "\nCurrent dist " + current_dist_from_store_using_lat);
if (current_dist_from_store_using_lat > distance) {
String msg = getString(R.string.you_need_to_be_within) + " " + distance + " metres " + getString(R.string.you_need_to_be_in_the_store) +
"\n\n" + getString(R.string.distance_from_the_store) + " " + current_dist_from_store_using_lat + " " + getString(R.string.meters);
+ if (isFinishing() || (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR1 && isDestroyed())) {
+ return;
+ }
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(getResources().getString(R.string.alert));
builder.setMessage(msg).setCancelable(false).setPositiveButton(getResources().getString(R.string.ok), (dialog1, id) -> {
- dialog1.cancel();
+ dialog1.dismiss();
finishAffinity();
});
AlertDialog alert = builder.create();
@@ -889,18 +965,30 @@ public class StoreImageActivity extends AppCompatActivity implements View.OnClic
}
}
} else {
- AlertDialog.Builder builder = new AlertDialog.Builder(this);
- builder.setTitle(getResources().getString(R.string.dialog_title));
- builder.setMessage(getString(R.string.first_geotag_the_store)).setCancelable(false).setPositiveButton(getResources().getString(R.string.ok), (dialog1, id) -> {
- dialog1.cancel();
- success_geoTag = false;
- Intent in = new Intent(this, GeoTaggingActivity.class);
- startActivity(in);
- });
- AlertDialog alert = builder.create();
- alert.show();
+ if (isFinishing() || (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR1 && isDestroyed())) {
+ return;
+ }
+ db.open();
+ if (!isGeoTagAlertShown && db.getinsertGeotaggingData(storeId.toString(), counter_id, username, "Y").isEmpty()) {
+ isGeoTagAlertShown = true;
+ AlertDialog.Builder builder = new AlertDialog.Builder(this);
+ builder.setTitle(getResources().getString(R.string.dialog_title));
+ builder.setMessage(getString(R.string.first_geotag_the_store))
+ .setCancelable(false)
+ .setPositiveButton(getResources().getString(R.string.ok), (dialog1, id) -> {
+ dialog1.dismiss();
+ success_geoTag = false;
+ isGeoTagAlertShown = false; // Reset the flag if needed for future
+ Intent in = new Intent(this, GeoTaggingActivity.class);
+ startActivity(in);
+ // Optionally start geo tagging activity here
+ });
+ AlertDialog alert = builder.create();
+ alert.show();
+ }
}
}
}
+
}
diff --git a/app/src/main/java/com/cpm/lorealbaautomation/geotag/GeoTaggingActivity.java b/app/src/main/java/com/cpm/lorealbaautomation/geotag/GeoTaggingActivity.java
index aaeaf20..f61fd4a 100644
--- a/app/src/main/java/com/cpm/lorealbaautomation/geotag/GeoTaggingActivity.java
+++ b/app/src/main/java/com/cpm/lorealbaautomation/geotag/GeoTaggingActivity.java
@@ -122,7 +122,7 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
AlertandMessages.showToastMsg(view.getContext(), getResources().getString(R.string.takeimage));
}
} catch (Exception e) {
- e.fillInStackTrace();
+ e.printStackTrace();
}
});
camera_fab.setOnClickListener(view -> {
@@ -141,13 +141,14 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
AlertandMessages.showToastMsg(context, getResources().getString(R.string.nonetwork));
}
} catch (Exception e) {
- e.fillInStackTrace();
+ e.printStackTrace();
}
});
-
- if (ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.ACCESS_FINE_LOCATION)
- != PackageManager.PERMISSION_GRANTED) {
- ContextCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.ACCESS_COARSE_LOCATION);
+ if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED ||
+ ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
+ ActivityCompat.requestPermissions(this, new String[]{
+ Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION
+ }, LOCATION_PERMISSION_REQUEST_CODE);
}
locationCallback = new LocationCallback() {
@Override
@@ -167,7 +168,6 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
if (distance > 10) {
previousLatitude = latitude;
previousLongitude = longitude;
-
updateMapWithLocation(latitude, longitude);
}
}
@@ -178,13 +178,27 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
}
private void startLocationUpdates() {
- @SuppressLint("VisibleForTests") LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 5000)
- .setMinUpdateIntervalMillis(1000)
+ LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 5000)
+ .setMinUpdateIntervalMillis(3000)
+ .setWaitForAccurateLocation(true)
+ .setMaxUpdateDelayMillis(6000)
.build();
- if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
+ if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED ||
+ ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
fusedLocationClient.requestLocationUpdates(locationRequest, locationCallback, Looper.getMainLooper());
+ fusedLocationClient.getLastLocation().addOnSuccessListener(this, location -> {
+ if (location != null && (latitude == 0.0 && longitude == 0.0)) {
+ latitude = location.getLatitude();
+ longitude = location.getLongitude();
+ previousLatitude = latitude;
+ previousLongitude = longitude;
+ updateMapWithLocation(latitude, longitude);
+ }
+ });
} else {
- ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, 1001);
+ ActivityCompat.requestPermissions(this,
+ new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION},
+ LOCATION_PERMISSION_REQUEST_CODE);
}
}
@@ -193,7 +207,6 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
Log.e("jeevanp", "" + lat);
String address = "";
try {
-
List
addressList = geocoder.getFromLocation(lat, lon, 1);
if (addressList != null && !addressList.isEmpty()) {
address = addressList.get(0).getAddressLine(0);
@@ -236,31 +249,51 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
mMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
mMap.getUiSettings().setZoomControlsEnabled(true);
mMap.getUiSettings().setCompassEnabled(true);
- mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(22.5726, 88.3639), 15));
- // Enable My Location layer
+ mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(latitude,longitude), 15));
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED ||
ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
- mMap.setMyLocationEnabled(true); // ✅ this shows blue dot
- mMap.getUiSettings().setMyLocationButtonEnabled(true); // ✅ this shows the GPS icon
+ mMap.setMyLocationEnabled(true);
+ mMap.getUiSettings().setMyLocationButtonEnabled(true);
startLocationUpdates();
} else {
- // request permission
ActivityCompat.requestPermissions(this,
- new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
+ new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION},
LOCATION_PERMISSION_REQUEST_CODE);
}
+ fusedLocationClient.getLastLocation().addOnSuccessListener(location -> {
+ if (location != null && (latitude == 0.0 && longitude == 0.0)) {
+ latitude = location.getLatitude();
+ longitude = location.getLongitude();
+ previousLatitude = latitude;
+ previousLongitude = longitude;
+ updateMapWithLocation(latitude, longitude);
+ }
+ });
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == LOCATION_PERMISSION_REQUEST_CODE) {
- if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
- if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
- mMap.setMyLocationEnabled(true);
- mMap.getUiSettings().setMyLocationButtonEnabled(true);
+ boolean locationGranted = false;
+ for (int i = 0; i < grantResults.length; i++) {
+ if (grantResults[i] == PackageManager.PERMISSION_GRANTED) {
+ locationGranted = true;
+ break;
}
}
+ if (locationGranted) {
+ if (mMap != null) {
+ if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED ||
+ ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
+ mMap.setMyLocationEnabled(true);
+ mMap.getUiSettings().setMyLocationButtonEnabled(true);
+ }
+ }
+ startLocationUpdates();
+ } else {
+ Toast.makeText(this, "Location permissions are required for geotagging", Toast.LENGTH_LONG).show();
+ }
}
}
@@ -327,9 +360,6 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
if (mapFragment != null) {
mapFragment.getMapAsync(this);
}
- if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
- return;
- }
try {
app_ver = String.valueOf(getPackageManager().getPackageInfo(getPackageName(), 0).versionName);
} catch (PackageManager.NameNotFoundException ignored) {
@@ -363,14 +393,12 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
@Override
protected String doInBackground(Void... params) {
try {
- // uploading Geotag
- uploadflag = false;
geotaglist = db.getinsertGeotaggingData(jcpGetset.getStoreId().toString(), counter_id, username, CommonString.KEY_N);
if (!geotaglist.isEmpty()) {
String jsonString2 = getString();
- Log.e("jsonString2", jsonString2);
+ // Log.e("jsonString2", jsonString2);
String result = upload.downloadDataUniversal(jsonString2);
- Log.e("jsonString2", result);
+ // Log.e("jsonString2", result);
if (result.equalsIgnoreCase(CommonString.MESSAGE_NO_RESPONSE_SERVER)) {
uploadflag = false;
throw new SocketTimeoutException();
@@ -469,11 +497,10 @@ public class GeoTaggingActivity extends AppCompatActivity implements OnMapReadyC
}
private void enableLocationSettings() {
- LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, // priority
- 5000 // intervalMillis: 5 seconds
- ).setMinUpdateIntervalMillis(3000) // fastest interval
+ LocationRequest locationRequest = new LocationRequest.Builder(Priority.PRIORITY_HIGH_ACCURACY, 5000)
+ .setMinUpdateIntervalMillis(3000)
.build();
- LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder().addLocationRequest(locationRequest).setAlwaysShow(true); // show dialog if GPS is off
+ LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder().addLocationRequest(locationRequest).setAlwaysShow(true);
SettingsClient settingsClient = LocationServices.getSettingsClient(this);
settingsClient.checkLocationSettings(builder.build()).addOnSuccessListener(locationSettingsResponse -> {
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/results.bin b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/results.bin
new file mode 100644
index 0000000..6e09b8c
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/results.bin
@@ -0,0 +1 @@
+o/out
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/AndroidManifest.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/AndroidManifest.xml
new file mode 100644
index 0000000..8d5055c
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/AndroidManifest.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/META-INF/com/android/build/gradle/aar-metadata.properties b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/META-INF/com/android/build/gradle/aar-metadata.properties
new file mode 100644
index 0000000..1211b1e
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/META-INF/com/android/build/gradle/aar-metadata.properties
@@ -0,0 +1,6 @@
+aarFormatVersion=1.0
+aarMetadataVersion=1.0
+minCompileSdk=1
+minCompileSdkExtension=0
+minAndroidGradlePluginVersion=1.0.0
+coreLibraryDesugaringEnabled=false
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/R.txt b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/R.txt
new file mode 100644
index 0000000..064f8f7
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/R.txt
@@ -0,0 +1,45 @@
+int attr hintText 0x0
+int color ColorPrimary 0x0
+int color ColorPrimaryDark 0x0
+int color android_text_color 0x0
+int color app_topbar_color 0x0
+int color background_color 0x0
+int color black 0x0
+int color blue 0x0
+int color cyan 0x0
+int color gray 0x0
+int color lightBlue 0x0
+int color list_background 0x0
+int color list_even 0x0
+int color list_header 0x0
+int color list_odd 0x0
+int color list_selected 0x0
+int color primary 0x0
+int color primary_dark 0x0
+int color primary_pressed 0x0
+int color red 0x0
+int color ripple 0x0
+int color text_color 0x0
+int color white 0x0
+int dimen activity_horizontal_margin 0x0
+int dimen activity_vertical_margin 0x0
+int id alertCheckbox 0x0
+int id alertSearchEditText 0x0
+int id alertSearchListView 0x0
+int id alertTextView 0x0
+int id empty 0x0
+int id listTextViewSpinner 0x0
+int id searchMultiSpinner 0x0
+int id simpleMultiSpinner 0x0
+int layout activity_main 0x0
+int layout alert_dialog_listview_search 0x0
+int layout item_listview_multiple 0x0
+int layout item_listview_single 0x0
+int layout textview_for_spinner 0x0
+int string type_to_search 0x0
+int style DialogWindowTitle 0x0
+int style MaterialSpinner 0x0
+int style myDialog 0x0
+int style myDialogTitle 0x0
+int[] styleable MultiSpinnerSearch { 0x0 }
+int styleable MultiSpinnerSearch_hintText 0
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/jars/classes.jar b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/jars/classes.jar
new file mode 100644
index 0000000..1d2bb5b
Binary files /dev/null and b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/jars/classes.jar differ
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/jars/libs/R.jar b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/jars/libs/R.jar
new file mode 100644
index 0000000..9997c56
Binary files /dev/null and b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/jars/libs/R.jar differ
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/activity_main.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/activity_main.xml
new file mode 100644
index 0000000..d78e6bb
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/activity_main.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/alert_dialog_listview_search.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/alert_dialog_listview_search.xml
new file mode 100644
index 0000000..5bd820e
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/alert_dialog_listview_search.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/item_listview_multiple.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/item_listview_multiple.xml
new file mode 100644
index 0000000..8298262
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/item_listview_multiple.xml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/item_listview_single.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/item_listview_single.xml
new file mode 100644
index 0000000..a05d532
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/item_listview_single.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/textview_for_spinner.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/textview_for_spinner.xml
new file mode 100644
index 0000000..0cd92c2
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/layout/textview_for_spinner.xml
@@ -0,0 +1,13 @@
+
+
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/values-v21/values-v21.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/values-v21/values-v21.xml
new file mode 100644
index 0000000..8d5c618
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/values-v21/values-v21.xml
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/values/values.xml b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/values/values.xml
new file mode 100644
index 0000000..2e14dcc
--- /dev/null
+++ b/library/build/.transforms/f6b0a876a140844809a4015960e92ce1/transformed/out/res/values/values.xml
@@ -0,0 +1,47 @@
+
+
+ #29CA97
+ #06ACE4
+ #747474
+ #AAAAAA
+ #E1E2E2
+ #000000
+ #1589FF
+ #00FFFF
+ #D1D0CE
+ #ADD8E6
+ #06ACE4
+ #AAAAAA
+ #99979C
+ #E1E2E2
+ #455FB6
+ #3f51b5
+ #303f9f
+ #E1E2E2
+ #FF0000
+ #F06292
+ #686868
+ #FFFFFF
+ 16dp
+ 16dp
+ Type to Search
+
+
+
+
+
\ No newline at end of file
diff --git a/library/build/intermediates/aar_main_jar/release/classes.jar b/library/build/intermediates/aar_main_jar/release/classes.jar
new file mode 100644
index 0000000..1d2bb5b
Binary files /dev/null and b/library/build/intermediates/aar_main_jar/release/classes.jar differ
diff --git a/library/build/intermediates/annotations_typedef_file/release/typedefs.txt b/library/build/intermediates/annotations_typedef_file/release/typedefs.txt
new file mode 100644
index 0000000..e69de29
diff --git a/library/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.2.2 b/library/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.2.2
new file mode 100644
index 0000000..de0b268
--- /dev/null
+++ b/library/build/intermediates/default_proguard_files/global/proguard-android-optimize.txt-8.2.2
@@ -0,0 +1,117 @@
+# This is a configuration file for ProGuard.
+# http://proguard.sourceforge.net/index.html#manual/usage.html
+#
+# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with
+# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and
+# will be ignored by new version of the Android plugin for Gradle.
+
+# Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file
+# instead of this one, which turns off the optimization flags.
+# Adding optimization introduces certain risks, since for example not all optimizations performed by
+# ProGuard works on all versions of Dalvik. The following flags turn off various optimizations
+# known to have issues, but the list may not be complete or up to date. (The "arithmetic"
+# optimization can be used if you are only targeting Android 2.0 or later.) Make sure you test
+# thoroughly if you go this route.
+-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*
+-optimizationpasses 5
+-allowaccessmodification
+
+-dontusemixedcaseclassnames
+-dontskipnonpubliclibraryclasses
+-verbose
+
+# Preserve some attributes that may be required for reflection.
+-keepattributes AnnotationDefault,
+ EnclosingMethod,
+ InnerClasses,
+ RuntimeVisibleAnnotations,
+ RuntimeVisibleParameterAnnotations,
+ RuntimeVisibleTypeAnnotations,
+ Signature
+
+-keep public class com.google.vending.licensing.ILicensingService
+-keep public class com.android.vending.licensing.ILicensingService
+-keep public class com.google.android.vending.licensing.ILicensingService
+-dontnote com.android.vending.licensing.ILicensingService
+-dontnote com.google.vending.licensing.ILicensingService
+-dontnote com.google.android.vending.licensing.ILicensingService
+
+# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
+-keepclasseswithmembernames,includedescriptorclasses class * {
+ native ;
+}
+
+# Keep setters in Views so that animations can still work.
+-keepclassmembers public class * extends android.view.View {
+ void set*(***);
+ *** get*();
+}
+
+# We want to keep methods in Activity that could be used in the XML attribute onClick.
+-keepclassmembers class * extends android.app.Activity {
+ public void *(android.view.View);
+}
+
+# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
+-keepclassmembers enum * {
+ public static **[] values();
+ public static ** valueOf(java.lang.String);
+}
+
+-keepclassmembers class * implements android.os.Parcelable {
+ public static final ** CREATOR;
+}
+
+# Preserve annotated Javascript interface methods.
+-keepclassmembers class * {
+ @android.webkit.JavascriptInterface ;
+}
+
+# The support libraries contains references to newer platform versions.
+# Don't warn about those in case this app is linking against an older
+# platform version. We know about them, and they are safe.
+-dontnote android.support.**
+-dontnote androidx.**
+-dontwarn android.support.**
+-dontwarn androidx.**
+
+# This class is deprecated, but remains for backward compatibility.
+-dontwarn android.util.FloatMath
+
+# Understand the @Keep support annotation.
+-keep class android.support.annotation.Keep
+-keep class androidx.annotation.Keep
+
+-keep @android.support.annotation.Keep class * {*;}
+-keep @androidx.annotation.Keep class * {*;}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep (...);
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep (...);
+}
+
+# These classes are duplicated between android.jar and org.apache.http.legacy.jar.
+-dontnote org.apache.http.**
+-dontnote android.net.http.**
+
+# These classes are duplicated between android.jar and core-lambda-stubs.jar.
+-dontnote java.lang.invoke.**
diff --git a/library/build/intermediates/default_proguard_files/global/proguard-android.txt-8.2.2 b/library/build/intermediates/default_proguard_files/global/proguard-android.txt-8.2.2
new file mode 100644
index 0000000..3ca0d03
--- /dev/null
+++ b/library/build/intermediates/default_proguard_files/global/proguard-android.txt-8.2.2
@@ -0,0 +1,116 @@
+# This is a configuration file for ProGuard.
+# http://proguard.sourceforge.net/index.html#manual/usage.html
+#
+# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with
+# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and
+# will be ignored by new version of the Android plugin for Gradle.
+
+# Optimization is turned off by default. Dex does not like code run
+# through the ProGuard optimize steps (and performs some
+# of these optimizations on its own).
+# Note that if you want to enable optimization, you cannot just
+# include optimization flags in your own project configuration file;
+# instead you will need to point to the
+# "proguard-android-optimize.txt" file instead of this one from your
+# project.properties file.
+-dontoptimize
+
+-dontusemixedcaseclassnames
+-dontskipnonpubliclibraryclasses
+-verbose
+
+# Preserve some attributes that may be required for reflection.
+-keepattributes AnnotationDefault,
+ EnclosingMethod,
+ InnerClasses,
+ RuntimeVisibleAnnotations,
+ RuntimeVisibleParameterAnnotations,
+ RuntimeVisibleTypeAnnotations,
+ Signature
+
+-keep public class com.google.vending.licensing.ILicensingService
+-keep public class com.android.vending.licensing.ILicensingService
+-keep public class com.google.android.vending.licensing.ILicensingService
+-dontnote com.android.vending.licensing.ILicensingService
+-dontnote com.google.vending.licensing.ILicensingService
+-dontnote com.google.android.vending.licensing.ILicensingService
+
+# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
+-keepclasseswithmembernames,includedescriptorclasses class * {
+ native ;
+}
+
+# Keep setters in Views so that animations can still work.
+-keepclassmembers public class * extends android.view.View {
+ void set*(***);
+ *** get*();
+}
+
+# We want to keep methods in Activity that could be used in the XML attribute onClick.
+-keepclassmembers class * extends android.app.Activity {
+ public void *(android.view.View);
+}
+
+# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
+-keepclassmembers enum * {
+ public static **[] values();
+ public static ** valueOf(java.lang.String);
+}
+
+-keepclassmembers class * implements android.os.Parcelable {
+ public static final ** CREATOR;
+}
+
+# Preserve annotated Javascript interface methods.
+-keepclassmembers class * {
+ @android.webkit.JavascriptInterface ;
+}
+
+# The support libraries contains references to newer platform versions.
+# Don't warn about those in case this app is linking against an older
+# platform version. We know about them, and they are safe.
+-dontnote android.support.**
+-dontnote androidx.**
+-dontwarn android.support.**
+-dontwarn androidx.**
+
+# This class is deprecated, but remains for backward compatibility.
+-dontwarn android.util.FloatMath
+
+# Understand the @Keep support annotation.
+-keep class android.support.annotation.Keep
+-keep class androidx.annotation.Keep
+
+-keep @android.support.annotation.Keep class * {*;}
+-keep @androidx.annotation.Keep class * {*;}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep (...);
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep (...);
+}
+
+# These classes are duplicated between android.jar and org.apache.http.legacy.jar.
+-dontnote org.apache.http.**
+-dontnote android.net.http.**
+
+# These classes are duplicated between android.jar and core-lambda-stubs.jar.
+-dontnote java.lang.invoke.**
diff --git a/library/build/intermediates/default_proguard_files/global/proguard-defaults.txt-8.2.2 b/library/build/intermediates/default_proguard_files/global/proguard-defaults.txt-8.2.2
new file mode 100644
index 0000000..5fea5b5
--- /dev/null
+++ b/library/build/intermediates/default_proguard_files/global/proguard-defaults.txt-8.2.2
@@ -0,0 +1,117 @@
+# This is a configuration file for ProGuard.
+# http://proguard.sourceforge.net/index.html#manual/usage.html
+#
+# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with
+# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and
+# will be ignored by new version of the Android plugin for Gradle.
+
+# Optimizations can be turned on and off in the 'postProcessing' DSL block.
+# The configuration below is applied if optimizations are enabled.
+# Adding optimization introduces certain risks, since for example not all optimizations performed by
+# ProGuard works on all versions of Dalvik. The following flags turn off various optimizations
+# known to have issues, but the list may not be complete or up to date. (The "arithmetic"
+# optimization can be used if you are only targeting Android 2.0 or later.) Make sure you test
+# thoroughly if you go this route.
+-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*
+-optimizationpasses 5
+-allowaccessmodification
+
+-dontusemixedcaseclassnames
+-dontskipnonpubliclibraryclasses
+-verbose
+
+# Preserve some attributes that may be required for reflection.
+-keepattributes AnnotationDefault,
+ EnclosingMethod,
+ InnerClasses,
+ RuntimeVisibleAnnotations,
+ RuntimeVisibleParameterAnnotations,
+ RuntimeVisibleTypeAnnotations,
+ Signature
+
+-keep public class com.google.vending.licensing.ILicensingService
+-keep public class com.android.vending.licensing.ILicensingService
+-keep public class com.google.android.vending.licensing.ILicensingService
+-dontnote com.android.vending.licensing.ILicensingService
+-dontnote com.google.vending.licensing.ILicensingService
+-dontnote com.google.android.vending.licensing.ILicensingService
+
+# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
+-keepclasseswithmembernames,includedescriptorclasses class * {
+ native ;
+}
+
+# Keep setters in Views so that animations can still work.
+-keepclassmembers public class * extends android.view.View {
+ void set*(***);
+ *** get*();
+}
+
+# We want to keep methods in Activity that could be used in the XML attribute onClick.
+-keepclassmembers class * extends android.app.Activity {
+ public void *(android.view.View);
+}
+
+# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
+-keepclassmembers enum * {
+ public static **[] values();
+ public static ** valueOf(java.lang.String);
+}
+
+-keepclassmembers class * implements android.os.Parcelable {
+ public static final ** CREATOR;
+}
+
+# Preserve annotated Javascript interface methods.
+-keepclassmembers class * {
+ @android.webkit.JavascriptInterface ;
+}
+
+# The support libraries contains references to newer platform versions.
+# Don't warn about those in case this app is linking against an older
+# platform version. We know about them, and they are safe.
+-dontnote android.support.**
+-dontnote androidx.**
+-dontwarn android.support.**
+-dontwarn androidx.**
+
+# This class is deprecated, but remains for backward compatibility.
+-dontwarn android.util.FloatMath
+
+# Understand the @Keep support annotation.
+-keep class android.support.annotation.Keep
+-keep class androidx.annotation.Keep
+
+-keep @android.support.annotation.Keep class * {*;}
+-keep @androidx.annotation.Keep class * {*;}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep ;
+}
+
+-keepclasseswithmembers class * {
+ @android.support.annotation.Keep (...);
+}
+
+-keepclasseswithmembers class * {
+ @androidx.annotation.Keep (...);
+}
+
+# These classes are duplicated between android.jar and org.apache.http.legacy.jar.
+-dontnote org.apache.http.**
+-dontnote android.net.http.**
+
+# These classes are duplicated between android.jar and core-lambda-stubs.jar.
+-dontnote java.lang.invoke.**
diff --git a/library/build/intermediates/full_jar/release/full.jar b/library/build/intermediates/full_jar/release/full.jar
new file mode 100644
index 0000000..b2eb16c
Binary files /dev/null and b/library/build/intermediates/full_jar/release/full.jar differ
diff --git a/library/build/intermediates/incremental/lintVitalAnalyzeRelease/module.xml b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/module.xml
new file mode 100644
index 0000000..8eb2b72
--- /dev/null
+++ b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/module.xml
@@ -0,0 +1,19 @@
+
+
+
+
diff --git a/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release-artifact-dependencies.xml b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release-artifact-dependencies.xml
new file mode 100644
index 0000000..b4e67d1
--- /dev/null
+++ b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release-artifact-dependencies.xml
@@ -0,0 +1,365 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release-artifact-libraries.xml b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release-artifact-libraries.xml
new file mode 100644
index 0000000..dc05a95
--- /dev/null
+++ b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release-artifact-libraries.xml
@@ -0,0 +1,690 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release.xml b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release.xml
new file mode 100644
index 0000000..f64960c
--- /dev/null
+++ b/library/build/intermediates/incremental/lintVitalAnalyzeRelease/release.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/incremental/mergeReleaseJniLibFolders/merger.xml b/library/build/intermediates/incremental/mergeReleaseJniLibFolders/merger.xml
index e1aa912..37f6149 100644
--- a/library/build/intermediates/incremental/mergeReleaseJniLibFolders/merger.xml
+++ b/library/build/intermediates/incremental/mergeReleaseJniLibFolders/merger.xml
@@ -1,2 +1,2 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/library/build/intermediates/incremental/mergeReleaseShaders/merger.xml b/library/build/intermediates/incremental/mergeReleaseShaders/merger.xml
index 0bab176..46e23c9 100644
--- a/library/build/intermediates/incremental/mergeReleaseShaders/merger.xml
+++ b/library/build/intermediates/incremental/mergeReleaseShaders/merger.xml
@@ -1,2 +1,2 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/library/build/intermediates/incremental/packageReleaseAssets/merger.xml b/library/build/intermediates/incremental/packageReleaseAssets/merger.xml
index 7b326ca..fbe4b10 100644
--- a/library/build/intermediates/incremental/packageReleaseAssets/merger.xml
+++ b/library/build/intermediates/incremental/packageReleaseAssets/merger.xml
@@ -1,2 +1,2 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/library/build/intermediates/incremental/release-mergeJavaRes/merge-state b/library/build/intermediates/incremental/release-mergeJavaRes/merge-state
new file mode 100644
index 0000000..1c983fc
Binary files /dev/null and b/library/build/intermediates/incremental/release-mergeJavaRes/merge-state differ
diff --git a/library/build/intermediates/incremental/release/packageReleaseResources/compile-file-map.properties b/library/build/intermediates/incremental/release/packageReleaseResources/compile-file-map.properties
index 15f06bd..be79bfd 100644
--- a/library/build/intermediates/incremental/release/packageReleaseResources/compile-file-map.properties
+++ b/library/build/intermediates/incremental/release/packageReleaseResources/compile-file-map.properties
@@ -1,6 +1,6 @@
-#Fri Jul 04 12:30:31 IST 2025
-com.androidbuts.multispinnerfilter.library-main-5\:/layout/textview_for_spinner.xml=D\:\\jeevanp_cpm_projects\\LorealBaFixedVersionIssue\\RaviLatestCode19JUNE025\\LorealBA_AutomationLatest\\library\\build\\intermediates\\packaged_res\\release\\layout\\textview_for_spinner.xml
-com.androidbuts.multispinnerfilter.library-main-5\:/layout/activity_main.xml=D\:\\jeevanp_cpm_projects\\LorealBaFixedVersionIssue\\RaviLatestCode19JUNE025\\LorealBA_AutomationLatest\\library\\build\\intermediates\\packaged_res\\release\\layout\\activity_main.xml
-com.androidbuts.multispinnerfilter.library-main-5\:/layout/alert_dialog_listview_search.xml=D\:\\jeevanp_cpm_projects\\LorealBaFixedVersionIssue\\RaviLatestCode19JUNE025\\LorealBA_AutomationLatest\\library\\build\\intermediates\\packaged_res\\release\\layout\\alert_dialog_listview_search.xml
-com.androidbuts.multispinnerfilter.library-main-5\:/layout/item_listview_single.xml=D\:\\jeevanp_cpm_projects\\LorealBaFixedVersionIssue\\RaviLatestCode19JUNE025\\LorealBA_AutomationLatest\\library\\build\\intermediates\\packaged_res\\release\\layout\\item_listview_single.xml
-com.androidbuts.multispinnerfilter.library-main-5\:/layout/item_listview_multiple.xml=D\:\\jeevanp_cpm_projects\\LorealBaFixedVersionIssue\\RaviLatestCode19JUNE025\\LorealBA_AutomationLatest\\library\\build\\intermediates\\packaged_res\\release\\layout\\item_listview_multiple.xml
+#Wed Aug 06 13:23:11 IST 2025
+com.androidbuts.multispinnerfilter.library-main-5\:/layout/textview_for_spinner.xml=D\:\\LorealBa-LP-July-2025\\library\\build\\intermediates\\packaged_res\\release\\layout\\textview_for_spinner.xml
+com.androidbuts.multispinnerfilter.library-main-5\:/layout/activity_main.xml=D\:\\LorealBa-LP-July-2025\\library\\build\\intermediates\\packaged_res\\release\\layout\\activity_main.xml
+com.androidbuts.multispinnerfilter.library-main-5\:/layout/alert_dialog_listview_search.xml=D\:\\LorealBa-LP-July-2025\\library\\build\\intermediates\\packaged_res\\release\\layout\\alert_dialog_listview_search.xml
+com.androidbuts.multispinnerfilter.library-main-5\:/layout/item_listview_single.xml=D\:\\LorealBa-LP-July-2025\\library\\build\\intermediates\\packaged_res\\release\\layout\\item_listview_single.xml
+com.androidbuts.multispinnerfilter.library-main-5\:/layout/item_listview_multiple.xml=D\:\\LorealBa-LP-July-2025\\library\\build\\intermediates\\packaged_res\\release\\layout\\item_listview_multiple.xml
diff --git a/library/build/intermediates/incremental/release/packageReleaseResources/merger.xml b/library/build/intermediates/incremental/release/packageReleaseResources/merger.xml
index 618a68a..839e5c1 100644
--- a/library/build/intermediates/incremental/release/packageReleaseResources/merger.xml
+++ b/library/build/intermediates/incremental/release/packageReleaseResources/merger.xml
@@ -1,5 +1,5 @@
-#29CA97#06ACE4#06ACE4#1589FF#FFFFFF#000000#D1D0CE#E1E2E2#3f51b5#E1E2E2#303f9f#F06292#FF0000#00FFFF#ADD8E6#686868#747474#AAAAAA#AAAAAA#E1E2E2#455FB6#99979C16dp16dpType to Search
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/lint-cache-version.txt b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/lint-cache-version.txt
new file mode 100644
index 0000000..250f457
--- /dev/null
+++ b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/lint-cache-version.txt
@@ -0,0 +1 @@
+Cache for Android Lint31.2.2
diff --git a/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/androidx/legacy/group-index.xml b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/androidx/legacy/group-index.xml
new file mode 100644
index 0000000..8962731
--- /dev/null
+++ b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/androidx/legacy/group-index.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/com/google/android/material/group-index.xml b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/com/google/android/material/group-index.xml
new file mode 100644
index 0000000..0cbb48b
--- /dev/null
+++ b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/com/google/android/material/group-index.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/master-index.xml b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/master-index.xml
new file mode 100644
index 0000000..1172485
--- /dev/null
+++ b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/maven.google/master-index.xml
@@ -0,0 +1,314 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/sdk_index/snapshot.gz b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/sdk_index/snapshot.gz
new file mode 100644
index 0000000..55a204c
Binary files /dev/null and b/library/build/intermediates/lint-cache/lintVitalAnalyzeRelease/sdk_index/snapshot.gz differ
diff --git a/library/build/intermediates/lint_model/release/module.xml b/library/build/intermediates/lint_model/release/module.xml
new file mode 100644
index 0000000..8eb2b72
--- /dev/null
+++ b/library/build/intermediates/lint_model/release/module.xml
@@ -0,0 +1,19 @@
+
+
+
+
diff --git a/library/build/intermediates/lint_model/release/release-artifact-dependencies.xml b/library/build/intermediates/lint_model/release/release-artifact-dependencies.xml
new file mode 100644
index 0000000..b4e67d1
--- /dev/null
+++ b/library/build/intermediates/lint_model/release/release-artifact-dependencies.xml
@@ -0,0 +1,365 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint_model/release/release-artifact-libraries.xml b/library/build/intermediates/lint_model/release/release-artifact-libraries.xml
new file mode 100644
index 0000000..dc05a95
--- /dev/null
+++ b/library/build/intermediates/lint_model/release/release-artifact-libraries.xml
@@ -0,0 +1,690 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint_model/release/release-testArtifact-dependencies.xml b/library/build/intermediates/lint_model/release/release-testArtifact-dependencies.xml
new file mode 100644
index 0000000..df93d78
--- /dev/null
+++ b/library/build/intermediates/lint_model/release/release-testArtifact-dependencies.xml
@@ -0,0 +1,371 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint_model/release/release-testArtifact-libraries.xml b/library/build/intermediates/lint_model/release/release-testArtifact-libraries.xml
new file mode 100644
index 0000000..83ec209
--- /dev/null
+++ b/library/build/intermediates/lint_model/release/release-testArtifact-libraries.xml
@@ -0,0 +1,703 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint_model/release/release.xml b/library/build/intermediates/lint_model/release/release.xml
new file mode 100644
index 0000000..0815609
--- /dev/null
+++ b/library/build/intermediates/lint_model/release/release.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint_model_metadata/release/lint-model-metadata.properties b/library/build/intermediates/lint_model_metadata/release/lint-model-metadata.properties
new file mode 100644
index 0000000..f3151e7
--- /dev/null
+++ b/library/build/intermediates/lint_model_metadata/release/lint-model-metadata.properties
@@ -0,0 +1,2 @@
+mavenArtifactId=library
+mavenGroupId=LorealBa-LP-July-2025
\ No newline at end of file
diff --git a/library/build/intermediates/lint_vital_lint_model/release/module.xml b/library/build/intermediates/lint_vital_lint_model/release/module.xml
new file mode 100644
index 0000000..8eb2b72
--- /dev/null
+++ b/library/build/intermediates/lint_vital_lint_model/release/module.xml
@@ -0,0 +1,19 @@
+
+
+
+
diff --git a/library/build/intermediates/lint_vital_lint_model/release/release-artifact-dependencies.xml b/library/build/intermediates/lint_vital_lint_model/release/release-artifact-dependencies.xml
new file mode 100644
index 0000000..b4e67d1
--- /dev/null
+++ b/library/build/intermediates/lint_vital_lint_model/release/release-artifact-dependencies.xml
@@ -0,0 +1,365 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint_vital_lint_model/release/release-artifact-libraries.xml b/library/build/intermediates/lint_vital_lint_model/release/release-artifact-libraries.xml
new file mode 100644
index 0000000..dc05a95
--- /dev/null
+++ b/library/build/intermediates/lint_vital_lint_model/release/release-artifact-libraries.xml
@@ -0,0 +1,690 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/lint_vital_lint_model/release/release.xml b/library/build/intermediates/lint_vital_lint_model/release/release.xml
new file mode 100644
index 0000000..114af8f
--- /dev/null
+++ b/library/build/intermediates/lint_vital_lint_model/release/release.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/library/build/intermediates/local_aar_for_lint/release/out.aar b/library/build/intermediates/local_aar_for_lint/release/out.aar
new file mode 100644
index 0000000..6e62404
Binary files /dev/null and b/library/build/intermediates/local_aar_for_lint/release/out.aar differ
diff --git a/library/build/intermediates/manifest_merge_blame_file/release/manifest-merger-blame-release-report.txt b/library/build/intermediates/manifest_merge_blame_file/release/manifest-merger-blame-release-report.txt
index ef22004..9f8c817 100644
--- a/library/build/intermediates/manifest_merge_blame_file/release/manifest-merger-blame-release-report.txt
+++ b/library/build/intermediates/manifest_merge_blame_file/release/manifest-merger-blame-release-report.txt
@@ -5,8 +5,8 @@
5
6
7
-7-->D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:5:5-7:19
-7-->D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:5:18-44
+7-->D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:5:5-7:19
+7-->D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:5:18-44
8
9
10
diff --git a/library/build/intermediates/merged_java_res/release/feature-library.jar b/library/build/intermediates/merged_java_res/release/feature-library.jar
new file mode 100644
index 0000000..15cb0ec
Binary files /dev/null and b/library/build/intermediates/merged_java_res/release/feature-library.jar differ
diff --git a/library/build/outputs/logs/manifest-merger-release-report.txt b/library/build/outputs/logs/manifest-merger-release-report.txt
index ed9dcba..f0b6ff5 100644
--- a/library/build/outputs/logs/manifest-merger-release-report.txt
+++ b/library/build/outputs/logs/manifest-merger-release-report.txt
@@ -1,21 +1,21 @@
-- Merging decision tree log ---
manifest
-ADDED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:2:1-9:12
-INJECTED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:2:1-9:12
+ADDED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:2:1-9:12
+INJECTED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:2:1-9:12
package
- ADDED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:3:5-49
- INJECTED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml
+ ADDED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:3:5-49
+ INJECTED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml
xmlns:android
- ADDED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:2:11-69
+ ADDED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:2:11-69
application
-ADDED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:5:5-7:19
+ADDED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:5:5-7:19
android:allowBackup
- ADDED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml:5:18-44
+ ADDED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml:5:18-44
uses-sdk
-INJECTED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml reason: use-sdk injection requested
-INJECTED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml
-INJECTED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml
+INJECTED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml reason: use-sdk injection requested
+INJECTED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml
+INJECTED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml
android:targetSdkVersion
- INJECTED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml
+ INJECTED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml
android:minSdkVersion
- INJECTED from D:\jeevanp_cpm_projects\LorealBaFixedVersionIssue\RaviLatestCode19JUNE025\LorealBA_AutomationLatest\library\src\main\AndroidManifest.xml
+ INJECTED from D:\LorealBa-LP-July-2025\library\src\main\AndroidManifest.xml