From: snickersun Date: Mon, 16 Mar 2020 15:38:12 +0000 (+0800) Subject: 添加GPS窗口 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=5f2926ab2cedd41d7b61aa1985628f0488050507;p=icsupport.git 添加GPS窗口 --- diff --git a/app/app.iml b/app/app.iml index 438d0136..bbe6c1dc 100644 --- a/app/app.iml +++ b/app/app.iml @@ -108,22 +108,24 @@ + + + - + + - - \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 539d7c72..f8900b96 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -13,7 +13,7 @@ android { defaultConfig { applicationId "com.enqualcomm.support" minSdkVersion 19 - targetSdkVersion 25 + targetSdkVersion 29 versionCode currentVersionCode versionName "${currentVersionName}" multiDexEnabled true @@ -93,6 +93,9 @@ dependencies { implementation 'com.github.ChestnutPlus:TestModules:v1.0.16' testCompile 'junit:junit:4.12' implementation project(path: ':dNSCache') + implementation 'com.android.support:recyclerview-v7:25.1.0' + +// implementation "androidx.recyclerview:recyclerview:1.1.0 } def getVersionCode() { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b1e1d142..3d033892 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -100,6 +100,7 @@ android:supportsRtl="true" android:theme="@style/AppTheme"> + diff --git a/app/src/main/java/com/enqualcomm/support/GPSActivity.java b/app/src/main/java/com/enqualcomm/support/GPSActivity.java new file mode 100644 index 00000000..aa974bea --- /dev/null +++ b/app/src/main/java/com/enqualcomm/support/GPSActivity.java @@ -0,0 +1,162 @@ +package com.enqualcomm.support; + +import android.graphics.Color; +import android.graphics.Rect; +import android.os.Bundle; +import android.os.Handler; +import android.os.Message; +import android.os.PowerManager; +import android.support.v7.app.AppCompatActivity; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; +import android.view.View; +import android.widget.TextView; + +import com.enqualcomm.support.NMEAListener.location_callback; +import com.enqualcomm.support.bean.ICLocation; +import com.enqualcomm.support.utils.LocationSnrAdapter; +import com.enqualcomm.support.utils.SnrEntriy; +import com.enqualcomm.support.utils.WakeLockUtil; + +import java.util.ArrayList; +import java.util.List; +import java.util.Timer; +import java.util.TimerTask; + +public class GPSActivity extends AppCompatActivity implements location_callback { + + private RecyclerView mRv; + + private TextView mFix; + private TextView mStar; + private TextView mHoop; + private TextView mSearchCount; + private boolean showmessage=false; + private Timer timer; + final LocationSnrAdapter adapter = new LocationSnrAdapter(testSnrEntriyDate(null)); +// +// Handler handler=new Handler(new Handler.Callback() { +// @Override +// public boolean handleMessage(Message message) { +// +// +// StringBuilder sb=new StringBuilder(); +// try { +// +// if (showmessage) { +// ICLocation location=CoreService.getInstance().runtime.getLocationInstance(); +// List gpslist =location.getNumSatelliteList(); +// adapter.updateLocationValue(testSnrEntriyDate(gpslist)); +// String fixed=(location.getLocationStat()==ICLocation.LOCATION_STAT.LOCATION_FIXED)? +// "Fixed":(location.getLocationStat()==ICLocation.LOCATION_STAT.LOCATION_OPEN)? +// "Opened":(location.getLocationStat()==ICLocation.LOCATION_STAT.LOCATION_GPS_TIEMOUT)? +// "Timeout":"Closed"; +// String satlites=new StringBuilder().append(location.getLocation().used_gps_numbs).append("/").append(gpslist!=null?location.getNumSatelliteList().size():0).toString(); +// String locationTime=location.getLocationTime(); +// mFix.setText(fixed); +// mStar.setText(satlites); +// mHoop.setText(String.valueOf(location.getLocation().hdop)); +// } +// +// }catch(Exception e){ +// e.printStackTrace(); +// } +// +// +// return false; +// } +// }); + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_gps); + + mRv = (RecyclerView)findViewById(R.id.app_list); + + mFix=(TextView)findViewById(R.id.ic_lc_fix_value); + mStar =(TextView) findViewById(R.id.ic_lc_star_value); + mHoop = (TextView)findViewById(R.id.ic_lc_hoop_value); + mSearchCount= (TextView)findViewById(R.id.ic_lc_searchCount_value); + mRv.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false)); + + mRv.addItemDecoration(new SpacesItemDecoration(10)); + mRv.setAdapter(adapter); + + mFix.setText("80"); + mStar.setText("280"); + mHoop.setText("180"); + } + + @Override + public void on_locating_changed(ICLocation.GPS_locationStatus gps_status) { + + List gpslist =gps_status.numSatelliteList; + adapter.updateLocationValue(testSnrEntriyDate(gpslist)); + String fixed=gps_status.locating_status>0? + "Fixed":"notFixed"; + String satlites=new StringBuilder().append(gps_status.used_gps_numbs).append("/") + .append(gps_status.satlite_numbss).toString(); + String locationTime=new StringBuilder().append(gps_status.search_time_cost).append("秒").toString(); + mFix.setText(fixed); + mStar.setText(satlites); + mHoop.setText(String.valueOf(gps_status.hdop)); + mSearchCount.setText(locationTime); + } + + public class SpacesItemDecoration extends RecyclerView.ItemDecoration { + private int space; + + public SpacesItemDecoration(int space) { + this.space = space; + } + + @Override + public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) { + outRect.right = space; + } + } + + public ArrayList testSnrEntriyDate(List gpslist) { + ArrayList entity = new ArrayList<>(); + + if (gpslist!=null) { + for (int i = 1; i < gpslist.size(); i++) { + + float snr=gpslist.get(i).getSnr(); + int prn=gpslist.get(i).getPrn(); + SnrEntriy info = new SnrEntriy(snr,prn , (snr>=40?Color.GREEN:((snr>=25&&snr<40)?Color.YELLOW:Color.RED))); + entity.add(info); + } + } + return entity; + } + PowerManager.WakeLock screenOnWakelock=null; + @Override + protected void onResume() { + super.onResume(); +// TimerTask tmt=new TimerTask() { +// @Override +// public void run() { +// handler.sendEmptyMessage(0); +// } +// }; +// timer=new Timer(); +// timer.schedule(tmt,0,2000); +// showmessage=true; + NMEAListener.set_callback(this); + screenOnWakelock = WakeLockUtil.getScreenOnWakeLock(this,GPSActivity.class.getSimpleName()); + } + + @Override + protected void onPause() { + super.onPause(); +// if (timer!=null) { +// timer.cancel(); +// timer.purge(); +// timer = null; +// } + showmessage=false; + screenOnWakelock.release(); + + } +} diff --git a/app/src/main/java/com/enqualcomm/support/NMEAListener.java b/app/src/main/java/com/enqualcomm/support/NMEAListener.java index 23b0be68..4adfe4e3 100644 --- a/app/src/main/java/com/enqualcomm/support/NMEAListener.java +++ b/app/src/main/java/com/enqualcomm/support/NMEAListener.java @@ -5,6 +5,7 @@ import android.location.Criteria; import android.location.GpsSatellite; import android.location.GpsStatus; import android.location.GpsStatus.NmeaListener; + import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; @@ -16,7 +17,7 @@ import com.enqualcomm.support.bean.Runtime; import com.enqualcomm.support.utils.FileOutputUtil; import com.enqualcomm.support.utils.ICLogger; import com.enqualcomm.support.utils.TimeUtil; - +import com.enqualcomm.support.bean.ICLocation.GPS_locationStatus; import java.text.DecimalFormat; import java.util.ArrayList; import java.util.Iterator; @@ -28,24 +29,9 @@ public class NMEAListener implements NmeaListener, LocationListener { public boolean isListening(){ return listening; } - public class GpsSatellitePriv { - int prn; - float snr; - GpsSatellitePriv(int _prn, float _snr) { - prn=_prn; - snr=_snr; - } - public int getPrn() { - return prn; - } - public float getSnr() { - return snr; - } - } + private LocationManager locationManager; private String locationInfo; - private List numSatelliteList = new ArrayList(); // 卫星信号 - private List max3Satellite = new ArrayList(); // 卫星信号 private double longitude; private double latitude; @@ -65,6 +51,19 @@ public class NMEAListener implements NmeaListener, LocationListener { private static int locationFixedCount=0; + private static location_callback mCallback=null; + public interface location_callback{ + public void on_locating_changed(GPS_locationStatus gps_status); + } + public static void set_callback(location_callback callback){ + mCallback=callback; + } + + private GPS_locationStatus gps_status = new GPS_locationStatus(); + public GPS_locationStatus get_gps_status(){ + return gps_status; + } + public void setNoStop(boolean nostop){ noStop=nostop; @@ -92,8 +91,7 @@ public class NMEAListener implements NmeaListener, LocationListener { this.locationManager = paramLocationManager; this.runtime = paramRuntime; } - - public void onLocationChanged(Location paramLocation) {} + static int satindex=0; public void onNmeaReceived(long paramLong, String nmeastr) { // EqcAlgorithmNative.native_EqcAlgorithmMethod5(paramString); @@ -101,7 +99,14 @@ public class NMEAListener implements NmeaListener, LocationListener { if (Config.LOG_TOFILE) FileOutputUtil.fileOutputRaw(this.runtime.getCacheDir(),"Nmea",nmeastr); - if(nmeastr.startsWith("$RD_RSSI")) searchCout++; + if(nmeastr.startsWith("$RD_RSSI")) { + + searchCout++; + if (mCallback !=null) + mCallback.on_locating_changed(get_gps_status()); + gps_status.numSatelliteList.clear(); + gps_status.search_time_cost=searchCout; + } if (nmeastr.startsWith("$GPGLL,")){ @@ -149,12 +154,12 @@ public class NMEAListener implements NmeaListener, LocationListener { // ICLogger.i("GPRMC GPSTime="+utctime+",Lat="+Lat+",Lon="+lon+",fixed="+fixed+",speed="+speed); // if (Config.LOG_TOFILE) // FileOutputUtil.fileOutput(this.runtime.getCacheDir(), "GPS", "GPRMC GPSTime="+utctime+",Lat="+Lat+",Lon="+lon+",fixed="+fixed+",speed="+speed); - if (fixed.trim().equals("A")) { if (speed.trim().isEmpty()) speed = "0.0"; runtime.getLocationInstance().setSpeed(Float.valueOf(speed)); } + }else if (nmeastr.startsWith("$GPGSV,")) { // GPGSV编辑 @@ -185,11 +190,14 @@ public class NMEAListener implements NmeaListener, LocationListener { if (maxPageCount>0 && currentPage==1){ //第一页把数组初始化一遍。 satindex=0; - numSatelliteList.clear(); //清除 SNR >0的卫星 - max3Satellite.clear(); //清除 最大3个星值 + runtime.getLocationInstance().numSatelliteList.clear(); //清除 SNR >0的卫星 + runtime.getLocationInstance().max3Satellite.clear(); //清除 最大3个星值 + + gps_status.satlite_numbss=SatlitesCount; } int satcount=(tmplist.length-4)/4; // ICLogger.i("Nmea :"+nmeastr+" "+satcount); + runtime.getLocationInstance().set_adding_satlite_flag(true); for (int i=0;i0) { //排序取得最大3个SNR - get3MaxSnrSatellite(new GpsSatellitePriv(intprn, floatsnr)); - numSatelliteList.add(new GpsSatellitePriv(intprn, floatsnr)); + get3MaxSnrSatellite(new ICLocation.GpsSatellitePriv(intprn, floatsnr)); + runtime.getLocationInstance().numSatelliteList.add(new ICLocation.GpsSatellitePriv(intprn, floatsnr)); + gps_status.numSatelliteList.add(new ICLocation.GpsSatellitePriv(intprn, floatsnr)); } } + + runtime.getLocationInstance().set_adding_satlite_flag(false); if (maxPageCount==currentPage) { //最后一页,打印搜星情况,并作一些判断。 StringBuilder sb=new StringBuilder(); - sb.append("搜索"+searchCout+"次,搜索到卫星个数" + SatlitesCount+", [SNR>0] ="+numSatelliteList.size()); + sb.append("搜索"+searchCout+"次,搜索到卫星个数" + SatlitesCount+", [SNR>0] ="+ runtime.getLocationInstance().numSatelliteList.size()); sb.append(", Max 5 SNR ["); - for (int i=0;i0?(max3Satellite.get(0).getSnr()<20?true:false) : true)){ + if ( runtime.getLocationInstance().numSatelliteList.size()< 3 && ( runtime.getLocationInstance().max3Satellite.size()>0?( runtime.getLocationInstance().max3Satellite.get(0).getSnr()<20?true:false) : true)){ noSignalCount++; } @@ -248,7 +259,6 @@ public class NMEAListener implements NmeaListener, LocationListener { if (Config.LOG_TOFILE) FileOutputUtil.fileOutput(this.runtime.getCacheDir(),"GPS",sb2.toString()); - } }else if (nmeastr.startsWith("$GPGGA,")) { @@ -279,6 +289,8 @@ public class NMEAListener implements NmeaListener, LocationListener { String fixed=tmplist[6]; String usedStarts=tmplist[7]; String hdop=tmplist[8]; + + if ( (fixed.trim().equals("1"))||(fixed.trim().equals("2"))||(fixed.trim().equals("6"))){ @@ -331,8 +343,13 @@ public class NMEAListener implements NmeaListener, LocationListener { stopListen(); } } - + gps_status.locating_status=1; //fixed + }else{ + gps_status.locating_status=0; //notfixed } + gps_status.hdop=Float.valueOf(hdop.trim()); + gps_status.used_gps_numbs=Integer.valueOf(usedStarts.trim()); + }else if (nmeastr.startsWith("$GPGSA,")) { @@ -373,7 +390,12 @@ public class NMEAListener implements NmeaListener, LocationListener { public void onProviderDisabled(String paramString) {} public void onProviderEnabled(String paramString) {} - + + @Override + public void onLocationChanged(Location location) { + + } + public void onStatusChanged(String paramString, int paramInt, Bundle paramBundle) {} public boolean gpsColdStart(){ @@ -440,27 +462,27 @@ public class NMEAListener implements NmeaListener, LocationListener { return true; } }); - private void get3MaxSnrSatellite(GpsSatellitePriv gst){ + private void get3MaxSnrSatellite(ICLocation.GpsSatellitePriv gst){ float snr = gst.getSnr(); - for (int k=0;k5){ //超过三个,谁小就删掉 - max3Satellite.remove(5); + if ( runtime.getLocationInstance().max3Satellite.size()>5){ //超过三个,谁小就删掉 + runtime.getLocationInstance().max3Satellite.remove(5); } } diff --git a/app/src/main/java/com/enqualcomm/support/SnrHistogramView.java b/app/src/main/java/com/enqualcomm/support/SnrHistogramView.java new file mode 100644 index 00000000..bb4eda0e --- /dev/null +++ b/app/src/main/java/com/enqualcomm/support/SnrHistogramView.java @@ -0,0 +1,120 @@ +package com.enqualcomm.support; + +import android.content.Context; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.support.annotation.Nullable; +import android.util.AttributeSet; +import android.util.TypedValue; +import android.view.View; + + +public class SnrHistogramView extends View { + + + private int mWidth = 0; + private int mHeight = 0; + + private Paint mPaint; + private Paint mTextPaint; + + private String mSnrValue = "80"; + private String mSnrNmber = "60"; + + private float mBL=1f; + + public SnrHistogramView(Context context) { + this(context, null); + } + + public SnrHistogramView(Context context, @Nullable AttributeSet attrs) { + this(context, attrs, 0); + } + + public SnrHistogramView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { + super(context, attrs, defStyleAttr); + mPaint = new Paint(); + mTextPaint = new Paint(); + + mPaint.setAntiAlias(true); + mPaint.setDither(true); + int mBgColor = Color.GREEN; + mPaint.setColor(mBgColor); + mPaint.setStyle(Paint.Style.FILL); + + mTextPaint.setAntiAlias(true); + mTextPaint.setDither(true); + mTextPaint.setColor(Color.WHITE); + mTextPaint.setStyle(Paint.Style.FILL); + mTextPaint.setTextSize(spToPx(24)); + } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec); + + + int widthSize = MeasureSpec.getSize(widthMeasureSpec); + int widthMode = MeasureSpec.getMode(widthMeasureSpec); + int heightSize = MeasureSpec.getSize(heightMeasureSpec); + int heightMode = MeasureSpec.getMode(heightMeasureSpec); + + + if (widthMode == MeasureSpec.AT_MOST + || widthMode == MeasureSpec.UNSPECIFIED + || heightMeasureSpec == MeasureSpec.AT_MOST + || heightMeasureSpec == MeasureSpec.UNSPECIFIED) { + //宽度高度至少有一个确定的值,不能同时为wrap_content + return; + } else { //至少有一个为确定值,要获取其中的最小值 + if (widthMode == MeasureSpec.EXACTLY) { + mWidth = widthSize; + } + + if (heightMode == MeasureSpec.EXACTLY) { + mHeight = heightSize; + } + } + } + + + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + + float[] snrNmber = measureTextWidth(mSnrNmber, mTextPaint); + float[] snrValue = measureTextWidth(mSnrValue, mTextPaint); + + float hv = getHistogramHeight(snrValue[1], snrNmber[1], mBL); + + canvas.drawText(mSnrNmber, (mWidth - snrNmber[0]) / 2, mHeight, mTextPaint); + canvas.drawText(mSnrValue, (mWidth - snrValue[0]) / 2, mHeight - snrNmber[1] - hv, mTextPaint); + + canvas.drawRect(0, mHeight - (hv + snrNmber[1] - 2), mWidth, mHeight - snrNmber[1], mPaint); + } + + private float getHistogramHeight(float vh, float nh, float bl) { + return (mHeight - vh - nh) * bl; + } + + private float[] measureTextWidth(String mText, Paint textPaint) { + Paint.FontMetrics fontMetrics = textPaint.getFontMetrics(); + float height1 = fontMetrics.bottom - fontMetrics.top; + float strWidth = textPaint.measureText(mText); + return new float[]{strWidth, height1}; + } + + private float spToPx(float sp) { + return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, sp, getResources().getDisplayMetrics()); + } + + public void updateValue(float value,int number,int bgColor){ + mPaint.setColor(bgColor); + mSnrNmber = String.valueOf(number); + mSnrValue =String.valueOf((int)value); + mBL=value*0.025F; + + invalidate(); + } +} diff --git a/app/src/main/java/com/enqualcomm/support/bean/ICLocation.java b/app/src/main/java/com/enqualcomm/support/bean/ICLocation.java index d707df66..36c228ca 100644 --- a/app/src/main/java/com/enqualcomm/support/bean/ICLocation.java +++ b/app/src/main/java/com/enqualcomm/support/bean/ICLocation.java @@ -1,9 +1,40 @@ package com.enqualcomm.support.bean; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; public class ICLocation { + public static class GpsSatellitePriv { + int prn; + float snr; + public GpsSatellitePriv(int _prn, float _snr) { + prn=_prn; + snr=_snr; + } + public int getPrn() { + return prn; + } + public float getSnr() { + return snr; + } + } + public List numSatelliteList = new ArrayList(); // 卫星信号 + public List max3Satellite = new ArrayList(); // 卫星信号 + private static boolean adding_satlite_flag=false; + public void set_adding_satlite_flag(boolean flag){ + adding_satlite_flag=flag; + } + + public List getNumSatelliteList(){ + if (adding_satlite_flag) + return null; + return numSatelliteList; + } + + + private LOCATION_STAT currentStat; private GPS_LocationPoint currentLP=null; private LBS_Data currentLBS=null; @@ -17,6 +48,16 @@ public class ICLocation { public String lonStr; public float hdop; } + + + public static class GPS_locationStatus{ + public List numSatelliteList = new ArrayList(); // 卫星信号 + public int used_gps_numbs; + public float hdop; + public int satlite_numbss; + public int search_time_cost; + public int locating_status; + } public class LBS_Data{ HashMap wifi_aps=null; HashMap gsm_stations=null; diff --git a/app/src/main/java/com/enqualcomm/support/toolActivity.java b/app/src/main/java/com/enqualcomm/support/toolActivity.java index 9e3afac9..e8e79797 100644 --- a/app/src/main/java/com/enqualcomm/support/toolActivity.java +++ b/app/src/main/java/com/enqualcomm/support/toolActivity.java @@ -1,5 +1,6 @@ package com.enqualcomm.support; +import android.content.ComponentName; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; @@ -9,6 +10,8 @@ import android.widget.Button; import com.enqualcomm.support.utils.SimSignalUtil; import com.enqualcomm.support.utils.Util; +import static android.content.Intent.FLAG_ACTIVITY_NEW_TASK; + public class toolActivity extends AppCompatActivity { @Override @@ -64,10 +67,11 @@ public class toolActivity extends AppCompatActivity { @Override public void onClick(View view) { - - - Util.ShowToast(CoreService.getInstance().runtime,"Reload SimCard!"); - + Intent intent=new Intent(); + ComponentName var3 = new ComponentName("com.enqualcomm.support", "com.enqualcomm.support.GPSActivity"); + intent.addFlags(FLAG_ACTIVITY_NEW_TASK); + intent.setComponent(var3); + startActivity(intent); } }); diff --git a/app/src/main/java/com/enqualcomm/support/utils/LocationSnrAdapter.java b/app/src/main/java/com/enqualcomm/support/utils/LocationSnrAdapter.java new file mode 100644 index 00000000..7942e50e --- /dev/null +++ b/app/src/main/java/com/enqualcomm/support/utils/LocationSnrAdapter.java @@ -0,0 +1,61 @@ +package com.enqualcomm.support.utils; + +import android.support.annotation.NonNull; +import android.support.v7.widget.RecyclerView; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import com.enqualcomm.support.R; +import com.enqualcomm.support.SnrHistogramView; + +import java.util.ArrayList; + +public class LocationSnrAdapter extends RecyclerView.Adapter { + + + private ArrayList mSnrList = new ArrayList<>(); + + public LocationSnrAdapter(ArrayList mSnrList) { + this.mSnrList = mSnrList; + } + + public void updateLocationValue(ArrayList snrEntriys){ + mSnrList.clear(); + mSnrList.addAll(snrEntriys); + notifyDataSetChanged(); + } + + @NonNull + @Override + public SnrHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_snr_layout, parent, false); + return new SnrHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull SnrHolder holder, int position) { + holder.updateSnrValue(mSnrList.get(position)); + } + + @Override + public int getItemCount() { + return mSnrList.size(); + } + + static class SnrHolder extends RecyclerView.ViewHolder { + + private SnrHistogramView snrView; + + public SnrHolder(@NonNull View itemView) { + super(itemView); + snrView = (SnrHistogramView)itemView.findViewById(R.id.item_snr_view); + } + + + public void updateSnrValue(SnrEntriy entriy){ + snrView.updateValue(entriy.getSnrValue(),entriy.getSnrNumber(),entriy.getSnrBg()); + } + + } +} diff --git a/app/src/main/java/com/enqualcomm/support/utils/SnrEntriy.java b/app/src/main/java/com/enqualcomm/support/utils/SnrEntriy.java new file mode 100644 index 00000000..2dc17752 --- /dev/null +++ b/app/src/main/java/com/enqualcomm/support/utils/SnrEntriy.java @@ -0,0 +1,40 @@ +package com.enqualcomm.support.utils; + +public class SnrEntriy { + private float snrValue; + private int snrNumber; + private int snrBg; + + public SnrEntriy() { + } + + public SnrEntriy(float snrValue, int snrNumber, int snrBg) { + this.snrNumber = snrNumber; + this.snrValue = snrValue; + this.snrBg = snrBg; + } + + public float getSnrValue() { + return snrValue; + } + + public void setSnrValue(int snrValue) { + this.snrValue = snrValue; + } + + public int getSnrNumber() { + return snrNumber; + } + + public void setSnrNumber(int snrNumber) { + this.snrNumber = snrNumber; + } + + public int getSnrBg() { + return snrBg; + } + + public void setSnrBg(int snrBg) { + this.snrBg = snrBg; + } +} diff --git a/app/src/main/java/com/enqualcomm/support/utils/WakeLockUtil.java b/app/src/main/java/com/enqualcomm/support/utils/WakeLockUtil.java index a9b08b3d..9db26546 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/WakeLockUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/WakeLockUtil.java @@ -7,9 +7,9 @@ import java.util.Objects; public class WakeLockUtil { - public static PowerManager.WakeLock getWakeLock(Context context, String tag) { - PowerManager.WakeLock wakeLock = ((PowerManager)(context.getSystemService(Context.POWER_SERVICE))).newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, tag); - wakeLock.acquire(60000L); + public static PowerManager.WakeLock getScreenOnWakeLock(Context context, String tag) { + PowerManager.WakeLock wakeLock = ((PowerManager)(context.getSystemService(Context.POWER_SERVICE))).newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, tag); + wakeLock.acquire(900000L); return wakeLock; } } diff --git a/app/src/main/res/layout/activity_gps.xml b/app/src/main/res/layout/activity_gps.xml new file mode 100644 index 00000000..80caf4b8 --- /dev/null +++ b/app/src/main/res/layout/activity_gps.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_snr_layout.xml b/app/src/main/res/layout/item_snr_layout.xml new file mode 100644 index 00000000..ba3b6a61 --- /dev/null +++ b/app/src/main/res/layout/item_snr_layout.xml @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 3ab3e9cb..b9e0fd3b 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -3,4 +3,7 @@ #3F51B5 #303F9F #FF4081 + + #000000 + #FFFFFF diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 4d1c78e3..6f092f79 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -88,5 +88,10 @@ - +