fix: restore AIDE build config and layer live find map correctly
This commit is contained in:
+5
-19
@@ -1,37 +1,23 @@
|
||||
plugins {
|
||||
id 'com.android.application'
|
||||
}
|
||||
apply plugin: 'com.android.application'
|
||||
|
||||
android {
|
||||
namespace 'com.wytehat.btlogger'
|
||||
compileSdk 34
|
||||
compileSdkVersion 21
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.wytehat.btlogger"
|
||||
// BLE scanning (ScanCallback, ScanResult) is API 21+, which the
|
||||
// range finder relies on.
|
||||
minSdk 21
|
||||
// Deliberately left at 29: the service uses version-guarded
|
||||
// reflection and legacy PendingIntent flags that change behaviour
|
||||
// at targetSdk 31+.
|
||||
targetSdk 29
|
||||
minSdkVersion 14
|
||||
targetSdkVersion 29
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_17
|
||||
targetCompatibility JavaVersion.VERSION_17
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
||||
compile fileTree(dir: 'libs', include: ['*.jar'])
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.wytehat.btlogger">
|
||||
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="29"/>
|
||||
<uses-permission android:name="android.permission.BLUETOOTH"/><uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
|
||||
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/><uses-permission android:name="android.permission.BLUETOOTH_SCAN"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
|
||||
|
||||
@@ -551,7 +551,9 @@ public class LiveRangeFinderActivity extends Activity implements LocationListene
|
||||
target.latitude, target.longitude,
|
||||
Math.max(1.5, target.accuracy), direction));
|
||||
} else {
|
||||
js("clearTarget()");
|
||||
js(String.format(Locale.US, "updateEstimate(%.7f,%.7f,%.1f,%.1f,true)",
|
||||
phone.getLatitude(), phone.getLongitude(),
|
||||
Math.max(1.5, distance), direction));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -577,19 +579,19 @@ public class LiveRangeFinderActivity extends Activity implements LocationListene
|
||||
"<body><div id='map'></div><script src='https://unpkg.com/leaflet@1.9.4/dist/leaflet.js'></script><script>" +
|
||||
"var streets=L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png',{maxNativeZoom:19,maxZoom:22,attribution:'© OpenStreetMap contributors'})," +
|
||||
"sat=L.tileLayer('https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',{maxNativeZoom:19,maxZoom:22,attribution:'Esri World Imagery'})," +
|
||||
"map=L.map('map',{layers:[streets]}).setView([20,0],2);" +
|
||||
"map=L.map('map',{layers:[streets]}).setView([20,0],2);map.createPane('rangePane');map.getPane('rangePane').style.zIndex=690;map.getPane('rangePane').style.pointerEvents='none';" +
|
||||
"L.control.layers({'Streets':streets,'Satellite':sat},null,{collapsed:false}).addTo(map);" +
|
||||
"var user=null,target=null,searchCircle=null,liveState='LOST',liveDistance=20,hotCount=0,radiusTarget=20,radiusFrame=0;" +
|
||||
"var userIcon=L.divIcon({className:'',html:'<div id=bearing class=bearing><div class=you></div><div class=tip></div></div>',iconSize:[42,42],iconAnchor:[21,21]});" +
|
||||
"var pinIcon=L.divIcon({className:'',html:'<div class=item-pin></div>',iconSize:[31,40],iconAnchor:[15,39]});" +
|
||||
"function updateUser(a,b,h,s,d,station,signal){var p=[a,b];liveState=s;if(d>0)liveDistance=d;if(s=='HOT'&&d>0&&d<2.5)hotCount++;else if(s!='HOT')hotCount=0;" +
|
||||
"if(!user){user=L.marker(p,{icon:userIcon,zIndexOffset:3000}).addTo(map);searchCircle=L.circle(p,{radius:Math.max(.6,liveDistance),color:'#4285F4',weight:2,fillColor:'#4285F4',fillOpacity:.16}).addTo(map);map.setView(p,21);}else user.setLatLng(p);" +
|
||||
"if(!user){user=L.marker(p,{icon:userIcon,zIndexOffset:3000}).addTo(map);searchCircle=L.circle(p,{pane:'rangePane',interactive:false,radius:Math.max(.6,liveDistance),color:'#4285F4',weight:2,fillColor:'#4285F4',fillOpacity:.16}).addTo(map);map.setView(p,21);}else user.setLatLng(p);" +
|
||||
"searchCircle.setLatLng(p);smoothRadius(Math.max(.6,liveDistance));searchCircle.setStyle({color:'#4285F4',fillColor:'#4285F4',fillOpacity:.16});map.panTo(p,{animate:true});updateHeading(h);updatePhoneColor(signal)}" +
|
||||
"function smoothRadius(next){radiusTarget=Math.max(.6,next);if(radiusFrame)return;function step(){if(!searchCircle){radiusFrame=0;return;}var current=searchCircle.getRadius(),change=(radiusTarget-current)*.025;if(Math.abs(radiusTarget-current)<.05){searchCircle.setRadius(radiusTarget);radiusFrame=0;return;}searchCircle.setRadius(current+change);radiusFrame=requestAnimationFrame(step);}radiusFrame=requestAnimationFrame(step);}" +
|
||||
"function mix(a,b,t){return Math.round(a+(b-a)*Math.max(0,Math.min(1,t)));}function phoneColor(r){var a,b,t;if(r<=-80)return '#007AFF';if(r<-70){a=[0,122,255];b=[255,214,10];t=(r+80)/10;}else if(r<-60){a=[255,214,10];b=[255,59,48];t=(r+70)/10;}else return '#FF3B30';return 'rgb('+mix(a[0],b[0],t)+','+mix(a[1],b[1],t)+','+mix(a[2],b[2],t)+')';}function updatePhoneColor(r){var c=phoneColor(r),dot=document.querySelector('.you'),tip=document.querySelector('.tip');if(dot)dot.style.backgroundColor=c;if(tip)tip.style.borderBottomColor=c;}" +
|
||||
"function updateHeading(h){var e=document.getElementById('bearing');if(e)e.style.transform='rotate('+h+'deg)';}" +
|
||||
"function updateEstimate(a,b,r,g,pre){var p=[a,b];if(!target)target=L.marker(p,{icon:pinIcon,zIndexOffset:1200}).addTo(map);else target.setLatLng(p);target.bindPopup(pre?'Approximate item location':'Calculated item location');}" +
|
||||
"function lockTarget(a,b,r){var p=[a,b];if(!target)target=L.marker(p,{icon:pinIcon,zIndexOffset:1200}).addTo(map);else target.setLatLng(p)}" +
|
||||
"function updateEstimate(a,b,r,g,pre){var p=[a,b];if(!target)target=L.marker(p,{icon:pinIcon,zIndexOffset:500}).addTo(map);else target.setLatLng(p);target.bindPopup(pre?'Approximate item location':'Calculated item location');}" +
|
||||
"function lockTarget(a,b,r){var p=[a,b];if(!target)target=L.marker(p,{icon:pinIcon,zIndexOffset:500}).addTo(map);else target.setLatLng(p)}" +
|
||||
"function clearTarget(){if(target){map.removeLayer(target);target=null;}}" +
|
||||
"function updateGradient(g,s){}function setLost(){if(searchCircle)searchCircle.setStyle({color:'#90A4AE',fillColor:'#90A4AE',fillOpacity:.10});}" +
|
||||
"</script></body></html>";
|
||||
|
||||
Reference in New Issue
Block a user