-apply plugin: 'com.android.application'\r
-// APK 名称\r
-static def getApkBaseName() {\r
- return "FactoryMode"\r
-}\r
-\r
-def getVersionCode() {\r
- def versionCodeFile = file('version_code.properties')\r
- if (versionCodeFile.canRead()) {\r
- Properties properties = new Properties()\r
- properties.load(new FileInputStream(versionCodeFile))\r
- def versionCode = properties['VERSION_CODE'].toInteger()//读取version_code.properties文件存放的版本号。\r
- def runTasks = gradle.startParameter.taskNames\r
- def task = ':app:assembleRelease'\r
- if (task in runTasks) {\r
- properties['VERSION_CODE'] = (++versionCode).toString()\r
- properties.store(versionCodeFile.newWriter(), null)\r
- }\r
-\r
- return versionCode\r
- } else {\r
- throw new GradleException("无法读取version_code.properties文件!")\r
- }\r
-}\r
-\r
-def releaseTime() {\r
-\r
- return new Date().format("yyyyMMddHHmm", TimeZone.getTimeZone("GMT+08:00"))\r
-\r
-}\r
-android {\r
- signingConfigs {\r
- key {\r
- storeFile file("AndroidSystem.jks")\r
- storePassword "android123456"\r
- keyAlias "android"\r
- keyPassword "android123456"\r
- }\r
- }\r
- lintOptions {\r
- checkReleaseBuilds false\r
- abortOnError false\r
- }\r
- compileSdkVersion 27\r
-\r
- def currentVersionCode = getVersionCode()\r
- def currentVersionName = releaseTime()\r
-\r
- defaultConfig {\r
- applicationId "mobile.miki"\r
- minSdkVersion 19\r
- targetSdkVersion 19\r
- versionCode currentVersionCode\r
- versionName "${currentVersionName}"\r
- }\r
- buildTypes {\r
- release {\r
- minifyEnabled false\r
- signingConfig signingConfigs.key\r
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'\r
- }\r
- debug {\r
- signingConfig signingConfigs.key\r
- }\r
- }\r
- //打包后应用名称\r
- android.applicationVariants.all { variant ->\r
- variant.outputs.all {\r
- if (variant.buildType.name == "release") {\r
- outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_release.apk"\r
- } else {\r
- outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_debug.apk"\r
- }\r
- }\r
- }\r
-// buildToolsVersion '20.0.3'\r
-\r
- sourceSets {\r
- main {\r
- jni.srcDirs = []\r
- }\r
- }\r
- compileOptions {\r
- sourceCompatibility = 1.7\r
- targetCompatibility = 1.7\r
- }\r
-}\r
-\r
-dependencies {\r
- compileOnly files ('libs/frameworks-full-debug.jar')\r
- provided files ('libs/telephony_common-full-debug.jar')\r
- implementation 'com.squareup.okhttp3:okhttp:3.4.1'\r
- implementation 'io.reactivex:rxandroid:1.2.1'\r
- implementation 'com.liulishuo.filedownloader:library:1.6.3'\r
- compileOnly files('libs/IAtChannel_classes.jar')\r
- implementation files('libs/LineWrapContainer.aar')\r
- implementation 'com.android.support:appcompat-v7:27.1.1'\r
- implementation 'com.android.support:recyclerview-v7:27.1.1'\r
-// implementation 'com.android.support:recyclerview-v7:20.0.0'\r
-\r
-}\r
-preBuild {\r
-\r
- doLast {\r
- def imlFile = file( project.name + ".iml")\r
- println 'Change ' + project.name + '.iml order'\r
- try {\r
- def parsedXml = (new XmlParser()).parse(imlFile)\r
- def jdkNode = parsedXml.component[1].orderEntry.find { it.'@type' == 'jdk' }\r
- parsedXml.component[1].remove(jdkNode)\r
- def sdkString = "Android API " + android.compileSdkVersion.substring("android-".length()) + " Platform"\r
- println 'what' + sdkString\r
- new Node(parsedXml.component[1], 'orderEntry', ['type': 'jdk', 'jdkName': sdkString, 'jdkType': 'Android SDK'])\r
- groovy.xml.XmlUtil.serialize(parsedXml, new FileOutputStream(imlFile))\r
- } catch (FileNotFoundException e) {\r
- // nop, iml not found\r
- println "no iml found"\r
- }\r
- }\r
+apply plugin: 'com.android.application'
+// APK 名称
+static def getApkBaseName() {
+ return "FactoryMode"
+}
+
+def getVersionCode() {
+ def versionCodeFile = file('version_code.properties')
+ if (versionCodeFile.canRead()) {
+ Properties properties = new Properties()
+ properties.load(new FileInputStream(versionCodeFile))
+ def versionCode = properties['VERSION_CODE'].toInteger()//读取version_code.properties文件存放的版本号。
+ def runTasks = gradle.startParameter.taskNames
+ def task = ':app:assembleRelease'
+ if (task in runTasks) {
+ properties['VERSION_CODE'] = (++versionCode).toString()
+ properties.store(versionCodeFile.newWriter(), null)
+ }
+
+ return versionCode
+ } else {
+ throw new GradleException("无法读取version_code.properties文件!")
+ }
+}
+
+def releaseTime() {
+
+ return new Date().format("yyyyMMddHHmm", TimeZone.getTimeZone("GMT+08:00"))
+
+}
+android {
+ signingConfigs {
+ key {
+ storeFile file("AndroidSystem.jks")
+ storePassword "android123456"
+ keyAlias "android"
+ keyPassword "android123456"
+ }
+ }
+ lintOptions {
+ checkReleaseBuilds false
+ abortOnError false
+ }
+ compileSdkVersion 27
+
+ def currentVersionCode = getVersionCode()
+ def currentVersionName = releaseTime()
+
+ defaultConfig {
+ applicationId "mobile.miki"
+ minSdkVersion 19
+ targetSdkVersion 19
+ versionCode currentVersionCode
+ versionName "${currentVersionName}"
+ }
+ buildTypes {
+ release {
+ minifyEnabled false
+ signingConfig signingConfigs.key
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
+ }
+ debug {
+ signingConfig signingConfigs.key
+ }
+ }
+ //打包后应用名称
+ android.applicationVariants.all { variant ->
+ variant.outputs.all {
+ if (variant.buildType.name == "release") {
+ outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_release.apk"
+ } else {
+ outputFileName = "${getApkBaseName()}_V${currentVersionCode}_${currentVersionName}_debug.apk"
+ }
+ }
+ }
+// buildToolsVersion '20.0.3'
+
+ sourceSets {
+ main {
+ jni.srcDirs = []
+ }
+ }
+ compileOptions {
+ sourceCompatibility = 1.7
+ targetCompatibility = 1.7
+ }
+ ndkVersion '20.1.5948944'
+ sourceSets.main {
+ jniLibs.srcDir 'src/main/libs'
+ jni.srcDirs = [] //disable automatic ndk-build call
+ }
+}
+
+dependencies {
+ compileOnly files ('libs/frameworks-full-debug.jar')
+ provided files ('libs/telephony_common-full-debug.jar')
+ implementation 'com.squareup.okhttp3:okhttp:3.4.1'
+ implementation 'io.reactivex:rxandroid:1.2.1'
+ implementation 'com.liulishuo.filedownloader:library:1.6.3'
+ compileOnly files('libs/IAtChannel_classes.jar')
+ implementation files('libs/LineWrapContainer.aar')
+ implementation 'com.android.support:appcompat-v7:27.1.1'
+ implementation 'com.android.support:recyclerview-v7:27.1.1'
+// implementation 'com.android.support:recyclerview-v7:20.0.0'
+
+}
+preBuild {
+
+ doLast {
+ def imlFile = file( project.name + ".iml")
+ println 'Change ' + project.name + '.iml order'
+ try {
+ def parsedXml = (new XmlParser()).parse(imlFile)
+ def jdkNode = parsedXml.component[1].orderEntry.find { it.'@type' == 'jdk' }
+ parsedXml.component[1].remove(jdkNode)
+ def sdkString = "Android API " + android.compileSdkVersion.substring("android-".length()) + " Platform"
+ println 'what' + sdkString
+ new Node(parsedXml.component[1], 'orderEntry', ['type': 'jdk', 'jdkName': sdkString, 'jdkType': 'Android SDK'])
+ groovy.xml.XmlUtil.serialize(parsedXml, new FileOutputStream(imlFile))
+ } catch (FileNotFoundException e) {
+ // nop, iml not found
+ println "no iml found"
+ }
+ }
}
\ No newline at end of file
-[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":56,"versionName":"202012031753","enabled":true,"outputFile":"FactoryMode_V56_202012031753_release.apk","fullName":"release","baseName":"release"},"path":"FactoryMode_V56_202012031753_release.apk","properties":{}}]
\ No newline at end of file
+[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":57,"versionName":"202012211803","enabled":true,"outputFile":"FactoryMode_V57_202012211803_release.apk","fullName":"release","baseName":"release"},"path":"FactoryMode_V57_202012211803_release.apk","properties":{}}]
\ No newline at end of file
--- /dev/null
+package com.ic.jni;
+
+public class ag3335m_jni {
+ static {
+ System.loadLibrary("ag3335m_jni");
+ }
+ public static native int setTTYS2(); //config GPS serial port
+ public static native int resetPower(); // HW reset GPS
+
+}
-package mobile.miki;\r
-\r
-import android.app.Activity;\r
-import android.app.Service;\r
-import android.content.BroadcastReceiver;\r
-import android.content.Context;\r
-import android.content.Intent;\r
-import android.content.IntentFilter;\r
-import android.os.Bundle;\r
-import android.os.Handler;\r
-import android.os.PowerManager;\r
-import android.os.PowerManager.WakeLock;\r
-import android.os.SystemProperties;\r
-import android.util.Log;\r
-import android.view.Display;\r
-import android.view.View;\r
-import android.view.ViewGroup;\r
-import android.view.Window;\r
-\r
-import mobile.miki.util.FTUtils;\r
-\r
-public class BaseActivity extends Activity {\r
- private static final String TAG = "BaseActivity";\r
- private WakeLock wakeLock = null;\r
- private PowerManager powerManager = null; \r
- \r
- protected void onCreate(Bundle savedInstanceState) {\r
- super.onCreate(savedInstanceState);\r
- powerManager = (PowerManager) this.getSystemService(Service.POWER_SERVICE); \r
- wakeLock = this.powerManager.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "FactoryMode");\r
- IntentFilter homeFilter = new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);\r
- registerReceiver(homePressReceiver, homeFilter);\r
- if(wakeLock != null) {\r
- //是否需计算锁的数量 \r
- wakeLock.setReferenceCounted(false); \r
- //请求屏幕常亮,onResume()方法中执行 \r
- wakeLock.acquire();\r
- handler.postDelayed(runnable, 1000 * 60 * 30); //30分钟不灭屏\r
- \r
- }\r
- resizewindow();\r
- }\r
-\r
- private void resizewindow(){\r
- if(FTUtils.isA9()) {\r
- Display display = getWindowManager().getDefaultDisplay(); // 为获取屏幕宽、高\r
- Window window = getWindow();\r
- ViewGroup.LayoutParams windowLayoutParams = window.getAttributes(); // 获取对话框当前的参数值\r
- windowLayoutParams.width = 170;//(int) (display.getWidth() * 0.7); // 宽度设置为屏幕的0.95\r
- windowLayoutParams.height = 170;//(int) (display.getHeight() * 0.6); // 高度设置为屏幕的0.6\r
- }else if(FTUtils.isV20()){\r
- Display display = getWindowManager().getDefaultDisplay(); // 为获取屏幕宽、高\r
- Window window = getWindow();\r
- ViewGroup.LayoutParams windowLayoutParams = window.getAttributes(); // 获取对话框当前的参数值\r
- windowLayoutParams.width = 280;//(int) (display.getWidth() * 0.7); // 宽度设置为屏幕的0.95\r
- windowLayoutParams.height = 280;//(int) (display.getHeight() * 0.6); // 高度设置为屏幕的0.6\r
- }\r
- }\r
- \r
- @Override\r
- protected void onDestroy() {\r
- super.onDestroy();\r
- if(wakeLock != null) {\r
- //取消屏幕常亮,onPause()方法中执行 \r
- wakeLock.release(); \r
- wakeLock = null;\r
- }\r
- if(handler != null) {\r
- handler.removeCallbacks(runnable);\r
- }\r
-\r
- if (homePressReceiver != null) {\r
- unregisterReceiver(homePressReceiver);\r
- }\r
- }\r
- \r
- Handler handler=new Handler();\r
- Runnable runnable=new Runnable() {\r
- @Override\r
- public void run() {\r
- if(wakeLock != null) {\r
- //取消屏幕常亮,onPause()方法中执行 \r
- wakeLock.release(); \r
- wakeLock = null;\r
- }\r
- \r
- }\r
- };\r
- \r
- \r
- //HOME键监听\r
- private BroadcastReceiver homePressReceiver = new BroadcastReceiver() {\r
- final String SYSTEM_DIALOG_REASON_KEY = "reason";\r
- final String SYSTEM_DIALOG_REASON_HOME_KEY = "homekey";\r
- @Override\r
- public void onReceive(Context context, Intent intent) {\r
- // TODO Auto-generated method stub\r
- String action = intent.getAction();\r
- if(action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)){\r
- String reason = intent.getStringExtra(SYSTEM_DIALOG_REASON_KEY);\r
- if(reason!=null&&reason.equals(SYSTEM_DIALOG_REASON_HOME_KEY)){\r
- if(handler != null) {\r
- handler.removeCallbacks(runnable);\r
- }\r
- if(wakeLock != null) {\r
- //取消屏幕常亮,onPause()方法中执行 \r
- wakeLock.release(); \r
- wakeLock = null;\r
- }\r
- }\r
- }\r
- }\r
- };\r
- \r
- public void testSuccess(View view) {\r
- Log.i("BaseActivity", "testSuccess");\r
- sendBroadcast(new Intent("mobile.miki.testsuccess"));\r
- }\r
- \r
- public void testFail(View view) {\r
- Log.i("BaseActivity", "testFail");\r
- sendBroadcast(new Intent("mobile.miki.testfail"));\r
- }\r
-\r
-\r
- \r
-}\r
+package mobile.miki;
+
+import android.app.Activity;
+import android.app.Service;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.PowerManager;
+import android.os.PowerManager.WakeLock;
+import android.os.SystemProperties;
+import android.util.Log;
+import android.view.Display;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.Window;
+
+import mobile.miki.util.FTUtils;
+
+public class BaseActivity extends Activity {
+ private static final String TAG = "BaseActivity";
+ private WakeLock wakeLock = null;
+ private PowerManager powerManager = null;
+
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ powerManager = (PowerManager) this.getSystemService(Service.POWER_SERVICE);
+ wakeLock = this.powerManager.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "FactoryMode");
+ IntentFilter homeFilter = new IntentFilter(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
+ registerReceiver(homePressReceiver, homeFilter);
+ if(wakeLock != null) {
+ //是否需计算锁的数量
+ wakeLock.setReferenceCounted(false);
+ //请求屏幕常亮,onResume()方法中执行
+ wakeLock.acquire();
+ handler.postDelayed(runnable, 1000 * 60 * 30); //30分钟不灭屏
+
+ }
+ resizewindow();
+ }
+
+ private void resizewindow(){
+ if(FTUtils.isA9()) {
+ Display display = getWindowManager().getDefaultDisplay(); // 为获取屏幕宽、高
+ Window window = getWindow();
+ ViewGroup.LayoutParams windowLayoutParams = window.getAttributes(); // 获取对话框当前的参数值
+ windowLayoutParams.width = 170;//(int) (display.getWidth() * 0.7); // 宽度设置为屏幕的0.95
+ windowLayoutParams.height = 170;//(int) (display.getHeight() * 0.6); // 高度设置为屏幕的0.6
+ }else if(FTUtils.isV20() || FTUtils.isGT09()){
+ Display display = getWindowManager().getDefaultDisplay(); // 为获取屏幕宽、高
+ Window window = getWindow();
+ ViewGroup.LayoutParams windowLayoutParams = window.getAttributes(); // 获取对话框当前的参数值
+ windowLayoutParams.width = 280;//(int) (display.getWidth() * 0.7); // 宽度设置为屏幕的0.95
+ windowLayoutParams.height = 280;//(int) (display.getHeight() * 0.6); // 高度设置为屏幕的0.6
+ }
+ }
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ if(wakeLock != null) {
+ //取消屏幕常亮,onPause()方法中执行
+ wakeLock.release();
+ wakeLock = null;
+ }
+ if(handler != null) {
+ handler.removeCallbacks(runnable);
+ }
+
+ if (homePressReceiver != null) {
+ unregisterReceiver(homePressReceiver);
+ }
+ }
+
+ Handler handler=new Handler();
+ Runnable runnable=new Runnable() {
+ @Override
+ public void run() {
+ if(wakeLock != null) {
+ //取消屏幕常亮,onPause()方法中执行
+ wakeLock.release();
+ wakeLock = null;
+ }
+
+ }
+ };
+
+
+ //HOME键监听
+ private BroadcastReceiver homePressReceiver = new BroadcastReceiver() {
+ final String SYSTEM_DIALOG_REASON_KEY = "reason";
+ final String SYSTEM_DIALOG_REASON_HOME_KEY = "homekey";
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ // TODO Auto-generated method stub
+ String action = intent.getAction();
+ if(action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)){
+ String reason = intent.getStringExtra(SYSTEM_DIALOG_REASON_KEY);
+ if(reason!=null&&reason.equals(SYSTEM_DIALOG_REASON_HOME_KEY)){
+ if(handler != null) {
+ handler.removeCallbacks(runnable);
+ }
+ if(wakeLock != null) {
+ //取消屏幕常亮,onPause()方法中执行
+ wakeLock.release();
+ wakeLock = null;
+ }
+ }
+ }
+ }
+ };
+
+ public void testSuccess(View view) {
+ Log.i("BaseActivity", "testSuccess");
+ sendBroadcast(new Intent("mobile.miki.testsuccess"));
+ }
+
+ public void testFail(View view) {
+ Log.i("BaseActivity", "testFail");
+ sendBroadcast(new Intent("mobile.miki.testfail"));
+ }
+
+
+
+}
-package mobile.miki;\r
-\r
-import android.content.Context;\r
-import android.content.Intent;\r
-import android.graphics.Color;\r
-import android.graphics.Rect;\r
-import android.location.Criteria;\r
-import android.location.GpsStatus;\r
-import android.location.Location;\r
-import android.location.LocationListener;\r
-import android.location.LocationManager;\r
-import android.os.Bundle;\r
-import android.os.Handler;\r
-import android.os.Message;\r
-import android.os.PowerManager;\r
-import android.provider.Settings;\r
-import android.support.v7.widget.LinearLayoutManager;\r
-import android.support.v7.widget.RecyclerView;\r
-import android.view.View;\r
-import android.widget.TextView;\r
-\r
-\r
-import java.io.File;\r
-import java.io.FileOutputStream;\r
-import java.text.DecimalFormat;\r
-import java.text.SimpleDateFormat;\r
-import java.util.ArrayList;\r
-import java.util.Date;\r
-import java.util.List;\r
-import java.util.Timer;\r
-\r
-import mobile.miki.util.FTUtils;\r
-import mobile.miki.util.Logger;\r
-\r
-import static android.location.LocationManager.GPS_PROVIDER;\r
-\r
-public class GPSActivity extends BaseActivity {\r
-\r
- private RecyclerView mRv;\r
-\r
- private TextView mFix;\r
- private TextView mStar;\r
- private TextView mHoop;\r
- private TextView mSearchCount;\r
- private boolean showmessage=false;\r
- private Timer timer;\r
- final LocationSnrAdapter adapter = new LocationSnrAdapter(testSnrEntriyDate(null));\r
- private final String ttyDialogPort="/dev/ttyGS1";\r
- @Override\r
- protected void onCreate(Bundle savedInstanceState) {\r
- super.onCreate(savedInstanceState);\r
- setContentView(R.layout.gps_full_test_activity);\r
-\r
- mRv = (RecyclerView)findViewById(R.id.app_list);\r
-\r
- mFix=(TextView)findViewById(R.id.ic_lc_fix_value);\r
- mStar =(TextView) findViewById(R.id.ic_lc_star_value);\r
- mHoop = (TextView)findViewById(R.id.ic_lc_hoop_value);\r
- mSearchCount= (TextView)findViewById(R.id.ic_lc_searchCount_value);\r
- mRv.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false));\r
-\r
- mRv.addItemDecoration(new SpacesItemDecoration(10));\r
- mRv.setAdapter(adapter);\r
-\r
- mFix.setText("notFixed");\r
- mStar.setText("0 in 0/ inMap 0");\r
- mHoop.setText("0.0米");\r
- mSearchCount.setText("0秒");\r
- locationManager = (LocationManager)this.getSystemService(Context.LOCATION_SERVICE);\r
- if (FTUtils.isA9()){\r
- mFix.setTextSize(15);\r
- mStar.setTextSize(15);\r
- mHoop.setTextSize(15);\r
- mSearchCount.setTextSize(15);\r
- }\r
- startListen();\r
- }\r
-\r
-\r
- public void on_locating_changed(GPS_locationStatus gps_status) {\r
-\r
- gps_status_show.numSatelliteList.clear();\r
- gps_status_show.hdop=gps_status.hdop;\r
- gps_status_show.locating_status=gps_status.locating_status;\r
- gps_status_show.satlite_numbss=gps_status.satlite_numbss;\r
- gps_status_show.search_time_cost=gps_status.search_time_cost;\r
- gps_status_show.used_gps_numbs=gps_status.used_gps_numbs;\r
-// gps_status_show.numSatelliteList=gps_status.numSatelliteList;\r
- for (int i=0;i<gps_status.numSatelliteList.size();i++) {\r
- gps_status_show.numSatelliteList.add(i, new GpsSatellitePriv(gps_status.numSatelliteList.get(i).prn,gps_status.numSatelliteList.get(i).snr));\r
- }\r
-\r
- mHandler.sendEmptyMessage(0);\r
- }\r
-\r
- public class SpacesItemDecoration extends RecyclerView.ItemDecoration {\r
- private int space;\r
-\r
- public SpacesItemDecoration(int space) {\r
- this.space = space;\r
- }\r
-\r
- @Override\r
- public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {\r
- outRect.right = space;\r
- }\r
- }\r
- public static String getLocalTime2() { return getLocalTime2(System.currentTimeMillis()); }\r
-\r
- public static String getLocalTime2(long paramLong) { return (new SimpleDateFormat("MMdd-HHmmss")).format(new Date(paramLong)); }\r
- public static class GpsSatellitePriv {\r
- int prn;\r
- float snr;\r
- public GpsSatellitePriv(int _prn, float _snr) {\r
- prn=_prn;\r
- snr=_snr;\r
- }\r
- public int getPrn() {\r
- return prn;\r
- }\r
- public float getSnr() {\r
- return snr;\r
- }\r
- }\r
- public static class GPS_locationStatus{\r
- public List<GpsSatellitePriv> numSatelliteList = new ArrayList<GpsSatellitePriv>(); // 卫星信号\r
- public int used_gps_numbs;\r
- public float hdop;\r
- public int satlite_numbss;\r
- public int search_time_cost;\r
- public int locating_status;\r
- }\r
- public ArrayList<SnrEntriy> testSnrEntriyDate(List<GpsSatellitePriv> gpslist) {\r
- ArrayList<SnrEntriy> entity = new ArrayList<>();\r
-\r
- if (gpslist!=null) {\r
- for (int i = 0; i < gpslist.size(); i++) {\r
-\r
- float snr=gpslist.get(i).getSnr();\r
- int prn=gpslist.get(i).getPrn();\r
- Logger.d("testSnrEntriyDate snr="+snr+",prn="+prn);\r
- SnrEntriy info = new SnrEntriy(snr,prn , (snr>=40? Color.GREEN:((snr>=25&&snr<40)? Color.YELLOW: Color.RED)));\r
- entity.add(info);\r
- }\r
- }\r
- return entity;\r
- }\r
- PowerManager.WakeLock screenOnWakelock=null;\r
- @Override\r
- protected void onResume() {\r
- super.onResume();\r
- if (screenOnWakelock==null)\r
- screenOnWakelock = getScreenOnWakeLock(this,GPSActivity.class.getSimpleName());\r
-\r
- }\r
- public static PowerManager.WakeLock getScreenOnWakeLock(Context context, String tag) {\r
- PowerManager.WakeLock wakeLock = ((PowerManager)(context.getSystemService(Context.POWER_SERVICE))).newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, tag);\r
- wakeLock.acquire();\r
- return wakeLock;\r
- }\r
- @Override\r
- protected void onPause() {\r
- super.onPause();\r
- if(screenOnWakelock!=null) {\r
- if (screenOnWakelock.isHeld()) {\r
- screenOnWakelock.release();\r
- }\r
- screenOnWakelock=null;\r
- }\r
-\r
-\r
- }\r
-\r
- @Override\r
- protected void onDestroy(){\r
- super.onDestroy();\r
- stopListen();\r
-\r
- }\r
-\r
- private class myGpsListener implements GpsStatus.NmeaListener, LocationListener{\r
-\r
- @Override\r
- public void onNmeaReceived(long l, String s) {\r
- mOnNmeaReceived(l,s);\r
- }\r
-\r
- @Override\r
- public void onLocationChanged(Location location) {\r
-\r
- }\r
-\r
- @Override\r
- public void onStatusChanged(String s, int i, Bundle bundle) {\r
-\r
- }\r
-\r
- @Override\r
- public void onProviderEnabled(String s) {\r
-\r
- }\r
-\r
- @Override\r
- public void onProviderDisabled(String s) {\r
-\r
- }\r
- }\r
-\r
- Handler mHandler=new Handler(new Handler.Callback() {\r
- @Override\r
- public boolean handleMessage(Message message) {\r
-\r
- List<GpsSatellitePriv> gpslist =gps_status_show.numSatelliteList;\r
- adapter.updateLocationValue(testSnrEntriyDate(gpslist));\r
- String fixed=new StringBuilder().append(gps_status_show.locating_status>0?\r
- "Fixed ":"notFixed ").append(getLocalTime2()).toString();\r
- String satlites=new StringBuilder("used ").append(gps_status_show.used_gps_numbs).append(" in ")\r
- .append(gps_status_show.numSatelliteList.size()).append("/ inMap ").append(gps_status_show.satlite_numbss).toString();\r
- String locationTime=new StringBuilder().append(gps_status_show.search_time_cost).append(" ").append(getResources().getString(R.string.seconds)).toString();\r
- String hdop=new StringBuilder().append(String.valueOf(gps_status_show.hdop)).append(" ").append(getResources().getString(R.string.meter)).toString();\r
- mFix.setText(fixed);\r
- if (mFix.getText().toString().contains("notFixed")){\r
- mFix.setBackgroundColor(Color.RED);\r
- mFix.setTextColor(Color.WHITE);\r
- }else{\r
- mFix.setBackgroundColor(Color.GREEN);\r
- mFix.setTextColor(Color.BLACK);\r
- }\r
- mStar.setText(satlites);\r
- mHoop.setText(hdop);\r
- mSearchCount.setText(locationTime);\r
-\r
- return false;\r
- }\r
- });\r
- myGpsListener gpsListener=new myGpsListener();\r
- private boolean listening=false;\r
- public boolean startListen() {\r
-\r
- if (this.listening == false) {\r
- Settings.Secure.setLocationProviderEnabled(this.getContentResolver(), GPS_PROVIDER, true);\r
-\r
-\r
- Criteria criteria = new Criteria();\r
- criteria.setAccuracy(Criteria.ACCURACY_FINE);// 设置为最大精度\r
- criteria.setAltitudeRequired(false);//不要求海拔信息\r
- criteria.setBearingRequired(false);// 不要求方位信息\r
- criteria.setCostAllowed(true);//是否允许付费\r
- criteria.setPowerRequirement(Criteria.POWER_LOW);// 对电量的要求\r
-\r
- String provider = locationManager.getBestProvider(criteria, true);\r
-\r
- Logger.d("GPS StartListen with Provider " + provider);\r
- this.locationManager.requestLocationUpdates(provider, 0L, 0.0F, gpsListener);\r
- this.listening = true;\r
- longitude = 0;\r
- latitude = 0;\r
- searchCout = 0;\r
- locationFixedCount=0;\r
-\r
-// locationManager.addGpsStatusListener(statusListener);//监听搜星状态\r
- locationManager.addNmeaListener(gpsListener); //监听NMEA 协议数据。\r
-\r
- //做个热启动\r
- return true;//gpsHotStart();\r
- }else{\r
- Logger.d(" location listening, skip !");\r
- return true;\r
- }\r
- }\r
-\r
- private static String ACTION_GPSCMD="com.enqualcomm.support.gps";\r
- public void stopListen() {\r
- this.locationManager.removeNmeaListener(gpsListener);\r
- this.locationManager.removeUpdates(gpsListener);\r
- this.listening = false;\r
- Logger.d("stopListen 定位 ");\r
-\r
- Settings.Secure.setLocationProviderEnabled(this.getContentResolver(), GPS_PROVIDER, false);\r
- sendBroadcast();\r
- }\r
- public void sendBroadcast() {\r
- Intent intent = new Intent();\r
- intent.setAction(ACTION_GPSCMD);\r
- intent.putExtra("status", "needReopen");\r
- this.sendBroadcast(intent);\r
- }\r
- private LocationManager locationManager;\r
- private double longitude;\r
- private double latitude;\r
-\r
- private int searchCout=0;\r
-\r
- private GPS_locationStatus gps_status = new GPS_locationStatus();\r
- private GPS_locationStatus gps_status_show = new GPS_locationStatus();\r
-\r
- private void write_nmea_to_tty(String nmeastr){\r
- try {\r
- File ttyout=new File(this.ttyDialogPort);\r
- FileOutputStream fos_tty = new FileOutputStream(ttyout);\r
- fos_tty.write(nmeastr.getBytes());\r
- fos_tty.close();\r
- }catch ( Exception e){\r
- e.printStackTrace();\r
- }\r
-\r
- }\r
- private static int locationFixedCount=0;\r
- static int satindex=0;\r
- public void mOnNmeaReceived(long paramLong, String nmeastr) {\r
-// EqcAlgorithmNative.native_EqcAlgorithmMethod5(paramString);\r
-// ICLogger.i("Nmea :"+nmeastr+" "+paramLong);\r
- //write_nmea_to_tty(nmeastr);\r
- if(nmeastr.startsWith("$RD_RSSI")) {\r
-\r
- searchCout++;\r
- on_locating_changed(gps_status);\r
- gps_status.numSatelliteList.clear();\r
- gps_status.search_time_cost=searchCout;\r
- }\r
-\r
-\r
- if (nmeastr.startsWith("$GPGLL,")){\r
- String tmplist[]=nmeastr.split(",");\r
-// GPGLL编辑\r
-//(地理定位信息)\r
-// 例:$GPGLL,4250.5589,S,14718.5084,E,092204.999,A*2D\r
-// 字段0:$GPGLL,语句ID,表明该语句为Geographic Position(GLL)地理定位信息\r
-// 字段1:纬度ddmm.mmmm,度分格式(前导位数不足则补0)\r
-// 字段2:纬度N(北纬)或S(南纬)\r
-// 字段3:经度dddmm.mmmm,度分格式(前导位数不足则补0)\r
-// 字段4:经度E(东经)或W(西经)\r
-// 字段5:UTC时间,hhmmss.sss格式\r
-// 字段6:状态,A=定位,V=未定位\r
-// 字段7:校验值($与*之间的数异或后的值)\r
- String Lat=tmplist[1];\r
- String lon=tmplist[3];\r
- String fixed=tmplist[6];\r
-// ICLogger.i("GPGLL Lat="+Lat+",Lon="+lon+",fixed="+fixed);\r
-\r
- }else if (nmeastr.startsWith("$GPRMC,")) {\r
-// GPRMC编辑\r
-//(推荐定位信息数据格式)\r
-// 例:$GPRMC,024813.640,A,3158.4608,N,11848.3737,E,10.05,324.27,150706,,,A*50\r
-// 字段0:$GPRMC,语句ID,表明该语句为Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐最小定位信息\r
-// 字段1:UTC时间,hhmmss.sss格式\r
-// 字段2:状态,A=定位,V=未定位\r
-// 字段3:纬度ddmm.mmmm,度分格式(前导位数不足则补0)\r
-// 字段4:纬度N(北纬)或S(南纬)\r
-// 字段5:经度dddmm.mmmm,度分格式(前导位数不足则补0)\r
-// 字段6:经度E(东经)或W(西经)\r
-// 字段7:速度,节,Knots\r
-// 字段8:方位角,度\r
-// 字段9:UTC日期,DDMMYY格式\r
-// 字段10:磁偏角,(000 - 180)度(前导位数不足则补0)\r
-// 字段11:磁偏角方向,E=东W=西\r
-// 字段12:模式,A=自动,D=差分,E=估测,N=数据无效(3.0协议内容)\r
-// 字段13:校验值($与*之间的数异或后的值)\r
- String tmplist[]=nmeastr.split(",");\r
- String utctime=tmplist[1];\r
- String Lat=tmplist[3];\r
- String lon=tmplist[5];\r
- String fixed=tmplist[2];\r
- String speed=tmplist[7];\r
-// ICLogger.i("GPRMC GPSTime="+utctime+",Lat="+Lat+",Lon="+lon+",fixed="+fixed+",speed="+speed);\r
-// if (Config.LOG_TOFILE)\r
-// FileOutputUtil.fileOutput(this.runtime.getCacheDir(), "GPS", "GPRMC GPSTime="+utctime+",Lat="+Lat+",Lon="+lon+",fixed="+fixed+",speed="+speed);\r
- if (fixed.trim().equals("A")) {\r
- if (speed.trim().isEmpty()) speed = "0.0";\r
- }\r
-\r
-\r
- }else if (nmeastr.startsWith("$GPGSV,")) {\r
-\r
-// GPGSV编辑\r
-// (可见卫星信息)\r
-// 例:$GPGSV,3,1,10,20,78,331,45,01,59,235,47,22,41,069,,13,32,252,45*70\r
-// 字段0:$GPGSV,语句ID,表明该语句为GPS Satellites in View(GSV)可见卫星信息\r
-// 字段1:本次GSV语句的总数目(1 - 3)\r
-// 字段2:本条GSV语句是本次GSV语句的第几条(1 - 3)\r
-// 字段3:当前可见卫星总数(00 - 12)(前导位数不足则补0)\r
-// 字段4:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)\r
-// 字段5:卫星仰角(00 - 90)度(前导位数不足则补0)\r
-// 字段6:卫星方位角(00 - 359)度(前导位数不足则补0)\r
-// 字段7:信噪比(00-99)dbHz\r
-// 字段8:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)\r
-// 字段9:卫星仰角(00 - 90)度(前导位数不足则补0)\r
-// 字段10:卫星方位角(00 - 359)度(前导位数不足则补0)\r
-// 字段11:信噪比(00-99)dbHz\r
-// 字段12:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)\r
-// 字段13:卫星仰角(00 - 90)度(前导位数不足则补0)\r
-//// 字段14:卫星方位角(00 - 359)度(前导位数不足则补0)\r
-//// 字段15:信噪比(00-99)dbHz\r
-// 字段16:校验值($与*之间的数异或后的值)\r
-\r
- String tmplist[]=nmeastr.split(",");\r
- int maxPageCount= Integer.valueOf(tmplist[1]);\r
- int currentPage= Integer.valueOf(tmplist[2]);\r
- int SatlitesCount= Integer.valueOf(tmplist[3]);\r
- if (maxPageCount>0 && currentPage==1){\r
- //第一页把数组初始化一遍。\r
- satindex=0;\r
- gps_status.satlite_numbss=SatlitesCount;\r
- }\r
- int satcount=(tmplist.length-4)/4;\r
-// ICLogger.i("Nmea :"+nmeastr+" "+satcount);\r
- for (int i=0;i<satcount;i++){\r
- satindex++;\r
- String prn=tmplist[i*4+4];\r
- String snr=tmplist[i*4+4+3];\r
- if (snr.contains("*")){\r
- snr=snr.substring(0,snr.indexOf("*"));\r
- }\r
- if (snr.trim().isEmpty()){\r
- snr="0";\r
- }\r
- Logger.d("Sat="+satindex+",prn="+prn+",snr="+snr);\r
-\r
- int intprn= Integer.valueOf(prn);\r
- float floatsnr= Float.valueOf(snr);\r
- if (floatsnr>0) {\r
- gps_status.numSatelliteList.add(new GpsSatellitePriv(intprn, floatsnr));\r
- }\r
- }\r
-\r
- if (maxPageCount==currentPage) {\r
- //最后一页,打印搜星情况,并作一些判断。\r
- StringBuilder sb=new StringBuilder();\r
- sb.append("搜索"+searchCout+"次,搜索到卫星个数" + SatlitesCount+", [SNR>0] ="+ gps_status.numSatelliteList.size());\r
-\r
- Logger.d( sb.toString());\r
-\r
- }\r
- }else if (nmeastr.startsWith("$GPGGA,")) {\r
-\r
-// GPGGA编辑\r
-//(定位信息)\r
-// 例:$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4,12.2,M,19.7,M,,0000*1F\r
-// 字段0:$GPGGA,语句ID,表明该语句为Global Positioning System Fix Data(GGA)GPS定位信息\r
-// 字段1:UTC 时间,hhmmss.sss,时分秒格式\r
-// 字段2:纬度ddmm.mmmm,度分格式(前导位数不足则补0)\r
-// 字段3:纬度N(北纬)或S(南纬)\r
-// 字段4:经度dddmm.mmmm,度分格式(前导位数不足则补0)\r
-// 字段5:经度E(东经)或W(西经)\r
-// 字段6:GPS状态,0=不可用(FIX NOT valid),1=单点定位(GPS FIX),2=差分定位(DGPS),3=无效PPS,4=实时差分定位(RTK FIX),5=RTK FLOAT,6=正在估算\r
-// 字段7:正在使用的卫星数量(00 - 12)(前导位数不足则补0)\r
-// 字段8:HDOP水平精度因子(0.5 - 99.9)\r
-// 字段9:海拔高度(-9999.9 - 99999.9)\r
-// 字段10:单位:M(米)\r
-// 字段11:地球椭球面相对大地水准面的高度 WGS84水准面划分\r
-// 字段12:WGS84水准面划分单位:M(米)\r
-// 字段13:差分时间(从接收到差分信号开始的秒数,如果不是差分定位将为空)\r
-// 字段14:差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空)\r
-// 字段15:校验值($与*之间的数异或后的值)\r
-\r
- String tmplist[]=nmeastr.split(",");\r
- String utctime=tmplist[1];\r
- String Lat=tmplist[2];\r
- String lon=tmplist[4];\r
- String fixed=tmplist[6];\r
- String usedStarts=tmplist[7];\r
- String hdop=tmplist[8];\r
-\r
-\r
- if ( (fixed.trim().equals("1"))||(fixed.trim().equals("2"))||(fixed.trim().equals("6"))){\r
-\r
-\r
- // 转换GPS坐标为度,以便在各种应用中可以方便查找。\r
- latitude= Double.valueOf(Lat);\r
- longitude= Double.valueOf(lon);\r
- // 转换单位,从分转换到度\r
-\r
- double intdu= (int)(longitude /100f); //小数转换到分为单位\r
- double du=(longitude - intdu*100)/60f;\r
- double last= intdu+du;\r
- longitude =last;\r
- intdu= (int)(latitude /100f); //小数转换到分为单位\r
- du=(latitude - intdu*100)/60f;\r
- last= intdu+du;\r
- latitude=last;\r
-\r
- // 经纬度 保留4位小数点\r
- DecimalFormat df = new DecimalFormat("#.000000");\r
- String strLatitude = df.format(latitude);\r
- String strLongitude = df.format(longitude);\r
-\r
- //定位\r
- StringBuilder sb=new StringBuilder();\r
- sb.append("GPGGA, location time= " + getLocalTime2() + ", FixedCount=" + locationFixedCount + ", GPSTime="+utctime+", Lat="+Lat+" ("+strLatitude+"), Lon="+lon+" ("+strLongitude+"), fixed="+fixed+", hdop="+hdop+", usedStarts="+usedStarts);\r
- Logger.d(sb.toString());\r
-\r
- gps_status.locating_status=1; //fixed\r
- }else{\r
- gps_status.locating_status=0; //notfixed\r
- }\r
- gps_status.hdop= Float.valueOf(hdop.trim());\r
- gps_status.used_gps_numbs= Integer.valueOf(usedStarts.trim());\r
-\r
-\r
- }else if (nmeastr.startsWith("$GPGSA,")) {\r
-\r
-// GPGSA编辑\r
-//( 当前卫星信息)\r
-// 例:$GPGSA,A,3,01,20,19,13,,,,,,,,,40.4,24.4,32.2*0A\r
-// 字段0:$GPGSA,语句ID,表明该语句为GPS DOP and Active Satellites(GSA)当前卫星信息\r
-// 字段1:定位模式(选择2D/3D),A=自动选择,M=手动选择\r
-// 字段2:定位类型,1=未定位,2=2D定位,3=3D定位\r
-// 字段3:PRN码(伪随机噪声码),第1信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段4:PRN码(伪随机噪声码),第2信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段5:PRN码(伪随机噪声码),第3信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段6:PRN码(伪随机噪声码),第4信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段7:PRN码(伪随机噪声码),第5信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段8:PRN码(伪随机噪声码),第6信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段9:PRN码(伪随机噪声码),第7信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段10:PRN码(伪随机噪声码),第8信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段11:PRN码(伪随机噪声码),第9信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段12:PRN码(伪随机噪声码),第10信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段13:PRN码(伪随机噪声码),第11信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段14:PRN码(伪随机噪声码),第12信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)\r
-// 字段15:PDOP综合位置精度因子(0.5 - 99.9)\r
-// 字段16:HDOP水平精度因子(0.5 - 99.9)\r
-// 字段17:VDOP垂直精度因子(0.5 - 99.9)\r
-// 字段18:校验值($与*之间的数异或后的值)\r
-\r
-// String tmplist[]=nmeastr.split(",");\r
-// String locationmod=tmplist[1];\r
-// String fixed=tmplist[2];\r
-// String hdop=tmplist[16];\r
-// if (!fixed.trim().equals("1")){\r
-// //定位\r
-// ICLogger.i("GPGSA fixed="+fixed+",hdop="+hdop);\r
-// }\r
- }\r
- }\r
-\r
-}\r
+package mobile.miki;
+
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Color;
+import android.graphics.Rect;
+import android.location.Criteria;
+import android.location.GpsStatus;
+import android.location.Location;
+import android.location.LocationListener;
+import android.location.LocationManager;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.os.PowerManager;
+import android.provider.Settings;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.Log;
+import android.view.View;
+import android.widget.TextView;
+
+
+import com.ic.jni.ag3335m_jni;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.text.DecimalFormat;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Timer;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.Future;
+
+import mobile.miki.util.FTUtils;
+import mobile.miki.util.Logger;
+
+import static android.location.LocationManager.GPS_PROVIDER;
+
+public class GPSActivity extends BaseActivity {
+
+ 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));
+ private final String ttyDialogPort="/dev/ttyGS3";
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ if(FTUtils.isGT09()){
+ setContentView(R.layout.gps_full_test_activity_280);
+ }else {
+ setContentView(R.layout.gps_full_test_activity);
+ }
+ 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("notFixed");
+ mStar.setText("0 in 0/ inMap 0");
+ mHoop.setText("0.0米");
+ mSearchCount.setText("0秒");
+ locationManager = (LocationManager)this.getSystemService(Context.LOCATION_SERVICE);
+ if (FTUtils.isA9() ){
+ mFix.setTextSize(15);
+ mStar.setTextSize(15);
+ mHoop.setTextSize(15);
+ mSearchCount.setTextSize(15);
+ }
+ startListen();
+ }
+
+
+ public void on_locating_changed(GPS_locationStatus gps_status) {
+
+ gps_status_show.numSatelliteList.clear();
+ gps_status_show.hdop=gps_status.hdop;
+ gps_status_show.locating_status=gps_status.locating_status;
+ gps_status_show.satlite_numbss=gps_status.satlite_numbss;
+ gps_status_show.search_time_cost=gps_status.search_time_cost;
+ gps_status_show.used_gps_numbs=gps_status.used_gps_numbs;
+// gps_status_show.numSatelliteList=gps_status.numSatelliteList;
+ for (int i=0;i<gps_status.numSatelliteList.size();i++) {
+ gps_status_show.numSatelliteList.add(i, new GpsSatellitePriv(gps_status.numSatelliteList.get(i).prn,gps_status.numSatelliteList.get(i).snr));
+ }
+
+ mHandler.sendEmptyMessage(0);
+ }
+
+ 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 static String getLocalTime2() { return getLocalTime2(System.currentTimeMillis()); }
+
+ public static String getLocalTime2(long paramLong) { return (new SimpleDateFormat("MMdd-HHmmss")).format(new Date(paramLong)); }
+ 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 static class GPS_locationStatus{
+ public List<GpsSatellitePriv> numSatelliteList = new ArrayList<GpsSatellitePriv>(); // 卫星信号
+ public int used_gps_numbs;
+ public float hdop;
+ public int satlite_numbss;
+ public int search_time_cost;
+ public int locating_status;
+ }
+ public ArrayList<SnrEntriy> testSnrEntriyDate(List<GpsSatellitePriv> gpslist) {
+ ArrayList<SnrEntriy> entity = new ArrayList<>();
+
+ if (gpslist!=null) {
+ for (int i = 0; i < gpslist.size(); i++) {
+
+ float snr=gpslist.get(i).getSnr();
+ int prn=gpslist.get(i).getPrn();
+ Logger.d("testSnrEntriyDate snr="+snr+",prn="+prn);
+ 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();
+ if (screenOnWakelock==null)
+ screenOnWakelock = getScreenOnWakeLock(this,GPSActivity.class.getSimpleName());
+
+ }
+ 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();
+ return wakeLock;
+ }
+ @Override
+ protected void onPause() {
+ super.onPause();
+ if(screenOnWakelock!=null) {
+ if (screenOnWakelock.isHeld()) {
+ screenOnWakelock.release();
+ }
+ screenOnWakelock=null;
+ }
+
+
+ }
+
+ @Override
+ protected void onDestroy(){
+ super.onDestroy();
+ stopListen();
+
+ }
+
+ private class myGpsListener implements GpsStatus.NmeaListener, LocationListener{
+
+ @Override
+ public void onNmeaReceived(long l, String s) {
+ mOnNmeaReceived(l,s);
+ }
+
+ @Override
+ public void onLocationChanged(Location location) {
+
+ }
+
+ @Override
+ public void onStatusChanged(String s, int i, Bundle bundle) {
+
+ }
+
+ @Override
+ public void onProviderEnabled(String s) {
+
+ }
+
+ @Override
+ public void onProviderDisabled(String s) {
+
+ }
+ }
+
+ Handler mHandler=new Handler(new Handler.Callback() {
+ @Override
+ public boolean handleMessage(Message message) {
+
+ List<GpsSatellitePriv> gpslist =gps_status_show.numSatelliteList;
+ adapter.updateLocationValue(testSnrEntriyDate(gpslist));
+ String fixed=new StringBuilder().append(gps_status_show.locating_status>0?
+ "Fixed ":"notFixed ").append(getLocalTime2()).toString();
+ String satlites=new StringBuilder("used ").append(gps_status_show.used_gps_numbs).append(" in ")
+ .append(gps_status_show.numSatelliteList.size()).append("/ inMap ").append(gps_status_show.satlite_numbss).toString();
+ String locationTime=new StringBuilder().append(gps_status_show.search_time_cost).append(" ").append(getResources().getString(R.string.seconds)).toString();
+ String hdop=new StringBuilder().append(String.valueOf(gps_status_show.hdop)).append(" ").append(getResources().getString(R.string.meter)).toString();
+ mFix.setText(fixed);
+ if (mFix.getText().toString().contains("notFixed")){
+ mFix.setBackgroundColor(Color.RED);
+ mFix.setTextColor(Color.WHITE);
+ }else{
+ mFix.setBackgroundColor(Color.GREEN);
+ mFix.setTextColor(Color.BLACK);
+ }
+ mStar.setText(satlites);
+ mHoop.setText(hdop);
+ mSearchCount.setText(locationTime);
+
+ return false;
+ }
+ });
+ myGpsListener gpsListener=new myGpsListener();
+ private boolean listening=false;
+ public boolean startListen() {
+ if(FTUtils.isGT09())
+ {
+ enableAG3335M(true);
+ return true;
+ }else{
+ if (this.listening == false) {
+ Settings.Secure.setLocationProviderEnabled(this.getContentResolver(), GPS_PROVIDER, true);
+
+
+ Criteria criteria = new Criteria();
+ criteria.setAccuracy(Criteria.ACCURACY_FINE);// 设置为最大精度
+ criteria.setAltitudeRequired(false);//不要求海拔信息
+ criteria.setBearingRequired(false);// 不要求方位信息
+ criteria.setCostAllowed(true);//是否允许付费
+ criteria.setPowerRequirement(Criteria.POWER_LOW);// 对电量的要求
+
+ String provider = locationManager.getBestProvider(criteria, true);
+
+ Logger.d("GPS StartListen with Provider " + provider);
+ this.locationManager.requestLocationUpdates(provider, 0L, 0.0F, gpsListener);
+ this.listening = true;
+ longitude = 0;
+ latitude = 0;
+ searchCout = 0;
+ locationFixedCount=0;
+
+// locationManager.addGpsStatusListener(statusListener);//监听搜星状态
+ locationManager.addNmeaListener(gpsListener); //监听NMEA 协议数据。
+
+ //做个热启动
+ return true;//gpsHotStart();
+ }else{
+ Logger.d(" location listening, skip !");
+ return true;
+ }
+ }
+ }
+
+
+ public static ExecutorService executor= Executors.newCachedThreadPool();
+ public static Future trans=null;
+ static volatile boolean serial_thread_running=false;
+ public final String GPS_SERIAL_DEVICE = "/dev/ttyS2";
+ public final String USB_SERIAL_DEVICE = "/dev/ttyGS3";
+
+ public void enableAG3335M(boolean enable){
+ if(enable==true) {
+
+ //first init TTY devices
+ ag3335m_jni.setTTYS2();
+
+
+ //create thread reading GPS data and send to USB SerialPort named " SPRD WCN DIAG "
+ //you can get GPS NMEA data in this thread
+ if(serial_thread_running==false) {
+ if (trans==null) {
+ trans = executor.submit(thransferGPSdata);
+ }else if ( trans.isDone() || trans.isCancelled()){
+ trans = executor.submit(thransferGPSdata);
+ }
+ }
+
+
+
+ // HW reset the GPS , you can do or not do it as you need.
+ ag3335m_jni.resetPower();
+
+ }else {
+ serial_thread_running = false;
+ trans.cancel(true);
+
+ }
+ }
+ public Runnable thransferGPSdata=new Runnable() {
+
+ @Override
+ public void run() {
+ FileInputStream fs=null;
+ Log.i("trans","ttyS2 start");
+ serial_thread_running=true;
+ if(fs==null) {
+ try {
+ fs=new FileInputStream(new File(GPS_SERIAL_DEVICE));
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
+ }
+ }
+
+ byte[] buf=new byte[4096];
+ int l=0;
+ while (serial_thread_running){
+ if(fs!=null){
+ try {
+ l=fs.read(buf);
+ if(l>0 ){
+ String[] list=new String(buf,0,l).split("\r\n");
+ for( int i=0; i< list.length;i++) {
+ int idx=list[i].indexOf("*");
+ if(idx>0 && list[i].startsWith("$")) {
+ mOnNmeaReceived(list[i].length(), list[i].substring(0,idx));
+ }
+ }
+ }else{
+ Thread.sleep(100);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ try {
+ fs.close();
+ } catch (IOException ioException) {
+ ioException.printStackTrace();
+ }finally {
+ fs=null;
+ }
+
+ }
+ }else{
+ break;
+ }
+ }
+ try {
+ fs.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }finally {
+ fs=null;
+ }
+
+
+ Log.i("trans","ttyS2 done");
+ }
+ };
+ private static String ACTION_GPSCMD="com.enqualcomm.support.gps";
+ public void stopListen() {
+ if(FTUtils.isGT09())
+ {
+ enableAG3335M(false);
+ }else {
+ this.locationManager.removeNmeaListener(gpsListener);
+ this.locationManager.removeUpdates(gpsListener);
+ this.listening = false;
+ Logger.d("stopListen 定位 ");
+
+ Settings.Secure.setLocationProviderEnabled(this.getContentResolver(), GPS_PROVIDER, false);
+ sendBroadcast();
+ }
+ }
+ public void sendBroadcast() {
+ Intent intent = new Intent();
+ intent.setAction(ACTION_GPSCMD);
+ intent.putExtra("status", "needReopen");
+ this.sendBroadcast(intent);
+ }
+ private LocationManager locationManager;
+ private double longitude;
+ private double latitude;
+
+ private int searchCout=0;
+
+ private GPS_locationStatus gps_status = new GPS_locationStatus();
+ private GPS_locationStatus gps_status_show = new GPS_locationStatus();
+
+ private void write_nmea_to_tty(String nmeastr){
+ try {
+ File ttyout=new File(this.ttyDialogPort);
+ FileOutputStream fos_tty = new FileOutputStream(ttyout);
+ fos_tty.write(nmeastr.getBytes());
+ fos_tty.close();
+ }catch ( Exception e){
+ e.printStackTrace();
+ }
+
+ }
+ private static int locationFixedCount=0;
+ static int satindex=0;
+ public void mOnNmeaReceived(long paramLong, String nmeastr) {
+// EqcAlgorithmNative.native_EqcAlgorithmMethod5(paramString);
+ Logger.d("Nmea :"+nmeastr+" "+paramLong);
+ //write_nmea_to_tty(nmeastr);
+ if(nmeastr.startsWith("$RD_RSSI") ||nmeastr.startsWith("$GNGGA")) {
+
+ searchCout++;
+ on_locating_changed(gps_status);
+ gps_status.numSatelliteList.clear();
+ gps_status.search_time_cost=searchCout;
+ }
+
+
+ if (nmeastr.startsWith("$GPGLL,")||nmeastr.startsWith("$GNGLL,")){
+ String tmplist[]=nmeastr.split(",");
+// GPGLL编辑
+//(地理定位信息)
+// 例:$GPGLL,4250.5589,S,14718.5084,E,092204.999,A*2D
+// 字段0:$GPGLL,语句ID,表明该语句为Geographic Position(GLL)地理定位信息
+// 字段1:纬度ddmm.mmmm,度分格式(前导位数不足则补0)
+// 字段2:纬度N(北纬)或S(南纬)
+// 字段3:经度dddmm.mmmm,度分格式(前导位数不足则补0)
+// 字段4:经度E(东经)或W(西经)
+// 字段5:UTC时间,hhmmss.sss格式
+// 字段6:状态,A=定位,V=未定位
+// 字段7:校验值($与*之间的数异或后的值)
+ if(tmplist.length>6) {
+ String Lat = tmplist[1];
+ String lon = tmplist[3];
+ String fixed = tmplist[6];
+// ICLogger.i("GPGLL Lat="+Lat+",Lon="+lon+",fixed="+fixed);
+ }
+ }else if (nmeastr.startsWith("$GPRMC,")||nmeastr.startsWith("$GNRMC,")) {
+// GPRMC编辑
+//(推荐定位信息数据格式)
+// 例:$GPRMC,024813.640,A,3158.4608,N,11848.3737,E,10.05,324.27,150706,,,A*50
+// 字段0:$GPRMC,语句ID,表明该语句为Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐最小定位信息
+// 字段1:UTC时间,hhmmss.sss格式
+// 字段2:状态,A=定位,V=未定位
+// 字段3:纬度ddmm.mmmm,度分格式(前导位数不足则补0)
+// 字段4:纬度N(北纬)或S(南纬)
+// 字段5:经度dddmm.mmmm,度分格式(前导位数不足则补0)
+// 字段6:经度E(东经)或W(西经)
+// 字段7:速度,节,Knots
+// 字段8:方位角,度
+// 字段9:UTC日期,DDMMYY格式
+// 字段10:磁偏角,(000 - 180)度(前导位数不足则补0)
+// 字段11:磁偏角方向,E=东W=西
+// 字段12:模式,A=自动,D=差分,E=估测,N=数据无效(3.0协议内容)
+// 字段13:校验值($与*之间的数异或后的值)
+ String tmplist[]=nmeastr.split(",");
+ if(tmplist.length>7) {
+ String utctime = tmplist[1];
+ String Lat = tmplist[3];
+ String lon = tmplist[5];
+ String fixed = tmplist[2];
+ String speed = tmplist[7];
+// 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";
+ }
+
+ }
+
+ }else if (nmeastr.startsWith("$GPGSV,") ||nmeastr.startsWith("$GLGSV,")||nmeastr.startsWith("$GAGSV,")||nmeastr.startsWith("$GBGSV,")) {
+
+// GPGSV编辑
+// (可见卫星信息)
+// 例:$GPGSV,3,1,10,20,78,331,45,01,59,235,47,22,41,069,,13,32,252,45*70
+// 字段0:$GPGSV,语句ID,表明该语句为GPS Satellites in View(GSV)可见卫星信息
+// 字段1:本次GSV语句的总数目(1 - 3)
+// 字段2:本条GSV语句是本次GSV语句的第几条(1 - 3)
+// 字段3:当前可见卫星总数(00 - 12)(前导位数不足则补0)
+// 字段4:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)
+// 字段5:卫星仰角(00 - 90)度(前导位数不足则补0)
+// 字段6:卫星方位角(00 - 359)度(前导位数不足则补0)
+// 字段7:信噪比(00-99)dbHz
+// 字段8:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)
+// 字段9:卫星仰角(00 - 90)度(前导位数不足则补0)
+// 字段10:卫星方位角(00 - 359)度(前导位数不足则补0)
+// 字段11:信噪比(00-99)dbHz
+// 字段12:PRN 码(伪随机噪声码)(01 - 32)(前导位数不足则补0)
+// 字段13:卫星仰角(00 - 90)度(前导位数不足则补0)
+//// 字段14:卫星方位角(00 - 359)度(前导位数不足则补0)
+//// 字段15:信噪比(00-99)dbHz
+// 字段16:校验值($与*之间的数异或后的值)
+
+ String tmplist[]=nmeastr.split(",");
+ if(tmplist.length>3) {
+ int maxPageCount = 0;
+ int currentPage = 0;
+ int SatlitesCount = 0;
+
+ try {
+ maxPageCount = Integer.valueOf(tmplist[1]);
+ } catch (Exception e) {
+ }
+ try {
+ currentPage = Integer.valueOf(tmplist[2]);
+ } catch (Exception e) {
+ }
+ try {
+ SatlitesCount = Integer.valueOf(tmplist[3]);
+ } catch (Exception e) {
+ }
+ if (maxPageCount > 0 && currentPage == 1) {
+ //第一页把数组初始化一遍。
+ satindex = 0;
+ gps_status.satlite_numbss = SatlitesCount;
+ }
+ int satcount = (tmplist.length - 4) / 4;
+// ICLogger.i("Nmea :"+nmeastr+" "+satcount);
+ for (int i = 0; i < satcount; i++) {
+ satindex++;
+ String prn = tmplist[i * 4 + 4];
+ String snr = tmplist[i * 4 + 4 + 3];
+ if (snr.contains("*")) {
+ snr = snr.substring(0, snr.indexOf("*"));
+ }
+ if (snr.trim().isEmpty()) {
+ snr = "0";
+ }
+ Logger.d("Sat=" + satindex + ",prn=" + prn + ",snr=" + snr);
+
+ int intprn = 0;
+ try {
+ intprn = Integer.valueOf(prn);
+ } catch (Exception e) {
+ }
+ float floatsnr = 0;
+ try {
+ floatsnr = Float.valueOf(snr);
+ } catch (Exception e) {
+ }
+ if (floatsnr > 0) {
+ gps_status.numSatelliteList.add(new GpsSatellitePriv(intprn, floatsnr));
+ }
+ }
+
+ if (maxPageCount == currentPage) {
+ //最后一页,打印搜星情况,并作一些判断。
+ StringBuilder sb = new StringBuilder();
+ sb.append("搜索" + searchCout + "次,搜索到卫星个数" + SatlitesCount + ", [SNR>0] =" + gps_status.numSatelliteList.size());
+
+ Logger.d(sb.toString());
+
+ }
+ }
+ }else if (nmeastr.startsWith("$GPGGA,")||nmeastr.startsWith("$GNGGA,")) {
+
+// GPGGA编辑
+//(定位信息)
+// 例:$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4,12.2,M,19.7,M,,0000*1F
+// 字段0:$GPGGA,语句ID,表明该语句为Global Positioning System Fix Data(GGA)GPS定位信息
+// 字段1:UTC 时间,hhmmss.sss,时分秒格式
+// 字段2:纬度ddmm.mmmm,度分格式(前导位数不足则补0)
+// 字段3:纬度N(北纬)或S(南纬)
+// 字段4:经度dddmm.mmmm,度分格式(前导位数不足则补0)
+// 字段5:经度E(东经)或W(西经)
+// 字段6:GPS状态,0=不可用(FIX NOT valid),1=单点定位(GPS FIX),2=差分定位(DGPS),3=无效PPS,4=实时差分定位(RTK FIX),5=RTK FLOAT,6=正在估算
+// 字段7:正在使用的卫星数量(00 - 12)(前导位数不足则补0)
+// 字段8:HDOP水平精度因子(0.5 - 99.9)
+// 字段9:海拔高度(-9999.9 - 99999.9)
+// 字段10:单位:M(米)
+// 字段11:地球椭球面相对大地水准面的高度 WGS84水准面划分
+// 字段12:WGS84水准面划分单位:M(米)
+// 字段13:差分时间(从接收到差分信号开始的秒数,如果不是差分定位将为空)
+// 字段14:差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空)
+// 字段15:校验值($与*之间的数异或后的值)
+
+ String tmplist[]=nmeastr.split(",");
+ if (tmplist.length>8) {
+ String utctime = tmplist[1];
+ String Lat = tmplist[2];
+ String lon = tmplist[4];
+ 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"))) {
+
+
+ // 转换GPS坐标为度,以便在各种应用中可以方便查找。
+ try {
+ latitude = Double.valueOf(Lat);
+ longitude = Double.valueOf(lon);
+ } catch (Exception e) {
+ }
+ // 转换单位,从分转换到度
+
+ double intdu = (int) (longitude / 100f); //小数转换到分为单位
+ double du = (longitude - intdu * 100) / 60f;
+ double last = intdu + du;
+ longitude = last;
+ intdu = (int) (latitude / 100f); //小数转换到分为单位
+ du = (latitude - intdu * 100) / 60f;
+ last = intdu + du;
+ latitude = last;
+
+ // 经纬度 保留4位小数点
+ DecimalFormat df = new DecimalFormat("#.000000");
+ String strLatitude = df.format(latitude);
+ String strLongitude = df.format(longitude);
+
+ //定位
+ StringBuilder sb = new StringBuilder();
+ sb.append("GPGGA, location time= " + getLocalTime2() + ", FixedCount=" + locationFixedCount + ", GPSTime=" + utctime + ", Lat=" + Lat + " (" + strLatitude + "), Lon=" + lon + " (" + strLongitude + "), fixed=" + fixed + ", hdop=" + hdop + ", usedStarts=" + usedStarts);
+ Logger.d(sb.toString());
+
+ gps_status.locating_status = 1; //fixed
+ } else {
+ gps_status.locating_status = 0; //notfixed
+ }
+ try {
+ gps_status.hdop = Float.valueOf(hdop.trim());
+ gps_status.used_gps_numbs = Integer.valueOf(usedStarts.trim());
+ } catch (Exception e) {
+ }
+
+ }
+ }else if (nmeastr.startsWith("$GPGSA,")||nmeastr.startsWith("$GNGSA,")) {
+
+// GPGSA编辑
+//( 当前卫星信息)
+// 例:$GPGSA,A,3,01,20,19,13,,,,,,,,,40.4,24.4,32.2*0A
+// 字段0:$GPGSA,语句ID,表明该语句为GPS DOP and Active Satellites(GSA)当前卫星信息
+// 字段1:定位模式(选择2D/3D),A=自动选择,M=手动选择
+// 字段2:定位类型,1=未定位,2=2D定位,3=3D定位
+// 字段3:PRN码(伪随机噪声码),第1信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段4:PRN码(伪随机噪声码),第2信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段5:PRN码(伪随机噪声码),第3信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段6:PRN码(伪随机噪声码),第4信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段7:PRN码(伪随机噪声码),第5信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段8:PRN码(伪随机噪声码),第6信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段9:PRN码(伪随机噪声码),第7信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段10:PRN码(伪随机噪声码),第8信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段11:PRN码(伪随机噪声码),第9信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段12:PRN码(伪随机噪声码),第10信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段13:PRN码(伪随机噪声码),第11信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段14:PRN码(伪随机噪声码),第12信道正在使用的卫星PRN码编号(00)(前导位数不足则补0)
+// 字段15:PDOP综合位置精度因子(0.5 - 99.9)
+// 字段16:HDOP水平精度因子(0.5 - 99.9)
+// 字段17:VDOP垂直精度因子(0.5 - 99.9)
+// 字段18:校验值($与*之间的数异或后的值)
+
+// String tmplist[]=nmeastr.split(",");
+// String locationmod=tmplist[1];
+// String fixed=tmplist[2];
+// String hdop=tmplist[16];
+// if (!fixed.trim().equals("1")){
+// //定位
+// ICLogger.i("GPGSA fixed="+fixed+",hdop="+hdop);
+// }
+ }
+ }
+
+}
-package mobile.miki;\r
-\r
-import android.content.Context;\r
-import android.content.Intent;\r
-import android.location.GpsSatellite;\r
-import android.location.GpsStatus;\r
-import android.location.Location;\r
-import android.location.LocationListener;\r
-import android.location.LocationManager;\r
-import android.os.Bundle;\r
-import android.os.Handler;\r
-import android.os.Message;\r
-import android.preference.PreferenceManager;\r
-import android.provider.Settings;\r
-import android.text.TextUtils;\r
-import android.util.Log;\r
-import android.view.Display;\r
-import android.view.View;\r
-import android.widget.TextView;\r
-import android.widget.Toast;\r
-\r
-import java.text.DecimalFormat;\r
-import java.util.ArrayList;\r
-import java.util.Iterator;\r
-import java.util.List;\r
-\r
-import mobile.miki.mainui.ButtonViewTwo;\r
-import mobile.miki.mainui.TestMainActivity;\r
-import mobile.miki.mainui.TestMainList;\r
-import mobile.miki.util.Config;\r
-import mobile.miki.util.FTUtils;\r
-\r
-public class GpsTest extends BaseActivity implements\r
- android.view.View.OnClickListener {\r
- private LocationManager locationManager;\r
- Location location;\r
-\r
- private String locationInfo;\r
- private List<GpsSatellite> numSatelliteList = new ArrayList<GpsSatellite>(); // 卫星信号\r
- private List<GpsSatellite> max3Satellite = new ArrayList<GpsSatellite>(); // 卫星信号\r
- private int satelliteInfo = 0;\r
-\r
- private TextView tvGps;\r
- private TextView tvResult;\r
- private TextView tv_satellites;\r
- private ButtonViewTwo buttonView;\r
- boolean running;\r
- boolean pcbatest;\r
-\r
- private ReadGpsThread readGpsThread;\r
- private double longitude;\r
- private double latitude;\r
-\r
- int gpsMode;\r
- int numberOfSatellites;\r
-\r
- @Override\r
- protected void onCreate(Bundle arg0) {\r
- // TODO Auto-generated method stub\r
- super.onCreate(arg0);\r
- MyApplication.getInstance().addActivity(this);\r
- setContentView(R.layout.gps_test_new);\r
-// initGPS();\r
- //打开gps开关\r
- gpsMode = Settings.Secure.getInt(this.getContentResolver(), Settings.Secure.LOCATION_MODE,\r
- Settings.Secure.LOCATION_MODE_OFF);\r
- if (gpsMode != Settings.Secure.LOCATION_MODE_HIGH_ACCURACY) {\r
- Settings.Secure.putInt(this.getContentResolver(), Settings.Secure.LOCATION_MODE, Settings.Secure.LOCATION_MODE_HIGH_ACCURACY);\r
- }\r
-\r
- Intent intent = getIntent();\r
- running = false;\r
- pcbatest = false;\r
- if (intent != null) {\r
- running = intent.getBooleanExtra("running", false);\r
- pcbatest = intent.getBooleanExtra("pcbatest", false);\r
- }\r
- buttonView = (ButtonViewTwo) findViewById(R.id.btn_set);\r
- buttonView.btn_left.setOnClickListener(this);\r
- buttonView.btn_right.setOnClickListener(this);\r
- buttonView.btn_left.setClickable(false);\r
- tvGps = (TextView) findViewById(R.id.tv_gps);\r
- tvResult = (TextView) findViewById(R.id.tv_result);\r
- tvResult.setText(getResources().getString(R.string.gps_searching));\r
- tv_satellites = (TextView)findViewById(R.id.tv_satellites);\r
- // 获取location对象\r
- locationManager = (LocationManager) this\r
- .getSystemService(Context.LOCATION_SERVICE);\r
- readGpsThread = new ReadGpsThread();\r
- readGpsThread.start();\r
- locationManager.addGpsStatusListener(statusListener);//搜星\r
- if(running){\r
- if(pcbatest){\r
- tvGps.setText(getString(R.string.pcbatest_gps_pass_rules));\r
- }else{\r
- tvGps.setText(getString(R.string.ageing_gps_pass_rules));\r
- }\r
- }else{\r
- tvGps.setText(getString(R.string.gps_pass_rules));\r
- }\r
- getLocationInfo(); //设定GPS优先\r
-\r
- if(FTUtils.isA9()){\r
- tvGps.setTextSize(15);\r
- tvResult.setTextSize(15);\r
- tv_satellites.setTextSize(15);\r
- }\r
- }\r
-\r
- public String getLocationInfo() {\r
-\r
- location = getBestLocation(locationManager);\r
- // locationInfo = updateView(location);\r
- locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,\r
- 3000, 8, locationListener);\r
- // 定位成功返回数据\r
-// tvGps.setText(locationInfo);\r
-// if (!"".equals(locationInfo)) {\r
-// pass();\r
-// }\r
-\r
- return locationInfo;\r
- }\r
-\r
- boolean isFrist = true;\r
-\r
- private String updateView(Location location) {\r
-\r
- if (location != null) {\r
- longitude = location.getLongitude();\r
- latitude = location.getLatitude();\r
- if (longitude > 0 && latitude > 0) {\r
- tvResult.setText(getResources().getString(\r
- R.string.location_sucess));\r
- if (readGpsThread != null) {\r
- readGpsThread.endThread();\r
- }\r
- if (isFrist) {\r
- isFrist = false;\r
- pass();// 定位成功,自动跳转2016.9.19 tyy\r
- }\r
-\r
- } else {\r
- tvResult.setText(getResources().getString(\r
- R.string.location_fail));\r
- }\r
-\r
- long gpsTime = location.getTime();\r
-\r
- double altitude = location.getAltitude();// 海拔\r
-\r
- // 速度\r
- float speed = location.getSpeed();// 速度 单位 m/s\r
- speed = (speed * 60) / 1000; // 单位转换 km/h\r
- // 保留一位小数点\r
- DecimalFormat dfSpeed = new DecimalFormat("#.0");\r
- String strSpeed = dfSpeed.format(speed);\r
- speed = Float.parseFloat(strSpeed);\r
- int intSpeed = (int) (speed * 10);\r
- // SimpleLogger.d("intSpeed:"+intSpeed);\r
-\r
- // 经纬度 保留6位小数点\r
- DecimalFormat df = new DecimalFormat("#.000000");\r
- String strLatitude = df.format(latitude);\r
- String strLongitude = df.format(longitude);\r
-\r
- StringBuffer sb = new StringBuffer();\r
- String string = getResources().getString(R.string.longitude);\r
- String string2 = getResources().getString(R.string.latitude);\r
- sb.append(string + strLongitude + "\n" + string2 + strLatitude);\r
- // SimpleLogger.d("satelliteInfo:"+satelliteInfo);\r
- return sb.toString();\r
- } else {\r
- // textView.setText("");\r
- return "";\r
- }\r
- }\r
-\r
- public double[] getGpsInfo() {\r
- String tude = locationInfo;\r
- if (!TextUtils.isEmpty(tude)) {\r
- String[] longitudeAndLatitude = tude.split(" ");\r
- String longitude = longitudeAndLatitude[0];\r
- String latitude = longitudeAndLatitude[1];\r
-\r
- return new double[]{Double.parseDouble(latitude),\r
- Double.parseDouble(longitude)};\r
- }\r
- return null;\r
- }\r
-\r
- /**\r
- * 获取location对象,优先以GPS_PROVIDER获取location对象,当以GPS_PROVIDER获取到的locaiton为null时\r
- * ,则以NETWORK_PROVIDER获取location对象,这样可保证在室内开启网络连接的状态下获取到的location对象不为空\r
- *\r
- * @param locationManager\r
- * @return\r
- */\r
- private Location getBestLocation(LocationManager locationManager) {\r
- Location result = null;\r
- if (locationManager != null) {\r
- result = locationManager\r
- .getLastKnownLocation(LocationManager.GPS_PROVIDER);\r
- if (result != null) {\r
-\r
- return result;\r
- } else {\r
- result = locationManager\r
- .getLastKnownLocation(LocationManager.NETWORK_PROVIDER);\r
- return result;\r
- }\r
- }\r
- return result;\r
- }\r
-\r
- class ReadGpsThread extends Thread {\r
- private boolean isRunning = false;\r
- private int DELAY_MS = 1000;\r
- private int count = 0;\r
-\r
- public ReadGpsThread() {\r
- isRunning = true;\r
- }\r
-\r
- public void endThread() {\r
- isRunning = false;\r
- readGpsThread = null;\r
- }\r
-\r
- @Override\r
- public void run() {\r
- while (isRunning) {\r
- count++;\r
- if (numberOfSatellites >= 3) {\r
- return;\r
- }\r
- // 15秒没定位成功,则失败\r
- if (count == 120) {\r
- Message msg = new Message();\r
- temHandler.sendMessage(msg);\r
- if (readGpsThread != null) {\r
- endThread();\r
- return;\r
- }\r
- }\r
- try {\r
- Thread.sleep(DELAY_MS);\r
- } catch (Exception e) {\r
- // TODO: handle exception\r
- }\r
- }\r
- super.run();\r
- }\r
- }\r
-\r
- Handler temHandler = new Handler(new Handler.Callback() {\r
- @Override\r
- public boolean handleMessage(Message message) {\r
- tvResult.setText(getResources().getString(\r
- R.string.location_fail));\r
- if (readGpsThread != null) {\r
- readGpsThread.endThread();\r
- }\r
- return false;\r
- }\r
- });\r
-\r
- @Override\r
- protected void onDestroy() {\r
- super.onDestroy();\r
- if (readGpsThread != null) {\r
- readGpsThread.endThread();\r
- }\r
- isFrist = false;\r
- flag = false;\r
- if (locationManager != null) {\r
- locationManager.removeUpdates(locationListener);\r
- locationManager.removeGpsStatusListener(statusListener);\r
- }\r
- if (locationListener != null) {\r
- locationListener = null;\r
- }\r
- if (statusListener != null) {\r
- statusListener = null;\r
- }\r
-\r
- //还原gps状态\r
- Settings.Secure.putInt(this.getContentResolver(), Settings.Secure.LOCATION_MODE, gpsMode);\r
- sendBroadcast();\r
- }\r
- private static String ACTION_GPSCMD="com.enqualcomm.support.gps";\r
- public void sendBroadcast() {\r
- Intent intent = new Intent();\r
- intent.setAction(ACTION_GPSCMD);\r
- intent.putExtra("status", "needReopen");\r
- this.sendBroadcast(intent);\r
- }\r
-\r
- @Override\r
- public void onClick(View arg0) {\r
- Display myDisplay = getWindowManager().getDefaultDisplay();\r
- Intent intent;\r
- intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, RingtoneActivity.class);\r
-\r
- intent.putExtra("running", true);\r
- intent.putExtra("pcbatest",pcbatest);\r
- Intent intent1 = new Intent(this, TestMainActivity.class);\r
- // TestResult testResult = (TestResult) getApplicationContext();\r
- switch (arg0.getId()) {\r
-\r
- case R.id.btn_two_left:\r
- if (!running) {\r
- startActivity(intent1);\r
- } else {\r
- startActivity(intent);\r
- }\r
- PreferenceManager\r
- .getDefaultSharedPreferences(getApplicationContext())\r
- .edit().putString("gps", "true").commit();\r
- finish();\r
- break;\r
- case R.id.btn_two_right:\r
- if (!running) {\r
- startActivity(intent1);\r
- } else {\r
- startActivity(intent);\r
- }\r
- PreferenceManager\r
- .getDefaultSharedPreferences(getApplicationContext())\r
- .edit().putString("gps", "false").commit();\r
- finish();\r
- break;\r
- }\r
- }\r
-\r
- public void pass() {\r
- Toast.makeText(getApplicationContext(),\r
- getResources().getString(R.string.ins_gsensor_toast),\r
- Toast.LENGTH_SHORT).show();\r
- buttonView.setSuccessColor();\r
-\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext())\r
- .edit().putString("gps", "true").commit();\r
- if (running) {\r
- new Handler() {\r
- @Override\r
- public void handleMessage(Message msg) {\r
- super.handleMessage(msg);\r
- switch (msg.what) {\r
- case 0:\r
-\r
- Intent intent;\r
- intent = Config.getNextTestIntent(GpsTest.this,GpsTest.this.getClass());//new Intent(GpsTest.this, RingtoneActivity.class);\r
- intent.putExtra("running", true);\r
- intent.putExtra("pcbatest", pcbatest);\r
- startActivity(intent);\r
- GpsTest.this.finish();\r
- break;\r
- default:\r
- break;\r
- }\r
- }\r
-\r
- }.sendEmptyMessageDelayed(0, 1000);\r
- } else {\r
- buttonView.btn_left.setClickable(true);\r
- }\r
-\r
-\r
- }\r
-\r
- @Override\r
- public void onBackPressed() {\r
- // super.onBackPressed();\r
- if (running) {\r
- Intent intent = new Intent(this, TestMainList.class);\r
- startActivity(intent);\r
- finish();\r
- } else {\r
- finish();\r
- }\r
- }\r
-\r
-\r
- LocationListener locationListener = new LocationListener() {\r
-\r
- @Override\r
- public void onStatusChanged(String provider, int status,\r
- Bundle extras) {\r
- }\r
-\r
- @Override\r
- public void onProviderEnabled(String provider) {\r
-// locationInfo = updateView(locationManager\r
-// .getLastKnownLocation(provider));\r
- }\r
-\r
- @Override\r
- public void onProviderDisabled(String provider) {\r
-// locationInfo = updateView(null);\r
- }\r
-\r
- @Override\r
- public void onLocationChanged(Location location) {\r
- location = getBestLocation(locationManager);// 每次都去获取GPS_PROVIDER优先的location对象\r
-// locationInfo = updateView(location);\r
- }\r
- };\r
-\r
-\r
- /////////////////搜索卫星数\r
- boolean flag = true;//只操作一次pass\r
- private GpsStatus.Listener statusListener = new GpsStatus.Listener() {\r
- public void onGpsStatusChanged(int event) { // GPS状态变化时的回调,如卫星数\r
- GpsStatus status = locationManager.getGpsStatus(null); //取当前状态\r
- updateGpsStatus(event, status); //只更新状态\r
- numberOfSatellites = numSatelliteList.size();\r
-\r
- switch (event){\r
- case GpsStatus.GPS_EVENT_SATELLITE_STATUS:\r
-\r
- if (running && !pcbatest){\r
- //如果是自动测试,则有3颗大于20的就算通过\r
- if (max3Satellite.size() >= 3 && max3Satellite.get(2).getSnr()>=30) {\r
- tvResult.setText(getResources().getString(\r
- R.string.location_sucess));\r
- if (readGpsThread != null) {\r
- readGpsThread.endThread();\r
- }\r
- if (flag) {\r
- flag = false;\r
- pass();\r
- }\r
- }\r
- }\r
- if (running && pcbatest){\r
- //如果是pcba测试,则只要有一颗大于30的星就算通过。\r
- if (max3Satellite.size() > 0 && max3Satellite.get(0).getSnr()>=30) {\r
- tvResult.setText(getResources().getString(\r
- R.string.location_sucess));\r
- if (readGpsThread != null) {\r
- readGpsThread.endThread();\r
- }\r
- if (flag) {\r
- flag = false;\r
- pass();\r
- }\r
- }\r
- }\r
-\r
- break;\r
- case GpsStatus.GPS_EVENT_FIRST_FIX:\r
- //普通测试,必须定位才算通过\r
- tvResult.setText(getResources().getString(\r
- R.string.location_sucess)+" cost "+status.getTimeToFirstFix()+"ms");\r
-\r
- if (readGpsThread != null) {\r
- readGpsThread.endThread();\r
- }\r
- if (flag) {\r
- flag = false;\r
- pass();\r
- }\r
- break;\r
- case GpsStatus.GPS_EVENT_STARTED:\r
- // tvGps.setText("GPS_EVENT_STARTED");\r
- break;\r
- case GpsStatus.GPS_EVENT_STOPPED:\r
- // tvGps.setText("GPS_EVENT_STOPPED");\r
- break;\r
- default:\r
- break;\r
- }\r
-\r
-\r
-\r
-\r
- }\r
- };\r
-\r
- private void get3MaxSnrSatellite(GpsSatellite gst){\r
-\r
- float snr = gst.getSnr();\r
- for (int k=0;k<max3Satellite.size();k++) {\r
- if( max3Satellite.get(k).getPrn()==gst.getPrn())\r
- max3Satellite.remove(k);\r
- }\r
- max3Satellite.add(gst);//先添加进来。\r
-\r
- //从大到小排序\r
- for(int i=0;i<max3Satellite.size();i++) {\r
- for (int j=i;j<max3Satellite.size();j++) {\r
- if (max3Satellite.get(i).getSnr() < max3Satellite.get(j).getSnr()) {\r
- GpsSatellite ts = max3Satellite.get(j);\r
- max3Satellite.remove(j);\r
- max3Satellite.add(i, ts);//大的放前面\r
- }\r
- }\r
- }\r
- if (max3Satellite.size()>3){ //超过三个,谁小就删掉\r
- max3Satellite.remove(3);\r
- }\r
-\r
- }\r
- private int updateGpsStatus(int event, GpsStatus status) {\r
- StringBuilder sb2 = new StringBuilder("");\r
- float strengh = 0;\r
- if (status == null) {\r
- sb2.append("搜索到卫星个数:" + 0);\r
- } else if (event == GpsStatus.GPS_EVENT_SATELLITE_STATUS) {\r
- int maxSatellites = status.getMaxSatellites();\r
- Iterator<GpsSatellite> it = status.getSatellites().iterator();\r
- numSatelliteList.clear();\r
- int count = 0;\r
- while (it.hasNext() && count <= maxSatellites) {\r
- GpsSatellite s = it.next();\r
- float snr = s.getSnr();\r
- if (snr > 0) {//只有信躁比不为0的时候才算搜到了星\r
- strengh = snr;\r
-// Toast.makeText(this, "信躁比大于20", Toast.LENGTH_LONG).show();\r
- //排序取得最大3个SNR\r
- get3MaxSnrSatellite(s);\r
- numSatelliteList.add(s);\r
- }\r
-\r
- count++;\r
- }\r
- sb2.append("搜索到卫星个数(SNR>0):" + numSatelliteList.size()+" \n Max 3 SNRs[ " );\r
- for (int i=0;i<max3Satellite.size();i++){\r
- sb2.append(max3Satellite.get(i).getSnr());\r
- sb2.append(", ");\r
- }\r
- sb2.append(" ]");\r
- }\r
-\r
-\r
- Log.e("dxc", sb2.toString());\r
- //tv_satellites.setText(null);\r
- tv_satellites.setText(sb2);\r
-\r
- return 0;\r
- }\r
- ////////////////\r
-\r
-}\r
+package mobile.miki;
+
+import android.content.Context;
+import android.content.Intent;
+import android.location.GpsSatellite;
+import android.location.GpsStatus;
+import android.location.Location;
+import android.location.LocationListener;
+import android.location.LocationManager;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.preference.PreferenceManager;
+import android.provider.Settings;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.Display;
+import android.view.View;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import java.text.DecimalFormat;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import mobile.miki.mainui.ButtonViewTwo;
+import mobile.miki.mainui.TestMainActivity;
+import mobile.miki.mainui.TestMainList;
+import mobile.miki.util.Config;
+import mobile.miki.util.FTUtils;
+
+public class GpsTest extends BaseActivity implements
+ android.view.View.OnClickListener {
+ private LocationManager locationManager;
+ Location location;
+
+ private String locationInfo;
+ private List<GpsSatellite> numSatelliteList = new ArrayList<GpsSatellite>(); // 卫星信号
+ private List<GpsSatellite> max3Satellite = new ArrayList<GpsSatellite>(); // 卫星信号
+ private int satelliteInfo = 0;
+
+ private TextView tvGps;
+ private TextView tvResult;
+ private TextView tv_satellites;
+ private ButtonViewTwo buttonView;
+ boolean running;
+ boolean pcbatest;
+
+ private ReadGpsThread readGpsThread;
+ private double longitude;
+ private double latitude;
+
+ int gpsMode;
+ int numberOfSatellites;
+
+ @Override
+ protected void onCreate(Bundle arg0) {
+ // TODO Auto-generated method stub
+ super.onCreate(arg0);
+ MyApplication.getInstance().addActivity(this);
+ setContentView(R.layout.gps_test_new);
+// initGPS();
+ //打开gps开关
+ gpsMode = Settings.Secure.getInt(this.getContentResolver(), Settings.Secure.LOCATION_MODE,
+ Settings.Secure.LOCATION_MODE_OFF);
+ if (gpsMode != Settings.Secure.LOCATION_MODE_HIGH_ACCURACY) {
+ Settings.Secure.putInt(this.getContentResolver(), Settings.Secure.LOCATION_MODE, Settings.Secure.LOCATION_MODE_HIGH_ACCURACY);
+ }
+
+ Intent intent = getIntent();
+ running = false;
+ pcbatest = false;
+ if (intent != null) {
+ running = intent.getBooleanExtra("running", false);
+ pcbatest = intent.getBooleanExtra("pcbatest", false);
+ }
+ buttonView = (ButtonViewTwo) findViewById(R.id.btn_set);
+ buttonView.btn_left.setOnClickListener(this);
+ buttonView.btn_right.setOnClickListener(this);
+ buttonView.btn_left.setClickable(false);
+ tvGps = (TextView) findViewById(R.id.tv_gps);
+ tvResult = (TextView) findViewById(R.id.tv_result);
+ tvResult.setText(getResources().getString(R.string.gps_searching));
+ tv_satellites = (TextView)findViewById(R.id.tv_satellites);
+ // 获取location对象
+ locationManager = (LocationManager) this
+ .getSystemService(Context.LOCATION_SERVICE);
+ readGpsThread = new ReadGpsThread();
+ readGpsThread.start();
+ locationManager.addGpsStatusListener(statusListener);//搜星
+ if(running){
+ if(pcbatest){
+ tvGps.setText(getString(R.string.pcbatest_gps_pass_rules));
+ }else{
+ tvGps.setText(getString(R.string.ageing_gps_pass_rules));
+ }
+ }else{
+ tvGps.setText(getString(R.string.gps_pass_rules));
+ }
+ getLocationInfo(); //设定GPS优先
+
+ if(FTUtils.isA9()&&FTUtils.isGT09()){
+ tvGps.setTextSize(15);
+ tvResult.setTextSize(15);
+ tv_satellites.setTextSize(15);
+ }
+ }
+
+ public String getLocationInfo() {
+
+ location = getBestLocation(locationManager);
+ // locationInfo = updateView(location);
+ locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
+ 3000, 8, locationListener);
+ // 定位成功返回数据
+// tvGps.setText(locationInfo);
+// if (!"".equals(locationInfo)) {
+// pass();
+// }
+
+ return locationInfo;
+ }
+
+ boolean isFrist = true;
+
+ private String updateView(Location location) {
+
+ if (location != null) {
+ longitude = location.getLongitude();
+ latitude = location.getLatitude();
+ if (longitude > 0 && latitude > 0) {
+ tvResult.setText(getResources().getString(
+ R.string.location_sucess));
+ if (readGpsThread != null) {
+ readGpsThread.endThread();
+ }
+ if (isFrist) {
+ isFrist = false;
+ pass();// 定位成功,自动跳转2016.9.19 tyy
+ }
+
+ } else {
+ tvResult.setText(getResources().getString(
+ R.string.location_fail));
+ }
+
+ long gpsTime = location.getTime();
+
+ double altitude = location.getAltitude();// 海拔
+
+ // 速度
+ float speed = location.getSpeed();// 速度 单位 m/s
+ speed = (speed * 60) / 1000; // 单位转换 km/h
+ // 保留一位小数点
+ DecimalFormat dfSpeed = new DecimalFormat("#.0");
+ String strSpeed = dfSpeed.format(speed);
+ speed = Float.parseFloat(strSpeed);
+ int intSpeed = (int) (speed * 10);
+ // SimpleLogger.d("intSpeed:"+intSpeed);
+
+ // 经纬度 保留6位小数点
+ DecimalFormat df = new DecimalFormat("#.000000");
+ String strLatitude = df.format(latitude);
+ String strLongitude = df.format(longitude);
+
+ StringBuffer sb = new StringBuffer();
+ String string = getResources().getString(R.string.longitude);
+ String string2 = getResources().getString(R.string.latitude);
+ sb.append(string + strLongitude + "\n" + string2 + strLatitude);
+ // SimpleLogger.d("satelliteInfo:"+satelliteInfo);
+ return sb.toString();
+ } else {
+ // textView.setText("");
+ return "";
+ }
+ }
+
+ public double[] getGpsInfo() {
+ String tude = locationInfo;
+ if (!TextUtils.isEmpty(tude)) {
+ String[] longitudeAndLatitude = tude.split(" ");
+ String longitude = longitudeAndLatitude[0];
+ String latitude = longitudeAndLatitude[1];
+
+ return new double[]{Double.parseDouble(latitude),
+ Double.parseDouble(longitude)};
+ }
+ return null;
+ }
+
+ /**
+ * 获取location对象,优先以GPS_PROVIDER获取location对象,当以GPS_PROVIDER获取到的locaiton为null时
+ * ,则以NETWORK_PROVIDER获取location对象,这样可保证在室内开启网络连接的状态下获取到的location对象不为空
+ *
+ * @param locationManager
+ * @return
+ */
+ private Location getBestLocation(LocationManager locationManager) {
+ Location result = null;
+ if (locationManager != null) {
+ result = locationManager
+ .getLastKnownLocation(LocationManager.GPS_PROVIDER);
+ if (result != null) {
+
+ return result;
+ } else {
+ result = locationManager
+ .getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
+ return result;
+ }
+ }
+ return result;
+ }
+
+ class ReadGpsThread extends Thread {
+ private boolean isRunning = false;
+ private int DELAY_MS = 1000;
+ private int count = 0;
+
+ public ReadGpsThread() {
+ isRunning = true;
+ }
+
+ public void endThread() {
+ isRunning = false;
+ readGpsThread = null;
+ }
+
+ @Override
+ public void run() {
+ while (isRunning) {
+ count++;
+ if (numberOfSatellites >= 3) {
+ return;
+ }
+ // 15秒没定位成功,则失败
+ if (count == 120) {
+ Message msg = new Message();
+ temHandler.sendMessage(msg);
+ if (readGpsThread != null) {
+ endThread();
+ return;
+ }
+ }
+ try {
+ Thread.sleep(DELAY_MS);
+ } catch (Exception e) {
+ // TODO: handle exception
+ }
+ }
+ super.run();
+ }
+ }
+
+ Handler temHandler = new Handler(new Handler.Callback() {
+ @Override
+ public boolean handleMessage(Message message) {
+ tvResult.setText(getResources().getString(
+ R.string.location_fail));
+ if (readGpsThread != null) {
+ readGpsThread.endThread();
+ }
+ return false;
+ }
+ });
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ if (readGpsThread != null) {
+ readGpsThread.endThread();
+ }
+ isFrist = false;
+ flag = false;
+ if (locationManager != null) {
+ locationManager.removeUpdates(locationListener);
+ locationManager.removeGpsStatusListener(statusListener);
+ }
+ if (locationListener != null) {
+ locationListener = null;
+ }
+ if (statusListener != null) {
+ statusListener = null;
+ }
+
+ //还原gps状态
+ Settings.Secure.putInt(this.getContentResolver(), Settings.Secure.LOCATION_MODE, gpsMode);
+ sendBroadcast();
+ }
+ private static String ACTION_GPSCMD="com.enqualcomm.support.gps";
+ public void sendBroadcast() {
+ Intent intent = new Intent();
+ intent.setAction(ACTION_GPSCMD);
+ intent.putExtra("status", "needReopen");
+ this.sendBroadcast(intent);
+ }
+
+ @Override
+ public void onClick(View arg0) {
+ Display myDisplay = getWindowManager().getDefaultDisplay();
+ Intent intent;
+ intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, RingtoneActivity.class);
+
+ intent.putExtra("running", true);
+ intent.putExtra("pcbatest",pcbatest);
+ Intent intent1 = new Intent(this, TestMainActivity.class);
+ // TestResult testResult = (TestResult) getApplicationContext();
+ switch (arg0.getId()) {
+
+ case R.id.btn_two_left:
+ if (!running) {
+ startActivity(intent1);
+ } else {
+ startActivity(intent);
+ }
+ PreferenceManager
+ .getDefaultSharedPreferences(getApplicationContext())
+ .edit().putString("gps", "true").commit();
+ finish();
+ break;
+ case R.id.btn_two_right:
+ if (!running) {
+ startActivity(intent1);
+ } else {
+ startActivity(intent);
+ }
+ PreferenceManager
+ .getDefaultSharedPreferences(getApplicationContext())
+ .edit().putString("gps", "false").commit();
+ finish();
+ break;
+ }
+ }
+
+ public void pass() {
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.ins_gsensor_toast),
+ Toast.LENGTH_SHORT).show();
+ buttonView.setSuccessColor();
+
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext())
+ .edit().putString("gps", "true").commit();
+ if (running) {
+ new Handler() {
+ @Override
+ public void handleMessage(Message msg) {
+ super.handleMessage(msg);
+ switch (msg.what) {
+ case 0:
+
+ Intent intent;
+ intent = Config.getNextTestIntent(GpsTest.this,GpsTest.this.getClass());//new Intent(GpsTest.this, RingtoneActivity.class);
+ intent.putExtra("running", true);
+ intent.putExtra("pcbatest", pcbatest);
+ startActivity(intent);
+ GpsTest.this.finish();
+ break;
+ default:
+ break;
+ }
+ }
+
+ }.sendEmptyMessageDelayed(0, 1000);
+ } else {
+ buttonView.btn_left.setClickable(true);
+ }
+
+
+ }
+
+ @Override
+ public void onBackPressed() {
+ // super.onBackPressed();
+ if (running) {
+ Intent intent = new Intent(this, TestMainList.class);
+ startActivity(intent);
+ finish();
+ } else {
+ finish();
+ }
+ }
+
+
+ LocationListener locationListener = new LocationListener() {
+
+ @Override
+ public void onStatusChanged(String provider, int status,
+ Bundle extras) {
+ }
+
+ @Override
+ public void onProviderEnabled(String provider) {
+// locationInfo = updateView(locationManager
+// .getLastKnownLocation(provider));
+ }
+
+ @Override
+ public void onProviderDisabled(String provider) {
+// locationInfo = updateView(null);
+ }
+
+ @Override
+ public void onLocationChanged(Location location) {
+ location = getBestLocation(locationManager);// 每次都去获取GPS_PROVIDER优先的location对象
+// locationInfo = updateView(location);
+ }
+ };
+
+
+ /////////////////搜索卫星数
+ boolean flag = true;//只操作一次pass
+ private GpsStatus.Listener statusListener = new GpsStatus.Listener() {
+ public void onGpsStatusChanged(int event) { // GPS状态变化时的回调,如卫星数
+ GpsStatus status = locationManager.getGpsStatus(null); //取当前状态
+ updateGpsStatus(event, status); //只更新状态
+ numberOfSatellites = numSatelliteList.size();
+
+ switch (event){
+ case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
+
+ if (running && !pcbatest){
+ //如果是自动测试,则有3颗大于20的就算通过
+ if (max3Satellite.size() >= 3 && max3Satellite.get(2).getSnr()>=30) {
+ tvResult.setText(getResources().getString(
+ R.string.location_sucess));
+ if (readGpsThread != null) {
+ readGpsThread.endThread();
+ }
+ if (flag) {
+ flag = false;
+ pass();
+ }
+ }
+ }
+ if (running && pcbatest){
+ //如果是pcba测试,则只要有一颗大于30的星就算通过。
+ if (max3Satellite.size() > 0 && max3Satellite.get(0).getSnr()>=30) {
+ tvResult.setText(getResources().getString(
+ R.string.location_sucess));
+ if (readGpsThread != null) {
+ readGpsThread.endThread();
+ }
+ if (flag) {
+ flag = false;
+ pass();
+ }
+ }
+ }
+
+ break;
+ case GpsStatus.GPS_EVENT_FIRST_FIX:
+ //普通测试,必须定位才算通过
+ tvResult.setText(getResources().getString(
+ R.string.location_sucess)+" cost "+status.getTimeToFirstFix()+"ms");
+
+ if (readGpsThread != null) {
+ readGpsThread.endThread();
+ }
+ if (flag) {
+ flag = false;
+ pass();
+ }
+ break;
+ case GpsStatus.GPS_EVENT_STARTED:
+ // tvGps.setText("GPS_EVENT_STARTED");
+ break;
+ case GpsStatus.GPS_EVENT_STOPPED:
+ // tvGps.setText("GPS_EVENT_STOPPED");
+ break;
+ default:
+ break;
+ }
+
+
+
+
+ }
+ };
+
+ private void get3MaxSnrSatellite(GpsSatellite gst){
+
+ float snr = gst.getSnr();
+ for (int k=0;k<max3Satellite.size();k++) {
+ if( max3Satellite.get(k).getPrn()==gst.getPrn())
+ max3Satellite.remove(k);
+ }
+ max3Satellite.add(gst);//先添加进来。
+
+ //从大到小排序
+ for(int i=0;i<max3Satellite.size();i++) {
+ for (int j=i;j<max3Satellite.size();j++) {
+ if (max3Satellite.get(i).getSnr() < max3Satellite.get(j).getSnr()) {
+ GpsSatellite ts = max3Satellite.get(j);
+ max3Satellite.remove(j);
+ max3Satellite.add(i, ts);//大的放前面
+ }
+ }
+ }
+ if (max3Satellite.size()>3){ //超过三个,谁小就删掉
+ max3Satellite.remove(3);
+ }
+
+ }
+ private int updateGpsStatus(int event, GpsStatus status) {
+ StringBuilder sb2 = new StringBuilder("");
+ float strengh = 0;
+ if (status == null) {
+ sb2.append("搜索到卫星个数:" + 0);
+ } else if (event == GpsStatus.GPS_EVENT_SATELLITE_STATUS) {
+ int maxSatellites = status.getMaxSatellites();
+ Iterator<GpsSatellite> it = status.getSatellites().iterator();
+ numSatelliteList.clear();
+ int count = 0;
+ while (it.hasNext() && count <= maxSatellites) {
+ GpsSatellite s = it.next();
+ float snr = s.getSnr();
+ if (snr > 0) {//只有信躁比不为0的时候才算搜到了星
+ strengh = snr;
+// Toast.makeText(this, "信躁比大于20", Toast.LENGTH_LONG).show();
+ //排序取得最大3个SNR
+ get3MaxSnrSatellite(s);
+ numSatelliteList.add(s);
+ }
+
+ count++;
+ }
+ sb2.append("搜索到卫星个数(SNR>0):" + numSatelliteList.size()+" \n Max 3 SNRs[ " );
+ for (int i=0;i<max3Satellite.size();i++){
+ sb2.append(max3Satellite.get(i).getSnr());
+ sb2.append(", ");
+ }
+ sb2.append(" ]");
+ }
+
+
+ Log.e("dxc", sb2.toString());
+ //tv_satellites.setText(null);
+ tv_satellites.setText(sb2);
+
+ return 0;
+ }
+ ////////////////
+
+}
-package mobile.miki;\r
-\r
-import android.content.Context;\r
-import android.graphics.Canvas;\r
-import android.graphics.Color;\r
-import android.graphics.Paint;\r
-import android.support.annotation.Nullable;\r
-import android.util.AttributeSet;\r
-import android.util.TypedValue;\r
-import android.view.View;\r
-\r
-\r
-public class SnrHistogramView extends View {\r
-\r
-\r
- private int mWidth = 0;\r
- private int mHeight = 0;\r
-\r
- private Paint mPaint;\r
- private Paint mTextPaint;\r
-\r
- private String mSnrValue = "80";\r
- private String mSnrNmber = "60";\r
-\r
- private float mBL=1f;\r
-\r
- public SnrHistogramView(Context context) {\r
- this(context, null);\r
- }\r
-\r
- public SnrHistogramView(Context context, @Nullable AttributeSet attrs) {\r
- this(context, attrs, 0);\r
- }\r
-\r
- public SnrHistogramView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {\r
- super(context, attrs, defStyleAttr);\r
- mPaint = new Paint();\r
- mTextPaint = new Paint();\r
-\r
- mPaint.setAntiAlias(true);\r
- mPaint.setDither(true);\r
- int mBgColor = Color.GREEN;\r
- mPaint.setColor(mBgColor);\r
- mPaint.setStyle(Paint.Style.FILL);\r
-\r
- mTextPaint.setAntiAlias(true);\r
- mTextPaint.setDither(true);\r
- mTextPaint.setColor(Color.WHITE);\r
- mTextPaint.setStyle(Paint.Style.FILL);\r
- mTextPaint.setTextSize(spToPx(24));\r
- }\r
-\r
- @Override\r
- protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {\r
- super.onMeasure(widthMeasureSpec, heightMeasureSpec);\r
-\r
-\r
- int widthSize = MeasureSpec.getSize(widthMeasureSpec);\r
- int widthMode = MeasureSpec.getMode(widthMeasureSpec);\r
- int heightSize = MeasureSpec.getSize(heightMeasureSpec);\r
- int heightMode = MeasureSpec.getMode(heightMeasureSpec);\r
-\r
-\r
- if (widthMode == MeasureSpec.AT_MOST\r
- || widthMode == MeasureSpec.UNSPECIFIED\r
- || heightMeasureSpec == MeasureSpec.AT_MOST\r
- || heightMeasureSpec == MeasureSpec.UNSPECIFIED) {\r
- //宽度高度至少有一个确定的值,不能同时为wrap_content\r
- return;\r
- } else { //至少有一个为确定值,要获取其中的最小值\r
- if (widthMode == MeasureSpec.EXACTLY) {\r
- mWidth = widthSize;\r
- }\r
-\r
- if (heightMode == MeasureSpec.EXACTLY) {\r
- mHeight = heightSize;\r
- }\r
- }\r
- }\r
-\r
-\r
- @Override\r
- protected void onDraw(Canvas canvas) {\r
- super.onDraw(canvas);\r
-\r
- float[] snrNmber = measureTextWidth(mSnrNmber, mTextPaint);\r
- float[] snrValue = measureTextWidth(mSnrValue, mTextPaint);\r
-\r
- float hv = getHistogramHeight(snrValue[1], snrNmber[1], mBL);\r
-\r
- canvas.drawText(mSnrNmber, (mWidth - snrNmber[0]) / 2, mHeight, mTextPaint);\r
- canvas.drawText(mSnrValue, (mWidth - snrValue[0]) / 2, mHeight - snrNmber[1] - hv, mTextPaint);\r
-\r
- canvas.drawRect(0, mHeight - (hv + snrNmber[1] - 2), mWidth, mHeight - snrNmber[1], mPaint);\r
- }\r
-\r
- private float getHistogramHeight(float vh, float nh, float bl) {\r
- return (mHeight - vh - nh) * bl;\r
- }\r
-\r
- private float[] measureTextWidth(String mText, Paint textPaint) {\r
- Paint.FontMetrics fontMetrics = textPaint.getFontMetrics();\r
- float height1 = fontMetrics.bottom - fontMetrics.top;\r
- float strWidth = textPaint.measureText(mText);\r
- return new float[]{strWidth, height1};\r
- }\r
-\r
- private float spToPx(float sp) {\r
- return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, sp, getResources().getDisplayMetrics());\r
- }\r
-\r
- public void updateValue(float value,int number,int bgColor){\r
- mPaint.setColor(bgColor);\r
- mSnrNmber = String.valueOf(number);\r
- mSnrValue = String.valueOf((int)value);\r
- mBL=value*0.025F;\r
-\r
- invalidate();\r
- }\r
-}\r
+package mobile.miki;
+
+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;
+
+import mobile.miki.util.FTUtils;
+
+
+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);
+ if(FTUtils.isGT09()){
+ mTextPaint.setTextSize(spToPx(12));
+ }else {
+ 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();
+ }
+}
-package mobile.miki;\r
-\r
-import android.content.Context;\r
-import android.content.Intent;\r
-import android.graphics.Bitmap;\r
-import android.graphics.Canvas;\r
-import android.graphics.Color;\r
-import android.graphics.Paint;\r
-import android.graphics.Paint.Style;\r
-import android.os.Bundle;\r
-import android.preference.PreferenceManager;\r
-import android.util.Log;\r
-import android.view.Display;\r
-import android.view.MotionEvent;\r
-import android.view.View;\r
-import android.view.Window;\r
-import android.view.WindowManager;\r
-import android.widget.Toast;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Iterator;\r
-\r
-import mobile.miki.lcd.LcdActivity;\r
-import mobile.miki.mainui.TestMainActivity;\r
-import mobile.miki.mainui.TestMainList;\r
-import mobile.miki.util.Config;\r
-import mobile.miki.util.FTUtils;\r
-\r
-//import sim.android.mtkcit.TestActivity;\r
-//import sim.android.mtkcit.cittools.CITTools;\r
-\r
-\r
-public class TouchTest extends BaseActivity {\r
- private static final String TAG = "TouchpanelTest";\r
- private static final boolean mDebug = false;\r
- private TPTestView tpView;\r
- private ArrayList<Rect> rectList;\r
- private static int numX = 4;\r
- private static int numY = 7;\r
- private int mDisplayWidth = 320;\r
- private int mDisplayHeight = 320;\r
- private int absX;\r
- private int absY;\r
- boolean running;\r
-\r
- @Override\r
- public void onCreate(Bundle savedInstanceState) {\r
- super.onCreate(savedInstanceState);\r
- MyApplication.getInstance().addActivity(this);\r
- if (mDebug)\r
- Log.v(TAG, "start TouchpanelTest");\r
- getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);\r
- requestWindowFeature(Window.FEATURE_NO_TITLE);\r
- // 发送广播给systemUI全屏显示\r
- Intent systemuiIntent = new Intent();\r
- systemuiIntent.setAction("mobile.miki.touchscreen.TouchScreen_Activity");\r
- systemuiIntent.putExtra("close", true);\r
- sendBroadcast(systemuiIntent);\r
- // end\r
- initRec();\r
- Toast.makeText(this, /*"请进行触摸屏测试"*/this.getResources().getString(R.string.touchtest_toast), Toast.LENGTH_LONG).show();\r
- tpView = new TPTestView(this);\r
- setContentView(tpView);\r
- Intent intent = getIntent();\r
- running = false;\r
- if (intent != null) {\r
- running = intent.getBooleanExtra("running", false);\r
- }\r
-\r
- }\r
-\r
- private void initRec() {\r
-\r
- Display myDisplay = getWindowManager().getDefaultDisplay();\r
-\r
-\r
- if (FTUtils.isA9()){\r
- mDisplayHeight = 170;\r
- mDisplayWidth = 170;\r
- }else if(FTUtils.isV20()) {\r
- mDisplayHeight = 280;\r
- mDisplayWidth = 280;\r
- }else {\r
- mDisplayHeight = myDisplay.getHeight();\r
- mDisplayWidth = myDisplay.getWidth();\r
- }\r
-\r
- mDisplayHeight = mDisplayHeight;\r
- \r
-\r
- absY = mDisplayHeight / numY;\r
-\r
- // mDisplayWidth = 859;\r
- \r
-// if(myDisplay.getWidth()==730){\r
-// mDisplayWidth = 855;\r
-// }else{\r
-// mDisplayWidth = 1280;\r
-// }\r
- \r
- \r
- absX = mDisplayWidth / numX;\r
- rectList = new ArrayList<TouchTest.Rect>(numX * numY);\r
- for (int i = 0; i < numX; i++) {\r
- for (int j = 0; j < numY; j += (numY - 1) / 2) {\r
- Rect r = new Rect(i * absX, j * absY, absX, absY);\r
-\r
- rectList.add(r);\r
- }\r
- }\r
-\r
- for (int i = 0; i < numX; i += (numX - 1) / 2) {\r
- for (int j = 1; j < numY - 1; j++) {\r
- if (j == (numY - 1) / 2)\r
- continue;\r
-\r
- Rect r = new Rect(i * absX, j * absY, absX, absY);\r
-\r
- rectList.add(r);\r
- }\r
- }\r
-\r
- \r
-// for (int i = 0; i < 2; i++) {\r
-// for (int j = 0; j < 2; j++) {\r
-// Rect r = new Rect(absX + i * absX * (numX - 1) / 2, absY + j * absY * (numY - 1) / 2,\r
-// (numX - 3) / 2 * absX, (numY - 3) / 2 * absY);\r
-//\r
-// rectList.add(r);\r
-//\r
-// }\r
-// }\r
- }\r
-\r
- private void doAfterTest() {\r
- // Bundle b = new Bundle();\r
- // Intent intent = new Intent();\r
- // b.putInt("test_result", 1);\r
- //\r
- // intent.putExtras(b);\r
- // setResult(RESULT_OK, intent);\r
-\r
-// // 发送广播给systemUI显示bar\r
-// Intent systemuiIntent = new Intent();\r
-// systemuiIntent.setAction("mobile.miki.touchscreen.TouchTest");\r
-// systemuiIntent.putExtra("open", true);\r
-// sendBroadcast(systemuiIntent);\r
-\r
- Intent intent2 = Config.getNextTestIntent(this,this.getClass());//new Intent(this, LcdActivity.class);\r
- intent2.putExtra("running", true);\r
- Intent intent1 = new Intent(this, TestMainActivity.class);\r
-\r
- if (!running) {\r
- startActivity(intent1);\r
- } else {\r
- startActivity(intent2);\r
- }\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("touch", "true")\r
- .commit();\r
-\r
- finish();\r
-\r
- }\r
-\r
- private class Rect {\r
- int x;\r
- int y;\r
- int dx;\r
- int dy;\r
-\r
- Rect(int x, int y, int dx, int dy) {\r
- this.x = x;\r
- this.y = y;\r
- this.dx = dx;\r
- this.dy = dy;\r
- }\r
-\r
- public boolean isInRect(int x, int y) {\r
- if (x >= this.x && x <= this.x + this.dx && y >= this.y && y <= this.y + this.dy) {\r
- return true;\r
- } else {\r
- return false;\r
- }\r
- }\r
- }\r
-\r
- private class TPTestView extends View {\r
- private Bitmap bitmap;\r
- private Canvas canvas;\r
- private Paint paint;\r
- private Rect tempRect;\r
-\r
- public TPTestView(Context context) {\r
- super(context);\r
- paint = new Paint(Paint.DITHER_FLAG);\r
- bitmap = Bitmap.createBitmap(mDisplayWidth, mDisplayHeight, Bitmap.Config.ARGB_8888);\r
- canvas = new Canvas();\r
- canvas.setBitmap(bitmap);\r
-\r
- paint.setStyle(Style.FILL);\r
- paint.setStrokeWidth(5);\r
- paint.setColor(Color.WHITE);\r
- paint.setAntiAlias(true);\r
-\r
- Iterator<Rect> iterator = rectList.iterator();\r
- while (iterator.hasNext()) {\r
- Rect rect = iterator.next();\r
- canvas.drawRect(rect.x, rect.y, rect.x + rect.dx - 1, rect.y + rect.dy - 1, paint);\r
- }\r
- invalidate();\r
-\r
- paint.setColor(Color.GREEN);\r
-\r
- }\r
-\r
- protected void onDraw(Canvas canvas) {\r
- canvas.drawBitmap(bitmap, 0, 0, null);\r
- }\r
-\r
- public boolean onTouchEvent(MotionEvent event) {\r
- int action = event.getAction();\r
- float x = event.getX();\r
- float y = event.getY();\r
- if (mDebug)\r
- Log.v(TAG, "onTouchEvent" + " x=" + x + " y=" + y);\r
-\r
- if (action == MotionEvent.ACTION_DOWN || action == MotionEvent.ACTION_MOVE) {\r
- if (rectList.size() == 0) {\r
- doAfterTest();\r
- }\r
- boolean bNeedFindRect = false;\r
- if (tempRect == null) {\r
- bNeedFindRect = true;\r
- } else {\r
- if (!tempRect.isInRect((int) x, (int) y)) {\r
- bNeedFindRect = true;\r
- } else {\r
- bNeedFindRect = false;\r
- }\r
-\r
- }\r
- if (mDebug)\r
- Log.v(TAG, "onTouchEvent" + " bNeedFindRect=" + bNeedFindRect);\r
- if (bNeedFindRect) {\r
- Iterator<Rect> iterator = rectList.iterator();\r
- while (iterator.hasNext()) {\r
- Rect rect = iterator.next();\r
- if (rect.isInRect((int) x, (int) y)) {\r
- tempRect = rect;\r
- canvas.drawRect(rect.x, rect.y, rect.x + rect.dx, rect.y + rect.dy, paint);\r
- invalidate();\r
- rectList.remove(rect);\r
- break;\r
- }\r
- }\r
- }\r
- }\r
- return true;\r
- }\r
- }\r
-\r
- @Override\r
- public void onBackPressed() {\r
- // super.onBackPressed();\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("touch", "false")\r
- .commit();\r
- if (running) {\r
- Intent intent = new Intent(this, TestMainList.class);\r
- startActivity(intent);\r
- finish();\r
- // doAfterTest();\r
- } else {\r
- finish();\r
- }\r
-\r
- }\r
-\r
-}\r
+package mobile.miki;
+
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Bitmap;
+import android.graphics.Canvas;
+import android.graphics.Color;
+import android.graphics.Paint;
+import android.graphics.Paint.Style;
+import android.os.Bundle;
+import android.preference.PreferenceManager;
+import android.util.Log;
+import android.view.Display;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.Window;
+import android.view.WindowManager;
+import android.widget.Toast;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import mobile.miki.lcd.LcdActivity;
+import mobile.miki.mainui.TestMainActivity;
+import mobile.miki.mainui.TestMainList;
+import mobile.miki.util.Config;
+import mobile.miki.util.FTUtils;
+
+//import sim.android.mtkcit.TestActivity;
+//import sim.android.mtkcit.cittools.CITTools;
+
+
+public class TouchTest extends BaseActivity {
+ private static final String TAG = "TouchpanelTest";
+ private static final boolean mDebug = false;
+ private TPTestView tpView;
+ private ArrayList<Rect> rectList;
+ private static int numX = 4;
+ private static int numY = 7;
+ private int mDisplayWidth = 320;
+ private int mDisplayHeight = 320;
+ private int absX;
+ private int absY;
+ boolean running;
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ MyApplication.getInstance().addActivity(this);
+ if (mDebug)
+ Log.v(TAG, "start TouchpanelTest");
+ getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
+ requestWindowFeature(Window.FEATURE_NO_TITLE);
+ // 发送广播给systemUI全屏显示
+ Intent systemuiIntent = new Intent();
+ systemuiIntent.setAction("mobile.miki.touchscreen.TouchScreen_Activity");
+ systemuiIntent.putExtra("close", true);
+ sendBroadcast(systemuiIntent);
+ // end
+ initRec();
+ Toast.makeText(this, /*"请进行触摸屏测试"*/this.getResources().getString(R.string.touchtest_toast), Toast.LENGTH_LONG).show();
+ tpView = new TPTestView(this);
+ setContentView(tpView);
+ Intent intent = getIntent();
+ running = false;
+ if (intent != null) {
+ running = intent.getBooleanExtra("running", false);
+ }
+
+ }
+
+ private void initRec() {
+
+ Display myDisplay = getWindowManager().getDefaultDisplay();
+
+
+ if (FTUtils.isA9()){
+ mDisplayHeight = 170;
+ mDisplayWidth = 170;
+ }else if(FTUtils.isV20()|| FTUtils.isGT09()) {
+ mDisplayHeight = 280;
+ mDisplayWidth = 280;
+ }else {
+ mDisplayHeight = myDisplay.getHeight();
+ mDisplayWidth = myDisplay.getWidth();
+ }
+
+ mDisplayHeight = mDisplayHeight;
+
+
+ absY = mDisplayHeight / numY;
+
+ // mDisplayWidth = 859;
+
+// if(myDisplay.getWidth()==730){
+// mDisplayWidth = 855;
+// }else{
+// mDisplayWidth = 1280;
+// }
+
+
+ absX = mDisplayWidth / numX;
+ rectList = new ArrayList<TouchTest.Rect>(numX * numY);
+ for (int i = 0; i < numX; i++) {
+ for (int j = 0; j < numY; j += (numY - 1) / 2) {
+ Rect r = new Rect(i * absX, j * absY, absX, absY);
+
+ rectList.add(r);
+ }
+ }
+
+ for (int i = 0; i < numX; i += (numX - 1) / 2) {
+ for (int j = 1; j < numY - 1; j++) {
+ if (j == (numY - 1) / 2)
+ continue;
+
+ Rect r = new Rect(i * absX, j * absY, absX, absY);
+
+ rectList.add(r);
+ }
+ }
+
+
+// for (int i = 0; i < 2; i++) {
+// for (int j = 0; j < 2; j++) {
+// Rect r = new Rect(absX + i * absX * (numX - 1) / 2, absY + j * absY * (numY - 1) / 2,
+// (numX - 3) / 2 * absX, (numY - 3) / 2 * absY);
+//
+// rectList.add(r);
+//
+// }
+// }
+ }
+
+ private void doAfterTest() {
+ // Bundle b = new Bundle();
+ // Intent intent = new Intent();
+ // b.putInt("test_result", 1);
+ //
+ // intent.putExtras(b);
+ // setResult(RESULT_OK, intent);
+
+// // 发送广播给systemUI显示bar
+// Intent systemuiIntent = new Intent();
+// systemuiIntent.setAction("mobile.miki.touchscreen.TouchTest");
+// systemuiIntent.putExtra("open", true);
+// sendBroadcast(systemuiIntent);
+
+ Intent intent2 = Config.getNextTestIntent(this,this.getClass());//new Intent(this, LcdActivity.class);
+ intent2.putExtra("running", true);
+ Intent intent1 = new Intent(this, TestMainActivity.class);
+
+ if (!running) {
+ startActivity(intent1);
+ } else {
+ startActivity(intent2);
+ }
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("touch", "true")
+ .commit();
+
+ finish();
+
+ }
+
+ private class Rect {
+ int x;
+ int y;
+ int dx;
+ int dy;
+
+ Rect(int x, int y, int dx, int dy) {
+ this.x = x;
+ this.y = y;
+ this.dx = dx;
+ this.dy = dy;
+ }
+
+ public boolean isInRect(int x, int y) {
+ if (x >= this.x && x <= this.x + this.dx && y >= this.y && y <= this.y + this.dy) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+ }
+
+ private class TPTestView extends View {
+ private Bitmap bitmap;
+ private Canvas canvas;
+ private Paint paint;
+ private Rect tempRect;
+
+ public TPTestView(Context context) {
+ super(context);
+ paint = new Paint(Paint.DITHER_FLAG);
+ bitmap = Bitmap.createBitmap(mDisplayWidth, mDisplayHeight, Bitmap.Config.ARGB_8888);
+ canvas = new Canvas();
+ canvas.setBitmap(bitmap);
+
+ paint.setStyle(Style.FILL);
+ paint.setStrokeWidth(5);
+ paint.setColor(Color.WHITE);
+ paint.setAntiAlias(true);
+
+ Iterator<Rect> iterator = rectList.iterator();
+ while (iterator.hasNext()) {
+ Rect rect = iterator.next();
+ canvas.drawRect(rect.x, rect.y, rect.x + rect.dx - 1, rect.y + rect.dy - 1, paint);
+ }
+ invalidate();
+
+ paint.setColor(Color.GREEN);
+
+ }
+
+ protected void onDraw(Canvas canvas) {
+ canvas.drawBitmap(bitmap, 0, 0, null);
+ }
+
+ public boolean onTouchEvent(MotionEvent event) {
+ int action = event.getAction();
+ float x = event.getX();
+ float y = event.getY();
+ if (mDebug)
+ Log.v(TAG, "onTouchEvent" + " x=" + x + " y=" + y);
+
+ if (action == MotionEvent.ACTION_DOWN || action == MotionEvent.ACTION_MOVE) {
+ if (rectList.size() == 0) {
+ doAfterTest();
+ }
+ boolean bNeedFindRect = false;
+ if (tempRect == null) {
+ bNeedFindRect = true;
+ } else {
+ if (!tempRect.isInRect((int) x, (int) y)) {
+ bNeedFindRect = true;
+ } else {
+ bNeedFindRect = false;
+ }
+
+ }
+ if (mDebug)
+ Log.v(TAG, "onTouchEvent" + " bNeedFindRect=" + bNeedFindRect);
+ if (bNeedFindRect) {
+ Iterator<Rect> iterator = rectList.iterator();
+ while (iterator.hasNext()) {
+ Rect rect = iterator.next();
+ if (rect.isInRect((int) x, (int) y)) {
+ tempRect = rect;
+ canvas.drawRect(rect.x, rect.y, rect.x + rect.dx, rect.y + rect.dy, paint);
+ invalidate();
+ rectList.remove(rect);
+ break;
+ }
+ }
+ }
+ }
+ return true;
+ }
+ }
+
+ @Override
+ public void onBackPressed() {
+ // super.onBackPressed();
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("touch", "false")
+ .commit();
+ if (running) {
+ Intent intent = new Intent(this, TestMainList.class);
+ startActivity(intent);
+ finish();
+ // doAfterTest();
+ } else {
+ finish();
+ }
+
+ }
+
+}
-/**\r
- * Generated by smali2java 1.0.0.558\r
- * Copyright (C) 2013 Hensence.com\r
- */\r
-\r
-package mobile.miki;\r
-\r
-import android.content.BroadcastReceiver;\r
-import android.content.Context;\r
-import android.content.Intent;\r
-import android.content.IntentFilter;\r
-import android.os.Build;\r
-import android.os.Bundle;\r
-import android.os.SystemProperties;\r
-import android.preference.PreferenceManager;\r
-import android.telephony.TelephonyManager;\r
-import android.util.DisplayMetrics;\r
-import android.util.Log;\r
-import android.view.View;\r
-import android.widget.LinearLayout;\r
-import android.widget.TextView;\r
-\r
-import mobile.miki.mainui.ButtonViewTwo;\r
-import mobile.miki.mainui.TestMainActivity;\r
-import mobile.miki.mainui.TestMainList;\r
-import mobile.miki.util.Config;\r
-import mobile.miki.util.FTUtils;\r
-import mobile.miki.util.IATUtils;\r
-\r
-public class VersionActivity extends BaseActivity implements android.view.View.OnClickListener {\r
- private static final String TAG = "VersionActivity";\r
- private ButtonViewTwo buttonView;\r
- boolean running;\r
- boolean pcbatest;\r
- TextView rfParametersValue; //校准状态\r
- String imeiValue = "";\r
- String barCode = "";\r
- LinearLayout ll_imei2;\r
- private TextView simidParametersValue, cidParameters, cidParametersValue;\r
-\r
- protected void onCreate(Bundle savedInstanceState) {\r
- super.onCreate(savedInstanceState);\r
- MyApplication.getInstance().addActivity(this);\r
- setContentView(R.layout.version_layout);\r
- Intent intent = getIntent();\r
- running = false;\r
- pcbatest = false;\r
- if (intent != null) {\r
- running = intent.getBooleanExtra("running", false);\r
- pcbatest = intent.getBooleanExtra("pcbatest",false);\r
- }\r
-\r
- rfParametersValue = (TextView) findViewById(R.id.rfParametersValue);\r
- ll_imei2 = ((LinearLayout) findViewById(R.id.ll_imei2));\r
- ll_imei2.setVisibility(View.GONE);\r
- //版本号\r
- ((TextView) findViewById(R.id.tvBuildNumberValue)).setText(Build.DISPLAY);\r
- //SIM卡 ICCID\r
- simidParametersValue = (TextView) findViewById(R.id.SimidParametersValue);\r
- setICCID();\r
- setImei();\r
-\r
- cidParameters = (TextView)findViewById(R.id.cidParameters);\r
- cidParametersValue = (TextView) findViewById(R.id.cidParametersValue);\r
- barCode = SystemProperties.get("gsm.serial", "");\r
- Log.i(TAG, "barCode " + barCode);\r
- //写入cid号\r
- String cidValue = "";\r
- Log.i(TAG, "ro.product.brand" + SystemProperties.get("ro.product.brand",""));\r
- if("sprd".equalsIgnoreCase(SystemProperties.get("ro.product.brand",""))){\r
- cidValue = FTUtils.GetCidFromSystem();\r
- }else{\r
- cidValue = getSerialNumber(barCode);\r
- }\r
- cidParameters.setText(getResources().getString(R.string.cid));\r
- // 校准\r
- setRF();\r
-\r
- // 糖果cid地址指向serialno位置\r
- if (FTUtils.isSugar()) {\r
- ((TextView) findViewById(R.id.barcode)).setText(barCode);\r
- cidParametersValue.setText(Build.SERIAL);\r
- ((TextView) findViewById(R.id.wifi_mac_address)).setText(FTUtils.getWifiMacAddress());\r
- ((TextView) findViewById(R.id.bluethooth_mac_address)).setText(FTUtils.getBtAddressViaReflection());\r
- } else {\r
- cidParametersValue.setText(cidValue);\r
- ((LinearLayout) findViewById(R.id.ll_wifi_mac_address)).setVisibility(View.GONE);\r
- ((LinearLayout) findViewById(R.id.ll_bluethooth_mac_address)).setVisibility(View.GONE);\r
- ((LinearLayout) findViewById(R.id.ll_barcode)).setVisibility(View.GONE);\r
- }\r
-\r
- // 展讯获取校准标准\r
- if (FTUtils.isLieBao() || SystemProperties.get("ro.product.brand", "").equalsIgnoreCase("SPRD")) {\r
- getZhanXunRf();\r
- String zhanxunCid = FTUtils.GetCidFromSystem();\r
- cidParameters.setVisibility(View.GONE);\r
- cidParametersValue.setText(zhanxunCid);\r
- }\r
- // end\r
- getDisplayMetrics();\r
-\r
- buttonView = (ButtonViewTwo) findViewById(R.id.btn_set);\r
- buttonView.btn_left.setOnClickListener(this);\r
- buttonView.btn_right.setOnClickListener(this);\r
- buttonView.btn_left.setClickable(false);\r
-\r
- registerBroadCast();\r
- }\r
-\r
- private void setImei() {\r
- // imei\r
- TelephonyManager telephonyManager = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);\r
- if (Build.VERSION.SDK_INT < 26) {\r
- imeiValue = telephonyManager.getDeviceId();\r
- } else {\r
- imeiValue = FTUtils.getImei(this);\r
- }\r
- ((TextView) findViewById(R.id.tv_imei)).setText(imeiValue + "");\r
-\r
- // imei2\r
- String imei2 = SystemProperties.get("gsm.mtk.imei2", "");\r
- //酷达需要imei2\r
- String android_model = Build.MODEL;\r
- if (android_model.contains("CMCC-CW1A")) {\r
- if (imei2 != null) {\r
- ll_imei2.setVisibility(View.VISIBLE);\r
- ((TextView) findViewById(R.id.imeiParametersValue)).setText(imei2);\r
- }\r
- }\r
- }\r
-\r
-\r
- private void setRF() {\r
- if (barCode.length() == 0 || barCode == null) {//值为空,未校准\r
- rfParametersValue.setText(R.string.no);\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("rf", "false")\r
- .commit();\r
-// } else if (strVal.length()>=62 && "10".equals(strVal.substring(60, 62))) {//值不为空且后面等于10,校准\r
- } else if (barCode.length() >= 62 && barCode.substring(barCode.length() - 10, barCode.length()).contains("10")) {\r
- rfParametersValue.setText(getResources().getString(R.string.yes));\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("rf", "true")\r
- .commit();\r
- } else {//值不为空,后面不等于10,未校准\r
- rfParametersValue.setText(getResources().getString(R.string._fail));\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("rf", "false")\r
- .commit();\r
- }\r
- }\r
-\r
- private void setICCID() {\r
- if ("".equals(getSimId()) || getSimId() == null) {\r
- simidParametersValue.setText("null");\r
- } else {\r
- simidParametersValue.setText(getSimId());\r
- }\r
- }\r
-\r
- //获取屏幕分辨率\r
- private void getDisplayMetrics() {\r
- DisplayMetrics dm = new DisplayMetrics();\r
- this.getWindowManager().getDefaultDisplay().getMetrics(dm);\r
- int screenWidth = dm.widthPixels;\r
- int screenHeight = dm.heightPixels;\r
- ((TextView) findViewById(R.id.screenResolutionParametersValue)).setText(screenWidth + "*" + screenHeight);\r
- }\r
-\r
- public static String getSerialNumber(String serial) {\r
- try {\r
- if (serial != null) {\r
- serial = serial.replaceAll("\\s*", "");//去掉空白字符\r
- if (serial.length() >= 16) {\r
- serial = serial.substring(0, 16);\r
- }\r
- }\r
- } catch (Exception e) {\r
- e.printStackTrace();\r
- }\r
- return serial;\r
- }\r
-\r
-\r
- public String getSimId() {\r
- TelephonyManager telephonyManager = (TelephonyManager) this\r
- .getSystemService(Context.TELEPHONY_SERVICE);\r
-\r
- String simSerialNumber = telephonyManager.getSimSerialNumber();\r
-\r
- return simSerialNumber;\r
- }\r
-\r
- @Override\r
- public void onClick(View arg0) {\r
- Intent intent ;\r
-// if (pcbatest) {\r
-// intent = new Intent(this, CameraPreview.class);\r
-// intent.putExtra("running", true);\r
-// intent.putExtra("pcbatest", true);\r
-// }else{\r
- intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, TouchTest.class);\r
- intent.putExtra("running", true);\r
- intent.putExtra("pcbatest",false);\r
-// }\r
-\r
- Intent intent1 = new Intent(this, TestMainActivity.class);\r
- // TestResult testResult = (TestResult) getApplicationContext();\r
- switch (arg0.getId()) {\r
-\r
- case R.id.btn_two_left:\r
- if (!running) {\r
- startActivity(intent1);\r
- } else {\r
- startActivity(intent);\r
- }\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("version", "true")\r
- .commit();\r
- finish();\r
- break;\r
- case R.id.btn_two_right:\r
- if (!running) {\r
- startActivity(intent1);\r
- } else {\r
- startActivity(intent);\r
- }\r
- PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("version", "false")\r
- .commit();\r
- finish();\r
- break;\r
- }\r
- }\r
-\r
- @Override\r
- protected void onResume() {\r
- buttonView.setSuccessColor();\r
- buttonView.btn_left.setClickable(true);\r
- super.onResume();\r
- }\r
-\r
- @Override\r
- public void onBackPressed() {\r
- // super.onBackPressed();\r
- if (running) {\r
- Intent intent = new Intent(this, TestMainList.class);\r
- startActivity(intent);\r
- finish();\r
- } else {\r
- finish();\r
- }\r
- }\r
-\r
- private void registerBroadCast() {\r
- IntentFilter filter1 = new IntentFilter();\r
- filter1.addAction("android.intent.action.SIM_STATE_CHANGED");\r
- registerReceiver(getSimState, filter1);\r
- }\r
-\r
- // 广播\r
- private BroadcastReceiver getSimState = new BroadcastReceiver() {\r
- @Override\r
- public void onReceive(Context arg0, Intent arg1) {\r
- String action = arg1.getAction();\r
- if (action.equals("android.intent.action.SIM_STATE_CHANGED")) {\r
- if ("".equals(getSimId()) || getSimId() == null) {\r
- simidParametersValue.setText("null");\r
- } else {\r
- simidParametersValue.setText(getSimId());\r
- }\r
- }\r
-\r
- }\r
- };\r
-\r
- @Override\r
- protected void onDestroy() {\r
- super.onDestroy();\r
- unregisterReceiver(getSimState);\r
- }\r
-\r
- private String str = "loading...";\r
-\r
- private void getZhanXunRf() {\r
- str = "GSM ";\r
- str += IATUtils.sendATCmd("AT+SGMR=0,0,3,0", "atchannel0");\r
- sleep(100);\r
- str += "WCDMA ";\r
- str += IATUtils.sendATCmd("AT+SGMR=0,0,3,1", "atchannel0");\r
- sleep(100);\r
- str += "LTE ";\r
- str += IATUtils.sendATCmd("AT+SGMR=1,0,3,3", "atchannel0");\r
- sleep(100);\r
- Log.i(TAG, "str " + str);\r
- boolean rfSuccess = isRfSuccess(str);\r
- if (rfSuccess) {\r
- rfParametersValue.setText(getResources().getString(R.string.yes));\r
- } else {\r
- rfParametersValue.setText(getResources().getString(R.string._fail));\r
- }\r
- Log.i(TAG, "rfSuccess " + rfSuccess);\r
- }\r
-\r
- private void sleep(long time) {\r
- try {\r
- Thread.sleep(time);\r
- } catch (InterruptedException e) {\r
- e.printStackTrace();\r
- }\r
- }\r
-\r
- private boolean isRfSuccess(String str) {\r
- if (str.contains("BIT2:DCS AGC calibrated Pass") && str.contains("BIT3:DCS APC calibrated Pass")\r
- && str.contains("BIT4:EGSM AGC calibrated Pass") && str.contains("BIT5:EGSM APC calibrated Pass")\r
- && str.contains("BIT8:GSM AFC calibrated Pass") && str.contains("BIT20:EDGE Calibration Pass")\r
- && str.contains("BIT1:TDD LTE AGC Pass") && str.contains("BIT2:TDD LTE APC Pass")) {\r
- return true;\r
- }\r
- return false;\r
- }\r
-\r
+/**
+ * Generated by smali2java 1.0.0.558
+ * Copyright (C) 2013 Hensence.com
+ */
+
+package mobile.miki;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.os.Build;
+import android.os.Bundle;
+import android.os.SystemProperties;
+import android.preference.PreferenceManager;
+import android.telephony.TelephonyManager;
+import android.util.DisplayMetrics;
+import android.util.Log;
+import android.view.View;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+
+import mobile.miki.mainui.ButtonViewTwo;
+import mobile.miki.mainui.TestMainActivity;
+import mobile.miki.mainui.TestMainList;
+import mobile.miki.util.Config;
+import mobile.miki.util.FTUtils;
+import mobile.miki.util.IATUtils;
+
+public class VersionActivity extends BaseActivity implements android.view.View.OnClickListener {
+ private static final String TAG = "VersionActivity";
+ private ButtonViewTwo buttonView;
+ boolean running;
+ boolean pcbatest;
+ TextView rfParametersValue; //校准状态
+ String imeiValue = "";
+ String barCode = "";
+ LinearLayout ll_imei2;
+ private TextView simidParametersValue, cidParameters, cidParametersValue;
+
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ MyApplication.getInstance().addActivity(this);
+ if(FTUtils.isGT09()){
+ setContentView(R.layout.version_layout_280);
+ }else {
+ setContentView(R.layout.version_layout);
+ }
+ Intent intent = getIntent();
+ running = false;
+ pcbatest = false;
+ if (intent != null) {
+ running = intent.getBooleanExtra("running", false);
+ pcbatest = intent.getBooleanExtra("pcbatest",false);
+ }
+
+ rfParametersValue = (TextView) findViewById(R.id.rfParametersValue);
+ ll_imei2 = ((LinearLayout) findViewById(R.id.ll_imei2));
+ ll_imei2.setVisibility(View.GONE);
+ //版本号
+ ((TextView) findViewById(R.id.tvBuildNumberValue)).setText(Build.DISPLAY);
+ //SIM卡 ICCID
+ simidParametersValue = (TextView) findViewById(R.id.SimidParametersValue);
+ setICCID();
+ setImei();
+
+ cidParameters = (TextView)findViewById(R.id.cidParameters);
+ cidParametersValue = (TextView) findViewById(R.id.cidParametersValue);
+ barCode = SystemProperties.get("gsm.serial", "");
+ Log.i(TAG, "barCode " + barCode);
+ //写入cid号
+ String cidValue = "";
+ Log.i(TAG, "ro.product.brand" + SystemProperties.get("ro.product.brand",""));
+ if("sprd".equalsIgnoreCase(SystemProperties.get("ro.product.brand",""))){
+ cidValue = FTUtils.GetCidFromSystem();
+ }else{
+ cidValue = getSerialNumber(barCode);
+ }
+ cidParameters.setText(getResources().getString(R.string.cid));
+ // 校准
+ setRF();
+
+ // 糖果cid地址指向serialno位置
+ if (FTUtils.isSugar()) {
+ ((TextView) findViewById(R.id.barcode)).setText(barCode);
+ cidParametersValue.setText(Build.SERIAL);
+ ((TextView) findViewById(R.id.wifi_mac_address)).setText(FTUtils.getWifiMacAddress());
+ ((TextView) findViewById(R.id.bluethooth_mac_address)).setText(FTUtils.getBtAddressViaReflection());
+ } else {
+ cidParametersValue.setText(cidValue);
+ ((LinearLayout) findViewById(R.id.ll_wifi_mac_address)).setVisibility(View.GONE);
+ ((LinearLayout) findViewById(R.id.ll_bluethooth_mac_address)).setVisibility(View.GONE);
+ ((LinearLayout) findViewById(R.id.ll_barcode)).setVisibility(View.GONE);
+ }
+
+ // 展讯获取校准标准
+ if (FTUtils.isLieBao() || SystemProperties.get("ro.product.brand", "").equalsIgnoreCase("SPRD")) {
+ getZhanXunRf();
+ String zhanxunCid = FTUtils.GetCidFromSystem();
+ cidParameters.setVisibility(View.GONE);
+ cidParametersValue.setText(zhanxunCid);
+ }
+ // end
+ getDisplayMetrics();
+
+ buttonView = (ButtonViewTwo) findViewById(R.id.btn_set);
+ buttonView.btn_left.setOnClickListener(this);
+ buttonView.btn_right.setOnClickListener(this);
+ buttonView.btn_left.setClickable(false);
+
+ registerBroadCast();
+ }
+
+ private void setImei() {
+ // imei
+ TelephonyManager telephonyManager = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
+ if (Build.VERSION.SDK_INT < 26) {
+ imeiValue = telephonyManager.getDeviceId();
+ } else {
+ imeiValue = FTUtils.getImei(this);
+ }
+ ((TextView) findViewById(R.id.tv_imei)).setText(imeiValue + "");
+
+ // imei2
+ String imei2 = SystemProperties.get("gsm.mtk.imei2", "");
+ //酷达需要imei2
+ String android_model = Build.MODEL;
+ if (android_model.contains("CMCC-CW1A")) {
+ if (imei2 != null) {
+ ll_imei2.setVisibility(View.VISIBLE);
+ ((TextView) findViewById(R.id.imeiParametersValue)).setText(imei2);
+ }
+ }
+ }
+
+
+ private void setRF() {
+ if (barCode.length() == 0 || barCode == null) {//值为空,未校准
+ rfParametersValue.setText(R.string.no);
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("rf", "false")
+ .commit();
+// } else if (strVal.length()>=62 && "10".equals(strVal.substring(60, 62))) {//值不为空且后面等于10,校准
+ } else if (barCode.length() >= 62 && barCode.substring(barCode.length() - 10, barCode.length()).contains("10")) {
+ rfParametersValue.setText(getResources().getString(R.string.yes));
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("rf", "true")
+ .commit();
+ } else {//值不为空,后面不等于10,未校准
+ rfParametersValue.setText(getResources().getString(R.string._fail));
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("rf", "false")
+ .commit();
+ }
+ }
+
+ private void setICCID() {
+ if ("".equals(getSimId()) || getSimId() == null) {
+ simidParametersValue.setText("null");
+ } else {
+ simidParametersValue.setText(getSimId());
+ }
+ }
+
+ //获取屏幕分辨率
+ private void getDisplayMetrics() {
+ DisplayMetrics dm = new DisplayMetrics();
+ this.getWindowManager().getDefaultDisplay().getMetrics(dm);
+ int screenWidth = dm.widthPixels;
+ int screenHeight = dm.heightPixels;
+ ((TextView) findViewById(R.id.screenResolutionParametersValue)).setText(screenWidth + "*" + screenHeight);
+ }
+
+
+ public static String getSerialNumber(String serial) {
+ try {
+ if (serial != null) {
+ serial = serial.replaceAll("\\s*", "");//去掉空白字符
+ if (serial.length() >= 16) {
+ serial = serial.substring(0, 16);
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return serial;
+ }
+
+
+ public String getSimId() {
+ TelephonyManager telephonyManager = (TelephonyManager) this
+ .getSystemService(Context.TELEPHONY_SERVICE);
+
+ String simSerialNumber = telephonyManager.getSimSerialNumber();
+
+ return simSerialNumber;
+ }
+
+ @Override
+ public void onClick(View arg0) {
+ Intent intent ;
+// if (pcbatest) {
+// intent = new Intent(this, CameraPreview.class);
+// intent.putExtra("running", true);
+// intent.putExtra("pcbatest", true);
+// }else{
+ intent = Config.getNextTestIntent(this,this.getClass());//new Intent(this, TouchTest.class);
+ intent.putExtra("running", true);
+ intent.putExtra("pcbatest",false);
+// }
+
+ Intent intent1 = new Intent(this, TestMainActivity.class);
+ // TestResult testResult = (TestResult) getApplicationContext();
+ switch (arg0.getId()) {
+
+ case R.id.btn_two_left:
+ if (!running) {
+ startActivity(intent1);
+ } else {
+ startActivity(intent);
+ }
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("version", "true")
+ .commit();
+ finish();
+ break;
+ case R.id.btn_two_right:
+ if (!running) {
+ startActivity(intent1);
+ } else {
+ startActivity(intent);
+ }
+ PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).edit().putString("version", "false")
+ .commit();
+ finish();
+ break;
+ }
+ }
+
+ @Override
+ protected void onResume() {
+ buttonView.setSuccessColor();
+ buttonView.btn_left.setClickable(true);
+ super.onResume();
+ }
+
+ @Override
+ public void onBackPressed() {
+ // super.onBackPressed();
+ if (running) {
+ Intent intent = new Intent(this, TestMainList.class);
+ startActivity(intent);
+ finish();
+ } else {
+ finish();
+ }
+ }
+
+ private void registerBroadCast() {
+ IntentFilter filter1 = new IntentFilter();
+ filter1.addAction("android.intent.action.SIM_STATE_CHANGED");
+ registerReceiver(getSimState, filter1);
+ }
+
+ // 广播
+ private BroadcastReceiver getSimState = new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context arg0, Intent arg1) {
+ String action = arg1.getAction();
+ if (action.equals("android.intent.action.SIM_STATE_CHANGED")) {
+ if ("".equals(getSimId()) || getSimId() == null) {
+ simidParametersValue.setText("null");
+ } else {
+ simidParametersValue.setText(getSimId());
+ }
+ }
+
+ }
+ };
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ unregisterReceiver(getSimState);
+ }
+
+ private String str = "loading...";
+
+ private void getZhanXunRf() {
+ str = "GSM ";
+ str += IATUtils.sendATCmd("AT+SGMR=0,0,3,0", "atchannel0");
+ sleep(100);
+ str += "WCDMA ";
+ str += IATUtils.sendATCmd("AT+SGMR=0,0,3,1", "atchannel0");
+ sleep(100);
+ str += "LTE ";
+ str += IATUtils.sendATCmd("AT+SGMR=1,0,3,3", "atchannel0");
+ sleep(100);
+ Log.i(TAG, "str " + str);
+ boolean rfSuccess = isRfSuccess(str);
+ if (rfSuccess) {
+ rfParametersValue.setText(getResources().getString(R.string.yes));
+ } else {
+ rfParametersValue.setText(getResources().getString(R.string._fail));
+ }
+ Log.i(TAG, "rfSuccess " + rfSuccess);
+ }
+
+ private void sleep(long time) {
+ try {
+ Thread.sleep(time);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ }
+
+ private boolean isRfSuccess(String str) {
+ if (str.contains("BIT2:DCS AGC calibrated Pass") && str.contains("BIT3:DCS APC calibrated Pass")
+ && str.contains("BIT4:EGSM AGC calibrated Pass") && str.contains("BIT5:EGSM APC calibrated Pass")
+ && str.contains("BIT8:GSM AFC calibrated Pass") && str.contains("BIT20:EDGE Calibration Pass")
+ && str.contains("BIT1:TDD LTE AGC Pass") && str.contains("BIT2:TDD LTE APC Pass")) {
+ return true;
+ }
+ return false;
+ }
+
}
\ No newline at end of file
-package mobile.miki.adapter;\r
-\r
-import android.content.Context;\r
-import android.view.LayoutInflater;\r
-import android.view.View;\r
-import android.view.ViewGroup;\r
-import android.widget.BaseAdapter;\r
-import android.widget.TextView;\r
-\r
-import java.util.List;\r
-\r
-import mobile.miki.R;\r
-\r
-public class TestMainListAdapter extends BaseAdapter {\r
- private Context mContext;\r
- private List<String> list;\r
- private String[] stateArr;\r
-\r
- public TestMainListAdapter(Context context, List<String> list, String[] stateArr) {\r
- mContext = context;\r
- this.list = list;\r
- this.stateArr = stateArr;\r
- }\r
-\r
- @Override\r
- public int getCount() {\r
- return list.size();\r
- }\r
-\r
- @Override\r
- public Object getItem(int i) {\r
- return list.get(i);\r
- }\r
-\r
- @Override\r
- public long getItemId(int i) {\r
- return 0;\r
- }\r
- @Override\r
- public View getView(int position, View convertView, ViewGroup parent) {\r
- LayoutInflater mInflater = LayoutInflater.from(mContext);\r
- convertView = mInflater.inflate(R.layout.testmain_adapter, null);\r
- TextView text = (TextView) convertView.findViewById(R.id.text_item);\r
- text.setText(list.get(position));\r
- if (stateArr[position].equals("true")) {\r
- convertView.setBackgroundResource(R.drawable.button_common_green_bg);\r
- } else if (stateArr[position].equals("false")) {\r
- convertView.setBackgroundResource(R.drawable.button_common_red_bg);\r
- }\r
- return convertView;\r
- }\r
-\r
- private String getString(int stringId) {\r
- return mContext.getResources().getString(stringId);\r
- }\r
-\r
-}\r
+package mobile.miki.adapter;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.BaseAdapter;
+import android.widget.TextView;
+
+import java.util.List;
+
+import mobile.miki.R;
+import mobile.miki.util.FTUtils;
+
+public class TestMainListAdapter extends BaseAdapter {
+ private Context mContext;
+ private List<String> list;
+ private String[] stateArr;
+
+ public TestMainListAdapter(Context context, List<String> list, String[] stateArr) {
+ mContext = context;
+ this.list = list;
+ this.stateArr = stateArr;
+ }
+
+ @Override
+ public int getCount() {
+ return list.size();
+ }
+
+ @Override
+ public Object getItem(int i) {
+ return list.get(i);
+ }
+
+ @Override
+ public long getItemId(int i) {
+ return 0;
+ }
+ @Override
+ public View getView(int position, View convertView, ViewGroup parent) {
+ LayoutInflater mInflater = LayoutInflater.from(mContext);
+ if(FTUtils.isGT09())
+ convertView = mInflater.inflate(R.layout.testmain_adapter_280, null);
+ else
+ convertView = mInflater.inflate(R.layout.testmain_adapter, null);
+ TextView text = (TextView) convertView.findViewById(R.id.text_item);
+ text.setText(list.get(position));
+ if (stateArr[position].equals("true")) {
+ convertView.setBackgroundResource(R.drawable.button_common_green_bg);
+ } else if (stateArr[position].equals("false")) {
+ convertView.setBackgroundResource(R.drawable.button_common_red_bg);
+ }
+ return convertView;
+ }
+
+ private String getString(int stringId) {
+ return mContext.getResources().getString(stringId);
+ }
+
+}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MyApplication.getInstance().addActivity(this);
- setContentView(R.layout.urovo_layout_table);
+ if(FTUtils.isGT09())
+ setContentView(R.layout.urovo_layout_table_280);
+ else
+ setContentView(R.layout.urovo_layout_table);
initView();
}
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
MyApplication.getInstance().addActivity(this);
+ if(FTUtils.isGT09()){
+ setContentView(R.layout.dig_layout_testlist_280);
+ }else
setContentView(R.layout.dig_layout_testlist);
pcbatest = (LinearLayout) findViewById(R.id.pcba_test);
-package mobile.miki.util;\r
-\r
-import android.app.Application;\r
-import android.content.Context;\r
-import android.content.Intent;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import mobile.miki.AntiMonitorActivity;\r
-import mobile.miki.BatteryTestActivity;\r
-import mobile.miki.BlooToothActivity;\r
-import mobile.miki.BrightnessTest;\r
-import mobile.miki.CameraPreview;\r
-import mobile.miki.DSPActivity;\r
-import mobile.miki.DialerTestActivity;\r
-import mobile.miki.GpsTest;\r
-import mobile.miki.GravitySensorActivity;\r
-import mobile.miki.HeartRate;\r
-import mobile.miki.KeysTestActivity;\r
-import mobile.miki.MikeTest;\r
-import mobile.miki.MotorTestActivity;\r
-import mobile.miki.MyApplication;\r
-import mobile.miki.R;\r
-import mobile.miki.RingtoneActivity;\r
-import mobile.miki.SimDetectActivity;\r
-import mobile.miki.SystemMemory;\r
-import mobile.miki.TemperatureActivity;\r
-import mobile.miki.TouchTest;\r
-import mobile.miki.UltravioletMonitorActivity;\r
-import mobile.miki.VersionActivity;\r
-import mobile.miki.WifiTestActiviy;\r
-import mobile.miki.lcd.LcdActivity;\r
-import mobile.miki.mainui.TestMainActivity;\r
-\r
-public class Config {\r
-\r
- private static List<String> TestItems=null;\r
- private static List<String> TestResult=null;\r
- public static void setTestItems(List<String> items){\r
-\r
- if(items==null){\r
- Logger.d("setTestItems items is null");\r
- return ;\r
- }\r
- if (TestItems==null){\r
- TestItems=new ArrayList<String>();\r
- TestResult=new ArrayList<String>();\r
- }\r
- TestItems.clear();\r
- TestResult.clear();\r
-\r
- for (int i=0;i< items.size();i++ ) {\r
- TestItems.add(i,items.get(i));\r
- TestResult.add(i,"false");\r
- }\r
-\r
- }\r
-\r
- public static int getIndexByTestItemName(String name){\r
- Logger.d("name "+name+" item "+TestItems);\r
-\r
-// if (TestItems==null) initConfig(MyApplication.getInstance().getApplicationContext());\r
- if(name!=null && TestItems!=null) {\r
- for (int i = 0; i < TestItems.size(); i++) {\r
- Logger.d("name "+name+" item "+TestItems.get(i)+" "+i);\r
- if (name.equals(TestItems.get(i))) {\r
- return i;\r
- }\r
- }\r
- }\r
- return -1;\r
- }\r
- public static String getNextTestItemName(String testItemmName){\r
-\r
- int index=-1;\r
- index=getIndexByTestItemName(testItemmName);\r
- Logger.d("find "+testItemmName+", index "+index);\r
- if (TestItems!=null && index >=0&& index+1< TestItems.size()){\r
- String itemname= TestItems.get(index+1);\r
- return itemname;\r
- }else{\r
- return null;\r
- }\r
- }\r
- public static String getNextTestItemName(int index){\r
- if (TestItems!=null && index >=0&& index+1< TestItems.size()){\r
- return TestItems.get(index+1);\r
- }else{\r
- return null;\r
- }\r
- }\r
-\r
- public static Intent getNextTestIntent(Context context,Class cls){\r
- String currentTestItemName=getTestNameByClass(context,cls.getSimpleName());\r
- Logger.d("currentTestItemName="+currentTestItemName);\r
- String nextTestItemName=getNextTestItemName(currentTestItemName);\r
- Logger.d("nextTestItemName="+nextTestItemName);\r
- return getIntent(context,nextTestItemName);\r
- }\r
- public static String getTestNameByClass(Context context,String ClassName){\r
-\r
- if (context==null || ClassName==null) return null;\r
- if (ClassName.equals(VersionActivity.class.getSimpleName())) {\r
- return context.getResources().getString(R.string.version_new);\r
- }else if (ClassName.equals(TouchTest.class.getSimpleName())){\r
- return context.getResources().getString(R.string.touch);\r
- }else if (ClassName.equals(LcdActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.light_new);\r
- }else if (ClassName.equals(CameraPreview.class.getSimpleName())){\r
- return context.getResources().getString(R.string.camera);\r
- }else if (ClassName.equals(WifiTestActiviy.class.getSimpleName())){\r
- return context.getResources().getString(R.string.wifi);\r
- }else if (ClassName.equals(GpsTest.class.getSimpleName())){\r
- return context.getResources().getString(R.string.gps);\r
- }else if (ClassName.equals(RingtoneActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.speak);\r
- }else if (ClassName.equals(MikeTest.class.getSimpleName())){\r
- return context.getResources().getString(R.string.mic_title);\r
- }else if (ClassName.equals(SimDetectActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.sim_title);\r
- }else if (ClassName.equals(DialerTestActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.dual_new);\r
- }else if (ClassName.equals(SystemMemory.class.getSimpleName())){\r
- return context.getResources().getString(R.string.ramromTest);\r
- }else if (ClassName.equals(BrightnessTest.class.getSimpleName())){\r
- return context.getResources().getString(R.string.beiguang_new);\r
- }else if (ClassName.equals(GravitySensorActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.test_sensor);\r
- }else if (ClassName.equals(BatteryTestActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.test_battery);\r
- }else if (ClassName.equals(KeysTestActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.test_keypad);\r
- }else if (ClassName.equals(BlooToothActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.bt);\r
- }else if (ClassName.equals(MotorTestActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.shakeTest);\r
- }else if (ClassName.equals(UltravioletMonitorActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.ultraviolet);\r
- }else if (ClassName.equals(DSPActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.dsp);\r
- }else if (ClassName.equals(HeartRate.class.getSimpleName())) {\r
- return context.getResources().getString(R.string.heartrate);\r
- }else if (ClassName.equals(AntiMonitorActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.anti_check);\r
- }else if (ClassName.equals(TemperatureActivity.class.getSimpleName())){\r
- return context.getResources().getString(R.string.temperature);\r
- }else {\r
-\r
- return null;\r
- }\r
-\r
- }\r
- public static Intent getIntent(Context context, String testItemName) {\r
-\r
- if (context==null || testItemName==null)\r
- return (new Intent(context, TestMainActivity.class));;\r
- Intent intent = null;\r
- if (testItemName.equals(context.getResources().getString(R.string.version_new))) {\r
- intent = new Intent(context, VersionActivity.class);\r
- } else if (testItemName.equals(context.getResources().getString(R.string.touch))) {\r
- intent = new Intent(context, TouchTest.class);\r
- } else if (testItemName.equals(context.getResources().getString(R.string.light_new))) {\r
- intent = new Intent(context, LcdActivity.class);\r
- } else if (testItemName.equals(context.getResources().getString(R.string.camera))) {\r
- intent = new Intent(context, CameraPreview.class);\r
- } else if (testItemName.equals(context.getResources().getString(R.string.wifi))) {\r
- intent = new Intent(context, WifiTestActiviy.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.gps))) {\r
- intent = new Intent(context, GpsTest.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.speak))) {\r
- intent = new Intent(context, RingtoneActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.mic_title))) {\r
- intent = new Intent(context, MikeTest.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.sim_title))) {\r
- intent = new Intent(context, SimDetectActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.dual_new))) {\r
- intent = new Intent(context, DialerTestActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.ramromTest))) {\r
- intent = new Intent(context, SystemMemory.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.beiguang_new))) {\r
- intent = new Intent(context, BrightnessTest.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.test_sensor))) {\r
- intent = new Intent(context, GravitySensorActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.test_battery))) {\r
- intent = new Intent(context, BatteryTestActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.test_keypad))) {\r
- intent = new Intent(context, KeysTestActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.bt))) {\r
- intent = new Intent(context, BlooToothActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.shakeTest))) {\r
- intent = new Intent(context, MotorTestActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.ultraviolet))) {\r
- intent = new Intent(context, UltravioletMonitorActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.dsp))) {\r
- intent = new Intent(context, DSPActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.heartrate))) {\r
- intent = new Intent(context, HeartRate.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.anti_check))) {\r
- intent = new Intent(context, AntiMonitorActivity.class);\r
- }else if (testItemName.equals(context.getResources().getString(R.string.temperature))) {\r
- intent = new Intent(context, TemperatureActivity.class);\r
- }\r
-\r
- if (intent != null) {\r
- intent.putExtra("running", false);\r
- }else{\r
- intent = new Intent(context, TestMainActivity.class);\r
- }\r
- return intent;\r
- }\r
- public static String getItemAt(int i){\r
- if (TestItems!=null && i >=0&& i< TestItems.size()){\r
- return TestItems.get(i);\r
- }else{\r
- return null;\r
- }\r
- }\r
- public static String getItemResultAt(int i){\r
- if (TestResult!=null && i >=0&& i< TestResult.size()){\r
- return TestResult.get(i);\r
- }else{\r
- return null;\r
- }\r
- }\r
-\r
- public static boolean setTestResult(int i, boolean pass){\r
- if (TestResult!=null && i >=0&& i< TestResult.size()){\r
- TestResult.set(i,String.valueOf(pass));\r
- return true;\r
- }\r
- return false;\r
- }\r
-\r
- public static void initConfig(Context context){\r
- setTestItems(getArray(context));\r
-\r
- }\r
-\r
- public static String[] getList(Context context) {\r
- String[] listTem = {context.getString(R.string.version_new), context.getString(R.string.touch), context.getString(R.string.light_new), context.getString(R.string.camera),\r
- context.getString(R.string.wifi), context.getString(R.string.gps), context.getString(R.string.speak), context.getString(R.string.mic_title),\r
- context.getString(R.string.sim_title), context.getString(R.string.dual_new), context.getString(R.string.ramromTest), context.getString(R.string.beiguang_new),\r
- context.getString(R.string.test_sensor), context.getString(R.string.test_battery)};\r
- return listTem;\r
- }\r
- public static String[] stateArr;\r
- public static List<String> testResultList;\r
- public static List<String> getArray(Context context) {\r
- List<String> list = new ArrayList<String>();\r
- testResultList = new ArrayList<String>();\r
- for (int i = 0; i < getList(context).length; i++) {\r
- list.add(getList(context)[i]);\r
- testResultList.add(sharedPreferencesArr[i]);\r
- }\r
- if (FTUtils.isLieBao()) {\r
- list.add(context.getString(R.string.test_keypad));\r
- testResultList.add("keys");\r
- } else if (FTUtils.isSugar()) {\r
- list.add(context.getString(R.string.test_keypad));\r
- list.add(context.getString(R.string.bt));\r
- list.add(context.getString(R.string.shakeTest));\r
- list.add(context.getString(R.string.ultraviolet));\r
-\r
- testResultList.add("keys");\r
- testResultList.add("bt");\r
- testResultList.add("vibrator");\r
- testResultList.add("Ultraviolet");\r
- } else if (FTUtils.isS06()) {\r
- // s06 添加dsp测试\r
- list.add(context.getString(R.string.hall));\r
- list.add(context.getString(R.string.bt));\r
- list.add(context.getString(R.string.dsp));\r
- list.add(context.getString(R.string.heartrate));\r
-\r
- testResultList.add("keys");\r
- testResultList.add("bt");\r
- testResultList.add("dsp");\r
- testResultList.add("heartrate");\r
-\r
- } else if (FTUtils.hasHRS_TEMP()){\r
-\r
- //list.add(context.getString(R.string.test_keypad));\r
- list.add(context.getString(R.string.heartrate));\r
- list.add(context.getString(R.string.temperature));\r
- list.remove(context.getString(R.string.camera));\r
- list.add(context.getString(R.string.anti_check));\r
- //testResultList.add("keys");\r
- testResultList.add("heartrate");\r
- testResultList.add("temperature");\r
- testResultList.remove("camera");\r
- testResultList.add("anti");\r
- } else if (FTUtils.isQ3FT()){\r
- list.add(context.getString(R.string.test_keypad));\r
- list.add(context.getString(R.string.heartrate));\r
- list.add(context.getString(R.string.temperature));\r
- list.remove(context.getString(R.string.camera));\r
- list.add(context.getString(R.string.anti_check));\r
- testResultList.add("keys");\r
- testResultList.add("heartrate");\r
- testResultList.add("temperature");\r
- testResultList.remove("camera");\r
- testResultList.add("anti");\r
- } else if (FTUtils.isQ3F()){\r
-\r
- list.add(context.getString(R.string.test_keypad));\r
- list.add(context.getString(R.string.shakeTest));\r
- list.add(context.getString(R.string.heartrate));\r
- testResultList.add("keys");\r
- testResultList.add("vibrator");\r
- testResultList.add("heartrate");\r
- }\r
- stateArr = new String[testResultList.size()];\r
- return list;\r
- }\r
-\r
-\r
- static String[] sharedPreferencesArr = {"version", "touch", "lcd", "camera", "wifi", "gps", "speak", "mic", "sim", "dialer",\r
- "watchmemory", "light", "Gsensor", "watchbattery"/*, "keys", "bt", "vibrator", "Ultraviolet", "dsp"*/};\r
-}\r
+package mobile.miki.util;
+
+import android.app.Application;
+import android.content.Context;
+import android.content.Intent;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import mobile.miki.AntiMonitorActivity;
+import mobile.miki.BatteryTestActivity;
+import mobile.miki.BlooToothActivity;
+import mobile.miki.BrightnessTest;
+import mobile.miki.CameraPreview;
+import mobile.miki.DSPActivity;
+import mobile.miki.DialerTestActivity;
+import mobile.miki.GpsTest;
+import mobile.miki.GravitySensorActivity;
+import mobile.miki.HeartRate;
+import mobile.miki.KeysTestActivity;
+import mobile.miki.MikeTest;
+import mobile.miki.MotorTestActivity;
+import mobile.miki.MyApplication;
+import mobile.miki.R;
+import mobile.miki.RingtoneActivity;
+import mobile.miki.SimDetectActivity;
+import mobile.miki.SystemMemory;
+import mobile.miki.TemperatureActivity;
+import mobile.miki.TouchTest;
+import mobile.miki.UltravioletMonitorActivity;
+import mobile.miki.VersionActivity;
+import mobile.miki.WifiTestActiviy;
+import mobile.miki.lcd.LcdActivity;
+import mobile.miki.mainui.TestMainActivity;
+
+public class Config {
+
+ private static List<String> TestItems=null;
+ private static List<String> TestResult=null;
+ public static void setTestItems(List<String> items){
+
+ if(items==null){
+ Logger.d("setTestItems items is null");
+ return ;
+ }
+ if (TestItems==null){
+ TestItems=new ArrayList<String>();
+ TestResult=new ArrayList<String>();
+ }
+ TestItems.clear();
+ TestResult.clear();
+
+ for (int i=0;i< items.size();i++ ) {
+ TestItems.add(i,items.get(i));
+ TestResult.add(i,"false");
+ }
+
+ }
+
+ public static int getIndexByTestItemName(String name){
+ Logger.d("name "+name+" item "+TestItems);
+
+// if (TestItems==null) initConfig(MyApplication.getInstance().getApplicationContext());
+ if(name!=null && TestItems!=null) {
+ for (int i = 0; i < TestItems.size(); i++) {
+ Logger.d("name "+name+" item "+TestItems.get(i)+" "+i);
+ if (name.equals(TestItems.get(i))) {
+ return i;
+ }
+ }
+ }
+ return -1;
+ }
+ public static String getNextTestItemName(String testItemmName){
+
+ int index=-1;
+ index=getIndexByTestItemName(testItemmName);
+ Logger.d("find "+testItemmName+", index "+index);
+ if (TestItems!=null && index >=0&& index+1< TestItems.size()){
+ String itemname= TestItems.get(index+1);
+ return itemname;
+ }else{
+ return null;
+ }
+ }
+ public static String getNextTestItemName(int index){
+ if (TestItems!=null && index >=0&& index+1< TestItems.size()){
+ return TestItems.get(index+1);
+ }else{
+ return null;
+ }
+ }
+
+ public static Intent getNextTestIntent(Context context,Class cls){
+ String currentTestItemName=getTestNameByClass(context,cls.getSimpleName());
+ Logger.d("currentTestItemName="+currentTestItemName);
+ String nextTestItemName=getNextTestItemName(currentTestItemName);
+ Logger.d("nextTestItemName="+nextTestItemName);
+ return getIntent(context,nextTestItemName);
+ }
+ public static String getTestNameByClass(Context context,String ClassName){
+
+ if (context==null || ClassName==null) return null;
+ if (ClassName.equals(VersionActivity.class.getSimpleName())) {
+ return context.getResources().getString(R.string.version_new);
+ }else if (ClassName.equals(TouchTest.class.getSimpleName())){
+ return context.getResources().getString(R.string.touch);
+ }else if (ClassName.equals(LcdActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.light_new);
+ }else if (ClassName.equals(CameraPreview.class.getSimpleName())){
+ return context.getResources().getString(R.string.camera);
+ }else if (ClassName.equals(WifiTestActiviy.class.getSimpleName())){
+ return context.getResources().getString(R.string.wifi);
+ }else if (ClassName.equals(GpsTest.class.getSimpleName())){
+ return context.getResources().getString(R.string.gps);
+ }else if (ClassName.equals(RingtoneActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.speak);
+ }else if (ClassName.equals(MikeTest.class.getSimpleName())){
+ return context.getResources().getString(R.string.mic_title);
+ }else if (ClassName.equals(SimDetectActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.sim_title);
+ }else if (ClassName.equals(DialerTestActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.dual_new);
+ }else if (ClassName.equals(SystemMemory.class.getSimpleName())){
+ return context.getResources().getString(R.string.ramromTest);
+ }else if (ClassName.equals(BrightnessTest.class.getSimpleName())){
+ return context.getResources().getString(R.string.beiguang_new);
+ }else if (ClassName.equals(GravitySensorActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.test_sensor);
+ }else if (ClassName.equals(BatteryTestActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.test_battery);
+ }else if (ClassName.equals(KeysTestActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.test_keypad);
+ }else if (ClassName.equals(BlooToothActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.bt);
+ }else if (ClassName.equals(MotorTestActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.shakeTest);
+ }else if (ClassName.equals(UltravioletMonitorActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.ultraviolet);
+ }else if (ClassName.equals(DSPActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.dsp);
+ }else if (ClassName.equals(HeartRate.class.getSimpleName())) {
+ return context.getResources().getString(R.string.heartrate);
+ }else if (ClassName.equals(AntiMonitorActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.anti_check);
+ }else if (ClassName.equals(TemperatureActivity.class.getSimpleName())){
+ return context.getResources().getString(R.string.temperature);
+ }else {
+
+ return null;
+ }
+
+ }
+ public static Intent getIntent(Context context, String testItemName) {
+
+ if (context==null || testItemName==null)
+ return (new Intent(context, TestMainActivity.class));;
+ Intent intent = null;
+ if (testItemName.equals(context.getResources().getString(R.string.version_new))) {
+ intent = new Intent(context, VersionActivity.class);
+ } else if (testItemName.equals(context.getResources().getString(R.string.touch))) {
+ intent = new Intent(context, TouchTest.class);
+ } else if (testItemName.equals(context.getResources().getString(R.string.light_new))) {
+ intent = new Intent(context, LcdActivity.class);
+ } else if (testItemName.equals(context.getResources().getString(R.string.camera))) {
+ intent = new Intent(context, CameraPreview.class);
+ } else if (testItemName.equals(context.getResources().getString(R.string.wifi))) {
+ intent = new Intent(context, WifiTestActiviy.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.gps))) {
+ intent = new Intent(context, GpsTest.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.speak))) {
+ intent = new Intent(context, RingtoneActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.mic_title))) {
+ intent = new Intent(context, MikeTest.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.sim_title))) {
+ intent = new Intent(context, SimDetectActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.dual_new))) {
+ intent = new Intent(context, DialerTestActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.ramromTest))) {
+ intent = new Intent(context, SystemMemory.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.beiguang_new))) {
+ intent = new Intent(context, BrightnessTest.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.test_sensor))) {
+ intent = new Intent(context, GravitySensorActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.test_battery))) {
+ intent = new Intent(context, BatteryTestActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.test_keypad))) {
+ intent = new Intent(context, KeysTestActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.bt))) {
+ intent = new Intent(context, BlooToothActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.shakeTest))) {
+ intent = new Intent(context, MotorTestActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.ultraviolet))) {
+ intent = new Intent(context, UltravioletMonitorActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.dsp))) {
+ intent = new Intent(context, DSPActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.heartrate))) {
+ intent = new Intent(context, HeartRate.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.anti_check))) {
+ intent = new Intent(context, AntiMonitorActivity.class);
+ }else if (testItemName.equals(context.getResources().getString(R.string.temperature))) {
+ intent = new Intent(context, TemperatureActivity.class);
+ }
+
+ if (intent != null) {
+ intent.putExtra("running", false);
+ }else{
+ intent = new Intent(context, TestMainActivity.class);
+ }
+ return intent;
+ }
+ public static String getItemAt(int i){
+ if (TestItems!=null && i >=0&& i< TestItems.size()){
+ return TestItems.get(i);
+ }else{
+ return null;
+ }
+ }
+ public static String getItemResultAt(int i){
+ if (TestResult!=null && i >=0&& i< TestResult.size()){
+ return TestResult.get(i);
+ }else{
+ return null;
+ }
+ }
+
+ public static boolean setTestResult(int i, boolean pass){
+ if (TestResult!=null && i >=0&& i< TestResult.size()){
+ TestResult.set(i,String.valueOf(pass));
+ return true;
+ }
+ return false;
+ }
+
+ public static void initConfig(Context context){
+ setTestItems(getArray(context));
+
+ }
+
+ public static String[] getList(Context context) {
+ String[] listTem = {context.getString(R.string.version_new), context.getString(R.string.touch), context.getString(R.string.light_new), context.getString(R.string.camera),
+ context.getString(R.string.wifi), context.getString(R.string.gps), context.getString(R.string.speak), context.getString(R.string.mic_title),
+ context.getString(R.string.sim_title), context.getString(R.string.dual_new), context.getString(R.string.ramromTest), context.getString(R.string.beiguang_new),
+ context.getString(R.string.test_sensor), context.getString(R.string.test_battery)};
+ return listTem;
+ }
+ public static String[] stateArr;
+ public static List<String> testResultList;
+ public static List<String> getArray(Context context) {
+ List<String> list = new ArrayList<String>();
+ testResultList = new ArrayList<String>();
+ for (int i = 0; i < getList(context).length; i++) {
+ list.add(getList(context)[i]);
+ testResultList.add(sharedPreferencesArr[i]);
+ }
+ if (FTUtils.isLieBao()) {
+ list.add(context.getString(R.string.test_keypad));
+ testResultList.add("keys");
+ } else if (FTUtils.isSugar()) {
+ list.add(context.getString(R.string.test_keypad));
+ list.add(context.getString(R.string.bt));
+ list.add(context.getString(R.string.shakeTest));
+ list.add(context.getString(R.string.ultraviolet));
+
+ testResultList.add("keys");
+ testResultList.add("bt");
+ testResultList.add("vibrator");
+ testResultList.add("Ultraviolet");
+ } else if (FTUtils.isS06()) {
+ // s06 添加dsp测试
+ list.add(context.getString(R.string.hall));
+ list.add(context.getString(R.string.bt));
+ list.add(context.getString(R.string.dsp));
+ list.add(context.getString(R.string.heartrate));
+
+ testResultList.add("keys");
+ testResultList.add("bt");
+ testResultList.add("dsp");
+ testResultList.add("heartrate");
+
+
+ } else if (FTUtils.isQ3FT()){
+ list.add(context.getString(R.string.test_keypad));
+ list.add(context.getString(R.string.heartrate));
+ list.add(context.getString(R.string.temperature));
+ list.add(context.getString(R.string.shakeTest));
+ list.add(context.getString(R.string.anti_check));
+ testResultList.add("keys");
+ testResultList.add("heartrate");
+ testResultList.add("temperature");
+ testResultList.add("vibrator");
+ testResultList.add("anti");
+ } else if (FTUtils.isQ3F()){
+
+ list.add(context.getString(R.string.test_keypad));
+ list.add(context.getString(R.string.shakeTest));
+ list.add(context.getString(R.string.heartrate));
+ testResultList.add("keys");
+ testResultList.add("vibrator");
+ testResultList.add("heartrate");
+ }else if (FTUtils.isGT09()) {
+ list.add(context.getString(R.string.shakeTest));
+ testResultList.add("vibrator");
+
+ list.remove(context.getString(R.string.sim_title));
+ list.remove(context.getString(R.string.dual_new));
+ testResultList.remove("sim");
+ testResultList.remove("dialer");
+ } else if (FTUtils.hasHRS_TEMP()){
+
+ //list.add(context.getString(R.string.test_keypad));
+ list.remove(context.getString(R.string.camera));
+ list.add(context.getString(R.string.heartrate));
+ list.add(context.getString(R.string.temperature));
+ list.add(context.getString(R.string.anti_check));
+ //testResultList.add("keys");
+ testResultList.remove("camera");
+ testResultList.add("heartrate");
+ testResultList.add("temperature");
+ testResultList.add("anti");
+ }
+ stateArr = new String[testResultList.size()];
+ return list;
+ }
+
+
+ static String[] sharedPreferencesArr = {"version", "touch", "lcd", "camera", "wifi", "gps", "speak", "mic", "sim", "dialer",
+ "watchmemory", "light", "Gsensor", "watchbattery"/*, "keys", "bt", "vibrator", "Ultraviolet", "dsp"*/};
+}
-package mobile.miki.util;\r
-\r
-import android.bluetooth.BluetoothAdapter;\r
-import android.content.Context;\r
-import android.content.SharedPreferences;\r
-import android.os.Build;\r
-import android.os.SystemProperties;\r
-import android.telephony.TelephonyManager;\r
-import android.util.Log;\r
-\r
-import java.io.FileInputStream;\r
-import java.lang.reflect.Method;\r
-import java.net.NetworkInterface;\r
-import java.net.SocketException;\r
-import java.util.Enumeration;\r
-\r
-public class FTUtils {\r
- public static String getDISPLAY() {\r
- return Build.DISPLAY.toUpperCase();\r
- }\r
-\r
- public static String getMODEL() {\r
- return Build.MODEL.toUpperCase();\r
- }\r
-\r
- /**\r
- * 展讯猎豹项目\r
- * @return\r
- */\r
- public static boolean isLieBao() {\r
- return getMODEL().contains("C02A") || getMODEL().contains("S09") || getMODEL().contains("C02");\r
- }\r
-\r
- /**\r
- * sugar\r
- * @return\r
- */\r
- public static boolean isSugar() {\r
- return getDISPLAY().contains("W501CS") || getMODEL().contains("SUGAR");\r
- }\r
-\r
- public static boolean doPCBATest(){\r
- return false;\r
- }\r
- public static void SetPreferences(Context paramContext, int paramInt,\r
- Long time) {\r
- SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest", 0);\r
- String str = paramContext.getResources().getString(paramInt);\r
- SharedPreferences.Editor localEditor = sharedPreferences.edit();\r
- localEditor.putLong(str, time);\r
- localEditor.commit();\r
- }\r
-\r
- public static long GetPreferences(Context paramContext, int paramInt) {\r
- SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest", 0);\r
- String str = paramContext.getResources().getString(paramInt);\r
- long time = sharedPreferences.getLong(str, 0);\r
- return time;\r
- }\r
-\r
- public static void SetAgeingWorktimePreferences(Context paramContext, int paramInt,\r
- int time) {\r
- SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest_workTime", 0);\r
- String str = paramContext.getResources().getString(paramInt);\r
- SharedPreferences.Editor localEditor = sharedPreferences.edit();\r
- localEditor.putInt(str, time);\r
- localEditor.commit();\r
- }\r
-\r
- public static int GetAgeingWorktimePreferences(Context paramContext, int paramInt) {\r
- SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest_workTime", 0);\r
- String str = paramContext.getResources().getString(paramInt);\r
- int time = sharedPreferences.getInt(str, 0);\r
- return time;\r
- }\r
-\r
-\r
- /**\r
- * android 7.0及以上 (2)扫描各个网络接口获取mac地址\r
- *\r
- */\r
- /**\r
- * 获取设备HardwareAddress地址\r
- *\r
- * @return\r
- */\r
- public static String getWifiMacAddress() {\r
- Enumeration<NetworkInterface> interfaces = null;\r
- try {\r
- interfaces = NetworkInterface.getNetworkInterfaces();\r
- } catch (SocketException e) {\r
- e.printStackTrace();\r
- }\r
- String hardWareAddress = null;\r
- NetworkInterface iF = null;\r
- if (interfaces == null) {\r
- return null;\r
- }\r
- while (interfaces.hasMoreElements()) {\r
- iF = interfaces.nextElement();\r
- try {\r
- hardWareAddress = bytesToString(iF.getHardwareAddress());\r
- if (hardWareAddress != null)\r
- break;\r
- } catch (SocketException e) {\r
- e.printStackTrace();\r
- }\r
- }\r
- return hardWareAddress;\r
- }\r
-\r
- /***\r
- * byte转为String\r
- *\r
- * @param bytes\r
- * @return\r
- */\r
- private static String bytesToString(byte[] bytes) {\r
- if (bytes == null || bytes.length == 0) {\r
- return null;\r
- }\r
- StringBuilder buf = new StringBuilder();\r
- for (byte b : bytes) {\r
- buf.append(String.format("%02X:", b));\r
- }\r
- if (buf.length() > 0) {\r
- buf.deleteCharAt(buf.length() - 1);\r
- }\r
- return buf.toString();\r
- }\r
-\r
-\r
-\r
- // 展讯获取cid\r
- public static String GetCidFromSystem() {\r
- String cid_file = SystemProperties.get("ro.product.partitionpath", "") + "miscdata";\r
- byte[] resCid = new byte[16];\r
- try {\r
- byte[] buf = new byte[50];\r
- FileInputStream inputStream = new FileInputStream(cid_file);\r
- int len = inputStream.read(buf);\r
- if (len < 50) return null;\r
- for (int i = 0; i < 16; i++) {\r
- resCid[i] = buf[i + 28];\r
- }\r
-// for (int i = 0; i < 16; i++) {\r
-// if ((resCid[i] >= 0x30 && resCid[i] <= 0x39) || (resCid[i] >= 0x61 && resCid[i] <= 0x7A) || (resCid[i] >= 0x41 && resCid[i] <= 0x5A)) {\r
-// // valid\r
-// } else {\r
-// // invalid\r
-// for (int j = 28; j < 28 + 16; j++) {\r
-// resCid[j] = 0x30;\r
-// }\r
-// break;\r
-// }\r
-// }\r
- } catch (Exception e) {\r
- e.printStackTrace();\r
- }\r
- String cid = new String(resCid);\r
- Log.d("FTUtils", "get cid=" + cid);\r
- return cid;\r
- }\r
-\r
- public static String getImei(Context context) {\r
- TelephonyManager manager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);\r
- String imei = "";\r
-\r
- Class clazz = null;\r
- if (manager != null) {\r
- clazz = manager.getClass();\r
- }\r
-\r
- try {\r
- Method getImei = null;\r
- if (clazz != null) {\r
- getImei = clazz.getDeclaredMethod("getImei");\r
- }\r
- if (getImei != null) {\r
- getImei.setAccessible(true);\r
- imei = (String) getImei.invoke(manager);\r
- }\r
- } catch (Exception e) {\r
- e.printStackTrace();\r
- }\r
- return imei;\r
- }\r
-\r
- public static String getBtAddressViaReflection() {\r
- return BluetoothAdapter.getDefaultAdapter().getAddress();\r
- }\r
-\r
- public static boolean isS06() {\r
- if (SystemProperties.get("ro.product.brand", "").equalsIgnoreCase("SPRD") && SystemProperties.get("ro.build.version.release", "").equalsIgnoreCase("8.1.0")) {\r
- return true;\r
- }\r
- return false;\r
- }\r
-\r
- public static boolean isA9(){\r
- if(SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("A9")\r
- || SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("YQ")) {\r
-\r
- return true;\r
- }\r
- return false;\r
- }\r
- public static boolean isV20(){\r
- if(SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("V20")\r
- || SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("C46")) {\r
-\r
- return true;\r
- }\r
- return false;\r
- }\r
- public static boolean isQ3FT(){\r
-\r
- if ( SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("VitracK")) {\r
- return true;\r
- }\r
- return false;\r
- }\r
- public static boolean isQ3F(){\r
-\r
- if (getMODEL().contains("C41-QL02")||getMODEL().contains("C41S-QL02")|| SystemProperties.get("ro.product.isQ3F","").equalsIgnoreCase("true") || SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("q3f")) {\r
- return true;\r
- }\r
- return false;\r
- }\r
- public static boolean hasHRS_TEMP(){\r
-\r
- if (getMODEL().contains("H88")\r
- ||SystemProperties.get("ro.product.isH88","").equalsIgnoreCase("true")\r
- || SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("H88")\r
- || SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("A9")\r
- || SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("YQ")\r
- ) {\r
- return true;\r
- }\r
- return false;\r
- }\r
-}\r
+package mobile.miki.util;
+
+import android.bluetooth.BluetoothAdapter;
+import android.content.Context;
+import android.content.SharedPreferences;
+import android.os.Build;
+import android.os.SystemProperties;
+import android.telephony.TelephonyManager;
+import android.util.Log;
+
+import java.io.FileInputStream;
+import java.lang.reflect.Method;
+import java.net.NetworkInterface;
+import java.net.SocketException;
+import java.util.Enumeration;
+
+public class FTUtils {
+ public static String getDISPLAY() {
+ return Build.DISPLAY.toUpperCase();
+ }
+
+ public static String getMODEL() {
+ return Build.MODEL.toUpperCase();
+ }
+
+ /**
+ * 展讯猎豹项目
+ * @return
+ */
+ public static boolean isLieBao() {
+// return getMODEL().contains("C02A") || getMODEL().contains("S09") || getMODEL().contains("C02");
+ return false;
+ }
+
+ /**
+ * sugar
+ * @return
+ */
+ public static boolean isSugar() {
+// return getDISPLAY().contains("W501CS") || getMODEL().contains("SUGAR");
+ return false;
+ }
+
+ public static boolean doPCBATest(){
+ return false;
+ }
+ public static void SetPreferences(Context paramContext, int paramInt,
+ Long time) {
+ SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest", 0);
+ String str = paramContext.getResources().getString(paramInt);
+ SharedPreferences.Editor localEditor = sharedPreferences.edit();
+ localEditor.putLong(str, time);
+ localEditor.commit();
+ }
+
+ public static long GetPreferences(Context paramContext, int paramInt) {
+ SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest", 0);
+ String str = paramContext.getResources().getString(paramInt);
+ long time = sharedPreferences.getLong(str, 0);
+ return time;
+ }
+
+ public static void SetAgeingWorktimePreferences(Context paramContext, int paramInt,
+ int time) {
+ SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest_workTime", 0);
+ String str = paramContext.getResources().getString(paramInt);
+ SharedPreferences.Editor localEditor = sharedPreferences.edit();
+ localEditor.putInt(str, time);
+ localEditor.commit();
+ }
+
+ public static int GetAgeingWorktimePreferences(Context paramContext, int paramInt) {
+ SharedPreferences sharedPreferences = paramContext.getSharedPreferences("AgingTest_workTime", 0);
+ String str = paramContext.getResources().getString(paramInt);
+ int time = sharedPreferences.getInt(str, 0);
+ return time;
+ }
+
+
+ /**
+ * android 7.0及以上 (2)扫描各个网络接口获取mac地址
+ *
+ */
+ /**
+ * 获取设备HardwareAddress地址
+ *
+ * @return
+ */
+ public static String getWifiMacAddress() {
+ Enumeration<NetworkInterface> interfaces = null;
+ try {
+ interfaces = NetworkInterface.getNetworkInterfaces();
+ } catch (SocketException e) {
+ e.printStackTrace();
+ }
+ String hardWareAddress = null;
+ NetworkInterface iF = null;
+ if (interfaces == null) {
+ return null;
+ }
+ while (interfaces.hasMoreElements()) {
+ iF = interfaces.nextElement();
+ try {
+ hardWareAddress = bytesToString(iF.getHardwareAddress());
+ if (hardWareAddress != null)
+ break;
+ } catch (SocketException e) {
+ e.printStackTrace();
+ }
+ }
+ return hardWareAddress;
+ }
+
+ /***
+ * byte转为String
+ *
+ * @param bytes
+ * @return
+ */
+ private static String bytesToString(byte[] bytes) {
+ if (bytes == null || bytes.length == 0) {
+ return null;
+ }
+ StringBuilder buf = new StringBuilder();
+ for (byte b : bytes) {
+ buf.append(String.format("%02X:", b));
+ }
+ if (buf.length() > 0) {
+ buf.deleteCharAt(buf.length() - 1);
+ }
+ return buf.toString();
+ }
+
+
+
+ // 展讯获取cid
+ public static String GetCidFromSystem() {
+ String cid_file = SystemProperties.get("ro.product.partitionpath", "") + "miscdata";
+ byte[] resCid = new byte[16];
+ try {
+ byte[] buf = new byte[50];
+ FileInputStream inputStream = new FileInputStream(cid_file);
+ int len = inputStream.read(buf);
+ if (len < 50) return null;
+ for (int i = 0; i < 16; i++) {
+ resCid[i] = buf[i + 28];
+ }
+// for (int i = 0; i < 16; i++) {
+// if ((resCid[i] >= 0x30 && resCid[i] <= 0x39) || (resCid[i] >= 0x61 && resCid[i] <= 0x7A) || (resCid[i] >= 0x41 && resCid[i] <= 0x5A)) {
+// // valid
+// } else {
+// // invalid
+// for (int j = 28; j < 28 + 16; j++) {
+// resCid[j] = 0x30;
+// }
+// break;
+// }
+// }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ String cid = new String(resCid);
+ Log.d("FTUtils", "get cid=" + cid);
+ return cid;
+ }
+
+ public static String getImei(Context context) {
+ TelephonyManager manager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
+ String imei = "";
+
+ Class clazz = null;
+ if (manager != null) {
+ clazz = manager.getClass();
+ }
+
+ try {
+ Method getImei = null;
+ if (clazz != null) {
+ getImei = clazz.getDeclaredMethod("getImei");
+ }
+ if (getImei != null) {
+ getImei.setAccessible(true);
+ imei = (String) getImei.invoke(manager);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return imei;
+ }
+
+ public static String getBtAddressViaReflection() {
+ return BluetoothAdapter.getDefaultAdapter().getAddress();
+ }
+
+ public static boolean isS06() {
+// if (SystemProperties.get("ro.product.brand", "").equalsIgnoreCase("SPRD") && SystemProperties.get("ro.build.version.release", "").equalsIgnoreCase("8.1.0")) {
+// return true;
+// }
+ return false;
+ }
+
+ public static boolean isA9(){
+ if(SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("A9")
+ || SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("YQ")) {
+
+ return true;
+ }
+ return false;
+ }
+ public static boolean isV20(){
+ if(SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("V20")
+ || SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("C46")) {
+
+ return true;
+ }
+ return false;
+ }
+
+ public static boolean isGT09(){
+ if(SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("GT09")
+ || SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("GT09")) {
+
+ return true;
+ }
+ return false;
+ }
+
+ public static boolean isQ3FT(){
+
+ if ( SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("VitracK")) {
+ return true;
+ }
+ return false;
+ }
+ public static boolean isQ3F(){
+
+ if (getMODEL().contains("C41-QL02")||getMODEL().contains("C41S-QL02")|| SystemProperties.get("ro.product.isQ3F","").equalsIgnoreCase("true") || SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("q3f")) {
+ return true;
+ }
+ return false;
+ }
+ public static boolean hasHRS_TEMP(){
+
+ if (getMODEL().contains("H88")
+ ||SystemProperties.get("ro.product.isH88","").equalsIgnoreCase("true")
+ || SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("H88")
+ || SystemProperties.get("persist.sys.id_num","").equalsIgnoreCase("A9")
+ || SystemProperties.get("persist.sys.customname","").equalsIgnoreCase("YQ")
+ ) {
+ return true;
+ }
+ return false;
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ >
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@drawable/bg_daytime"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/Factory_test_title"
+ style="@style/category_title_style"
+ android:layout_width="match_parent"
+ android:layout_height="30dp"
+ android:gravity="center|center_horizontal"
+ android:text="@string/benji"
+ android:textSize="22sp" />
+
+ <include layout="@layout/urovo_layout_listline" />
+
+ <LinearLayout
+ android:id="@+id/pcba_test"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:gravity="center_vertical"
+ android:orientation="vertical"
+ tools:visibility="gone">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/pcbaTest"
+ android:textSize="22sp" />
+
+ <TextView
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+ </LinearLayout>
+
+ <View
+ android:id="@+id/view"
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <LinearLayout
+ android:id="@+id/moblie_test"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/autoTest"
+ android:textSize="15sp" />
+
+ <TextView
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+
+ <LinearLayout
+ android:id="@+id/engineer_mode_test"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/testReport"
+ android:textSize="15sp" />
+
+ <TextView
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+ <LinearLayout
+ android:id="@+id/flagposiontion"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:clickable="true"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/flag_position"
+ android:textSize="15sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <LinearLayout
+ android:id="@+id/ageing_mode"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:clickable="true"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/ageing_mode"
+ android:textSize="15sp" />
+ </LinearLayout>
+
+ <View
+ android:id="@+id/view2"
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <LinearLayout
+ android:id="@+id/gps_full_test"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/gps"
+ android:textSize="15sp" />
+
+ <TextView
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <LinearLayout
+ android:id="@+id/download_mode"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:clickable="true"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/download_mode"
+ android:textSize="15sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+
+ <LinearLayout
+ android:id="@+id/map_copy_tools"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/resunme"
+ android:textSize="15sp" />
+
+ <TextView
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <LinearLayout
+ android:id="@+id/shutdown_system"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/power_off"
+ android:textSize="15sp" />
+
+ <TextView
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+ </LinearLayout>
+
+ <View
+ android:id="@+id/view5"
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <LinearLayout
+ android:id="@+id/dail"
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:clickable="true"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/textView15"
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:layout_weight="1"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/dual_new"
+ android:textSize="15sp" />
+ </LinearLayout>
+
+ <View
+ android:id="@+id/view3"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_weight="1"
+ android:background="#c0c0c0" />
+
+ <LinearLayout
+ android:id="@+id/tempAdjustLayout"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_weight="1"
+ android:background="@drawable/listpress"
+ android:clickable="true"
+ android:gravity="center_vertical"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/textViewTempAdjust"
+ style="@style/content_text_medium_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginTop="2dp"
+ android:layout_weight="1"
+ android:gravity="center_vertical"
+ android:text="@string/Engineer_mode_title"
+ android:visibility="gone" />
+
+ <TextView
+ style="@style/title_text_large_style"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="@string/tempAdjust"
+ android:textSize="15sp" />
+ </LinearLayout>
+
+ </LinearLayout>
+</ScrollView>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ tools:context=".GPSActivity"
+ android:background="@color/colorIcBg">
+
+ <TextView
+ android:id="@+id/ic_lc_fix_name"
+ style="@style/IcTextStyle"
+ android:text="@string/gps_full_title"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/ic_lc_fix_value"
+ style="@style/IcTextStyle"
+ android:layout_marginStart="10dp"
+ android:layout_toEndOf="@id/ic_lc_fix_name"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/ic_lc_star_name"
+ style="@style/IcTextStyle"
+ android:layout_below="@id/ic_lc_fix_name"
+ android:text="@string/gps_star_count"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/ic_lc_star_value"
+ style="@style/IcTextStyle"
+ android:layout_below="@id/ic_lc_fix_name"
+ android:layout_marginStart="10dp"
+ android:layout_toEndOf="@id/ic_lc_star_name"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/ic_lc_hoop_name"
+ style="@style/IcTextStyle"
+ android:layout_below="@id/ic_lc_star_name"
+ android:text="@string/gps_dop"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/ic_lc_hoop_value"
+ style="@style/IcTextStyle"
+ android:layout_below="@id/ic_lc_star_name"
+ android:layout_marginStart="10dp"
+ android:layout_toEndOf="@id/ic_lc_hoop_name"
+ android:textSize="10sp" />
+
+
+
+ <TextView
+ android:id="@+id/ic_lc_searchCount"
+ style="@style/IcTextStyle"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/ic_lc_hoop_name"
+ android:text="@string/gps_scan_time"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/ic_lc_searchCount_value"
+ style="@style/IcTextStyle"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@id/ic_lc_hoop_name"
+ android:layout_marginStart="10dp"
+ android:layout_toEndOf="@id/ic_lc_searchCount"
+ android:textSize="10sp" />
+ <android.support.v7.widget.RecyclerView
+ android:id="@+id/app_list"
+ android:layout_below="@id/ic_lc_searchCount"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"/>
+</RelativeLayout>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:background="@drawable/button_common_white_bg"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/text_item"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:textSize="10sp"
+ android:layout_gravity="center"
+ android:gravity="center"
+ android:text="11111111"/>
+
+
+</LinearLayout>
\ No newline at end of file
--- /dev/null
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical"
+ tools:context=".mainui.TestMainActivity">
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:gravity="center_vertical"
+ android:orientation="horizontal">
+
+
+ <RelativeLayout
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent">
+
+ <TextView
+ android:id="@+id/ceshibaogao"
+ style="@style/category_title_style"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:text="@string/testReport"
+ android:textSize="15sp" />
+
+
+ <TextView
+ android:id="@+id/tip2"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_below="@+id/ceshibaogao"
+ android:text="@string/tip2"
+ android:textColor="#000"
+ android:textSize="10sp" />
+
+ <Button
+ android:id="@+id/test_result"
+ android:layout_width="wrap_content"
+ android:layout_height="30dp"
+ android:layout_below="@+id/tip2"
+ android:layout_centerHorizontal="true"
+ android:text="@string/clear_new"
+ android:textSize="10sp" />
+
+ </RelativeLayout>
+ </LinearLayout>
+
+ <GridView
+ android:id="@+id/gridview"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:numColumns="3"
+ />
+
+</LinearLayout>
\ No newline at end of file
--- /dev/null
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="859dp"
+ android:layout_height="match_parent"
+ android:background="#ccc"
+ android:orientation="vertical" >
+
+ <include layout="@layout/urovo_layout_listline" />
+
+ <ScrollView
+ android:layout_width="match_parent"
+ android:layout_height="0dp"
+ android:layout_weight="1" >
+
+ <LinearLayout
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:orientation="vertical" >
+
+ <!-- jiaju test -->
+
+ <LinearLayout
+ android:id="@+id/jiaoju_test"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical" >
+
+ <TextView
+ android:id="@+id/jiaju"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:background="@drawable/setting_title_bg"
+ android:gravity="center"
+ android:paddingLeft="10.0dip"
+ android:text="@string/jiaju"
+ android:textSize="28sp"
+ android:textStyle="bold" />
+
+ <TextView
+ android:id="@+id/nv_tag"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:textColor="@color/black"
+ android:textSize="26sp" />
+
+ <!-- <include layout="@layout/urovo_layout_listline" /> -->
+
+ <TextView
+ android:id="@+id/pass"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+
+ <!-- <include layout="@layout/urovo_layout_listline" /> -->
+
+ <TextView
+ android:id="@+id/fail"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+
+ <include layout="@layout/urovo_layout_listline" />
+
+ <TextView
+ android:id="@+id/none"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:text="@string/none"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+ <include layout="@layout/urovo_layout_listline" />
+ </LinearLayout>
+ <!-- auto test -->
+
+ <LinearLayout
+ android:id="@+id/auto_test"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical" >
+
+ <TextView
+ android:id="@+id/auto"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:background="@drawable/setting_title_bg"
+ android:gravity="center"
+ android:paddingLeft="10.0dip"
+ android:text="@string/auto"
+ android:textSize="28sp"
+ android:textStyle="bold" />
+
+ <TextView
+ android:id="@+id/nv_tag1"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="5px"
+ android:gravity="left"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+
+ <!-- <include layout="@layout/urovo_layout_listline" /> -->
+
+ <TextView
+ android:id="@+id/pass1"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+
+ <!-- <include layout="@layout/urovo_layout_listline" /> -->
+
+ <TextView
+ android:id="@+id/fail1"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+
+ <include layout="@layout/urovo_layout_listline" />
+
+ <TextView
+ android:id="@+id/none1"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:text="@string/none1"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+
+ <include layout="@layout/urovo_layout_listline" />
+ </LinearLayout>
+
+ <!-- <include layout="@layout/urovo_layout_listline" /> -->
+
+ <LinearLayout
+ android:id="@+id/rf_Gs_test"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical" >
+
+ <TextView
+ android:id="@+id/rf_Gs"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:background="@drawable/setting_title_bg"
+ android:gravity="center"
+ android:paddingLeft="10.0dip"
+ android:text="@string/sigle_new"
+ android:textSize="28sp"
+ android:textStyle="bold" />
+
+ <TextView
+ android:id="@+id/none2"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginTop="10dp"
+ android:gravity="left"
+ android:text="@string/none2"
+ android:textColor="@color/black"
+ android:textSize="15sp" />
+ </LinearLayout>
+
+ <include layout="@layout/urovo_layout_listline" />
+ </LinearLayout>
+ </ScrollView>
+
+ <Button
+ android:id="@+id/close"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="10dp"
+ android:layout_marginTop="10dp"
+ android:gravity="center"
+ android:text="@string/close_r"
+ android:textSize="20sp" />
+
+</LinearLayout>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/relativeLayout1"
+ android:layout_width="match_parent"
+ android:layout_height="fill_parent"
+ android:background="@android:color/white"
+ android:orientation="vertical">
+
+ <ScrollView
+ android:id="@+id/scrollView1"
+ android:layout_width="fill_parent"
+ android:layout_height="0dp"
+ android:layout_marginBottom="0dp"
+ android:layout_weight="1"
+ android:background="@drawable/white">
+
+ <LinearLayout
+ android:id="@+id/linearLayout10"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical">
+ <!--版本号-->
+ <LinearLayout
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:orientation="vertical">
+ <TextView
+ android:id="@+id/tvBuildNumber"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/buildNumber"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/tvBuildNumberValue"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <!-- dou mod 20160831 -->
+ <!--imei-->
+ <LinearLayout
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:visibility="gone"
+ android:orientation="vertical">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/imei"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/tv_imei"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <!--barcode-->
+ <LinearLayout
+ android:id="@+id/ll_barcode"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:orientation="vertical">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/barcode"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/barcode"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+ <!--校准-->
+ <LinearLayout
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:visibility="gone"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/rfParameters"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/rf_parameters"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/rfParametersValue"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+ <!-- cid号 -->
+ <LinearLayout
+ android:id="@+id/linearLayout12"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:visibility="gone"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/cidParameters"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="cid"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/cidParametersValue"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <!--SIM卡 ICCID-->
+ <LinearLayout
+ android:id="@+id/linearLayout11"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:visibility="gone"
+ android:background="@drawable/white"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/SimIdParameters"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/simid_parameters"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/SimidParametersValue"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <!-- imei2 -->
+ <LinearLayout
+ android:id="@+id/ll_imei2"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:visibility="gone"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/imeiParameters"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/imei2"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/imeiParametersValue"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <!-- 获取屏幕分辨率 -->
+ <LinearLayout
+ android:id="@+id/linearLayout14"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:orientation="vertical">
+
+ <TextView
+ android:id="@+id/screenResolutionParameters"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/screen_resolution"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/screenResolutionParametersValue"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <!--wifi mac地址-->
+ <LinearLayout
+ android:id="@+id/ll_wifi_mac_address"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:visibility="gone"
+ android:orientation="vertical">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/wifi_mac_addaress"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/wifi_mac_address"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+
+ <!--蓝牙 mac地址-->
+ <LinearLayout
+ android:id="@+id/ll_bluethooth_mac_address"
+ android:layout_width="fill_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="1.0dip"
+ android:background="@drawable/white"
+ android:visibility="gone"
+ android:orientation="vertical">
+
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/bluethooth_mac_addaress"
+ android:textAppearance="?android:textAppearanceMedium"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+
+ <TextView
+ android:id="@+id/bluethooth_mac_address"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="@string/empty"
+ android:textColor="@drawable/black"
+ android:textSize="10sp" />
+ </LinearLayout>
+
+ <View
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:background="#c0c0c0" />
+ <!-- end -->
+ </LinearLayout>
+ </ScrollView>
+
+ <mobile.miki.mainui.ButtonViewTwo
+ android:id="@+id/btn_set"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_alignParentBottom="true"
+ android:layout_centerHorizontal="true"></mobile.miki.mainui.ButtonViewTwo>
+
+</LinearLayout>
\ No newline at end of file
-<?xml version="1.0" encoding="utf-8"?>\r
-<resources>\r
- <string name="project" translatable="false">Kdragon_80_t11</string>\r
- <string name="KEY_POWER" translatable="false">false</string>\r
- <string name="KEY_VLUP" translatable="false">true</string>\r
- <string name="KEY_VLDOWN" translatable="false">true</string>\r
- <string name="KEY_SEARCH" translatable="false">false</string>\r
- <string name="KEY_HOME" translatable="false">true</string>\r
- <string name="KEY_MENU" translatable="false">true</string>\r
- <string name="KEY_BACK" translatable="false">true</string>\r
- <string name="KEY_CAMERA" translatable="false">false</string>\r
- <string name="KEY_EARPHONE" translatable="false">false</string>\r
- <string name="timer_format" formatted="false" translatable="false">%02d:%02d</string>\r
- <string name="app_name">FactoryMode</string>\r
- <string name="otaupdate">OTA Update</string>\r
- <string name="light">Light_induction</string>\r
- <string name="noLight">Could not get brightness value</string>\r
- <string name="defaultlightness">Getting_brightness</string>\r
- <string name="lightness">brightness</string>\r
- <string name="lightTip">Tip: the phone is positive toward the light source is conducive to faster access to brightness</string>\r
- <string name="magnetic">Magnetic_induction</string>\r
- <string name="magneticX">Magnetic field x</string>\r
- <string name="magneticY">Magnetic field Y</string>\r
- <string name="magneticZ">Magnetic field Z</string>\r
- <string name="gravity">Gravity induction</string>\r
- <string name="gravityX">Gravity x</string>\r
- <string name="gravityY">Gravity Y</string>\r
- <string name="gravityZ">Gravity Z</string>\r
- <string name="shakeTest">Vibration_test</string>\r
- <string name="shakeClick">Click_shock</string>\r
- <string name="noShake">Does not support the mobile phone vibration</string>\r
- <string name="keysTest">Key test</string>\r
- <string name="keyPower">Power</string>\r
- <string name="keyVLDown">VLUp</string>\r
- <string name="keyVLUP">VLDown</string>\r
- <string name="keySearch">Search</string>\r
- <string name="keyHome">Home</string>\r
- <string name="keyMenu">Menu</string>\r
- <string name="keyBack">Back</string>\r
- <string name="keyCamera">Camera</string>\r
- <string name="keyCall">Call</string>\r
- <string name="keyEndCall">EndCall</string>\r
- <string name="empty">--</string>\r
- <string name="detectSim">Sim card detection</string>\r
- <string name="detectSim1">Detection Sim1</string>\r
- <string name="detectSim2">Detection Sim2</string>\r
- <string name="sim1">Sim1</string>\r
- <string name="sim2">Sim2</string>\r
- <string name="cardTest">SDcardtest</string>\r
- <string name="cardAvail">Insert SD card</string>\r
- <string name="cardFreeSize">Available space</string>\r
- <string name="cardUsedSize">used space</string>\r
- <string name="cardTotalSize">SD card capacity</string>\r
- <string name="card2TotalSize">SD2 card capacity</string>\r
- <string name="checkSum">Checksum</string>\r
- <string name="nandFlash">Cell phone memory</string>\r
- <string name="manufacturerID">Manufacturer ID</string>\r
- <string name="deviceID">device ID</string>\r
- <string name="rwTestResult">Read and write test results</string>\r
- <string name="signalTest">Signal test</string>\r
- <string name="signalRsult">Signal test results</string>\r
- <string name="signalTestError">Signal test failure</string>\r
- <string name="emergencyCall">Call 112</string>\r
- <string name="chinaMoveCall">Call 10086</string>\r
- <string name="emergencyCallSuccess">Call an emergency call success</string>\r
- <string name="emergencyCallFail">Call emergency failure</string>\r
- <string name="headsetTest">Headset test</string>\r
- <string name="headsetAvail">There is no headset</string>\r
- <string name="startMusic">play</string>\r
- <string name="headsetButton">According to the remote control button</string>\r
- <string name="gpsTest">GPS location</string>\r
- <string name="gpsLongitude">longitude</string>\r
- <string name="gpsDimensions">latitude</string>\r
- <string name="coldRestart">cold boot</string>\r
- <string name="hotRestart">Hot start</string>\r
- <string name="noPosition">No geographic information</string>\r
- <string name="gpsTTFF">GPS TTFF</string>\r
- <string name="gpslocation">Getting GPS location information...</string>\r
- <string name="sec">sec</string>\r
- <string name="fmTest">Screen brightness</string>\r
- <string name="fmSetFreq">channel</string>\r
- <string name="rssi">RSSI</string>\r
- <string name="mhz">MHZ</string>\r
- <string name="dbm">(dBm)</string>\r
- <string name="testFreq0">Test Freq 0</string>\r
- <string name="testFreq1">Test Freq 1</string>\r
- <string name="testFreq2">Test Freq 2</string>\r
- <string name="testFreq3">Test Freq 3</string>\r
- <string name="bluetooth">Bluetooth test</string>\r
- <string name="blState">Bluetooth status</string>\r
- <string name="blOpen">Turn on Bluetooth</string>\r
- <string name="blOpened">Bluetooth is turned on</string>\r
- <string name="blNoSerport">The current phone does not support Bluetooth</string>\r
- <string name="bldenied">Bluetooth has been banned</string>\r
- <string name="blScan">Bluetooth scan</string>\r
- <string name="blScaning">Scanning Bluetooth device</string>\r
- <string name="wifitest">WIFI test</string>\r
- <string name="wfState">WIFI state</string>\r
- <string name="wfOpen">Start WIFI</string>\r
- <string name="wfScan">WIFI scan</string>\r
- <string name="wfScaning">Is sweeping the hot spots</string>\r
- <string name="cameraTest">Camera test</string>\r
- <string name="mainCamera">Main camera</string>\r
- <string name="subCamera">Vice camera</string>\r
- <string name="ringtone">Bell test</string>\r
- <string name="ringStart">Click play</string>\r
- <string name="receiverTest">Receiver test</string>\r
- <string name="loopback">Microphone test</string>\r
- <string name="mic1">Mobile phone microphone test</string>\r
- <string name="mic2">Headphone microphone test</string>\r
- <string name="receiverStart">Click play</string>\r
- <string name="colon">:</string>\r
- <string name="nothing">nothing</string>\r
- <string name="ok">correct</string>\r
- <string name="found">find</string>\r
- <string name="tsb">Taiwan equipment</string>\r
- <string name="returnBack">return</string>\r
- <string name="getInfo">Getting information...</string>\r
- <string name="noFoundDev">No devices found</string>\r
- <string name="noMainC">Rear facing camera is not supported</string>\r
- <string name="noSubC">Rear facing camera is not supported</string>\r
- <string name="gpsOk">GPS module normal</string>\r
- <string name="pleaseOpGps">Please open the GPS first!</string>\r
- <string name="waitForpo">Wait for location information</string>\r
- <string name="state">state</string>\r
- <string name="have">yes</string>\r
- <string name="yes">yes</string>\r
- <string name="no">no</string>\r
- <string name="_fail">Fail</string>\r
- <string name="checkFail">Failure detection</string>\r
- <string name="rwCheckSuccess">Reading and writing test success</string>\r
- <string name="rwCheckFail">Reading and writing test success</string>\r
- <string name="dailSuccess">Call success</string>\r
- <string name="dailFail">Call failed</string>\r
- <string name="grd">A hot spot</string>\r
- <string name="foundNoHot">Did not search to the hot spots</string>\r
- <string name="openWififail">WIFI startup failed</string>\r
- <string name="scanBegin">Start scanning</string>\r
- <string name="wifiOpening">Starting WIFI...</string>\r
- <string name="wifiOpen">WIFI has been started</string>\r
- <string name="noSuportWifi">Does not support WIFI</string>\r
- <string name="pleaseInsertHS">Please insert the headset</string>\r
- <string name="pleaseOffHS">Please unplug the headset</string>\r
- <string name="record">sound recording</string>\r
- <string name="recordStart">Is recording</string>\r
- <string name="stop">stop it</string>\r
- <string name="recordstop">Stop status</string>\r
- <string name="play">play</string>\r
- <string name="delete">delete</string>\r
- <string name="recordFile">Recording file</string>\r
- <string name="testTouchScreen">touch screen</string>\r
- <string name="TouchScreen">TouchScreen</string>\r
- <string name="TouchScreen_HandWriting">TouchScreen_HandWriting</string>\r
- <string name="TouchScreen_Verification">TouchScreen_Verification</string>\r
- <string name="TouchScreen_VerificationPoint">TouchScreen_VerificationPoint</string>\r
- <string name="TouchScreen_VerificationLine">TouchScreen_VerificationLine</string>\r
- <string name="TouchScreen_VerificationShaking">TouchScreen_VerificationShaking</string>\r
- <string name="TouchScreen_MultiTouch">TouchScreen_MultiTouch</string>\r
- <string name="TouchScreen_Settings_TextValue">The value</string>\r
- <string name="TouchScreen_Settings_TextSpinner">Category</string>\r
- <string name="TouchScreen_Settings_TextSet">Set</string>\r
- <string name="TouchScreen_Settings">Settings</string>\r
- <string name="TouchScreen_Settings_Value">0</string>\r
- <string name="TouchScreen_Settings_sdcard">OFF</string>\r
- <string name="TouchScreen_Settings_uart">OFF</string>\r
- <string name="TouchScreen_Settings_TextUart">Enable Uart Log</string>\r
- <string name="TouchScreen_Settings_TextSDcard">Enable SD card Log</string>\r
- <string name="power">Electricity</string>\r
- <string name="noPower">Unable to obtain power</string>\r
- <string name="nowState">current state</string>\r
- <string name="playrecord">Being played</string>\r
- <string name="recordFirst">No audio file, please record</string>\r
- <string name="palyfinish">Play end</string>\r
- <string name="distanceSensor">Distance sensing</string>\r
- <string name="noDistanceSensor">No distance sensing information</string>\r
- <string name="inDistance">Object approach</string>\r
- <string name="outDistance">Object departure</string>\r
- <string name="distanceTip">Tip: hand block / leave screen at the top of the test</string>\r
- <string name="largestSound">Max volume play</string>\r
- <string name="capture">Capture</string>\r
- <string name="cameraMotor">Camera motor</string>\r
- <string name="pullFar">Pull to the maximum</string>\r
- <string name="pullClose">Pull to the minimum</string>\r
- <string name="pullLoop">Cycle focus</string>\r
- <string name="pullStopLoop">Stop cycle focus</string>\r
- <string name="matvTest">TV signal test</string>\r
- <string name="press">Hold down</string>\r
- <string name="release">let go</string>\r
- <string name="lastOne">Last one</string>\r
- <string name="nextOne">Next one</string>\r
- <string name="singleTest">single test</string>\r
- <string name="read_imei">Display IMEI number</string>\r
- <string name="modify_imei_sim1">Modify SIM1</string>\r
- <string name="modify_imei_sim2">Modify SIM2</string>\r
- <string name="input_imei_title">Please enter a new IMEI number</string>\r
- <string name="autoTest">Automatic testing自动测试</string>\r
- <string name="pcbaTest">PCBA testing</string>\r
- <string name="sysVersion">edition</string>\r
- <string name="reStore">Restore factory settings</string>\r
- <string name="mediaTest">mediaTest</string>\r
- <string name="readAPN">APN query</string>\r
- <string name="sim_lock_settings">SIM card lock function setting</string>\r
- <string name="modify_imei">Modify IMEI number</string>\r
- <string name="testReport">Test report测试报告</string>\r
- <string name="beginTestGPS">Click start GPS test</string>\r
- <string name="beginTestTM">Click start FM test</string>\r
- <string name="beginTestCamera">Click to start the camera test</string>\r
- <string name="beginTestMtv">Click to start the TV signal test</string>\r
- <string name="beginTestCmotor">Click to start the camera motor test</string>\r
- <string name="beginTestScreenTouch">beginTestScreenTouch</string>\r
- <string name="beginTestMulitScreenTouch">beginTestMulitScreenTouch</string>\r
- <string name="testSucess">success</string>\r
- <string name="testFail">fail</string>\r
- <string name="testReprot">Test report</string>\r
- <string name="bbChip">BB Chip</string>\r
- <string name="msBoard">MS Board</string>\r
- <string name="modemVer">Modem Ver</string>\r
- <string name="buildTime">Build Time</string>\r
- <string name="buildNumber">Build Number</string>\r
- <string name="uBootVer">UBoot Ver</string>\r
- <string name="kernelVer">Kernel Ver</string>\r
- <string name="androidVer">Android Ver</string>\r
- <string name="swVer">SW Ver</string>\r
- <string name="verno">Custom Build Verno</string>\r
- <string name="deviceInfoDefault">unKnown</string>\r
- <string name="isLatestOne">Is the last one</string>\r
- <string name="isTopOne">Is the last one</string>\r
- <string name="reScan">Re scan</string>\r
- <string name="versionTest">Version test</string>\r
- <string name="flashLightTest">Flash test</string>\r
- <string name="openLight">open</string>\r
- <string name="closeLight">close</string>\r
- <string name="appsPath">Application path</string>\r
- <string name="defaultPath">mnt/sdcard/apps</string>\r
- <string name="installPath">Installation location</string>\r
- <string name="sdCard">SDCard</string>\r
- <string name="phone">mobile phone</string>\r
- <string name="startInstall">Start installation</string>\r
- <string name="selectInsLocation">Please select the installation location</string>\r
- <string name="noApps">No application can be installed</string>\r
- <string name="nowInstall">Being installed</string>\r
- <string name="submit">determine</string>\r
- <string name="unbound_cancel">cancel</string>\r
- <string name="installFinish">Installation end</string>\r
- <string name="installSoft">Installation software</string>\r
- <string name="cmmbTest">mobile TV</string>\r
- <string name="bCmmbTest">Click to enter the mobile TV test</string>\r
- <string name="setMac">Write WIFI/ Bluetooth MAC address</string>\r
- <string name="phoneDetail">Device Status</string>\r
- <string name="imei">IMEI</string>\r
-\r
- <string name="imei_invalid">invalid</string>\r
- <string name="imei_write_successful">Write IMEI number is successful, please restart the phone into effect!</string>\r
- <string name="imei_wirte_fail">Write IMEI number failed, please enter the correct IMEI number!</string>\r
- <string name="storage">storage</string>\r
- <string name="sdcard_storage">SD card storage available / total</string>\r
- <string name="phone_storage">Internal storage available / total</string>\r
- <string name="mac">MAC</string>\r
- <string name="bt">Bluetooth</string>\r
- <string name="wifi">WIFI</string>\r
- <string name="checkDir">SD card structure</string>\r
- <string name="installedSoft">Installed applications</string>\r
- <string name="cpsdcard2">Copy_sdcard2</string>\r
- <string name="cpsdcard2Hint">Click OK to copy all the files on the SDCard2 to SDCard, the same name of the file will be covered, to confirm the copy?</string>\r
- <string name="cpsdcard2ing">Being copied...</string>\r
- <string name="cpsdcard2finish">copy complete</string>\r
- <string name="agree">confirm</string>\r
- <string name="cancel">close</string>\r
- <string name="srcDir">Source directory</string>\r
- <string name="tarDir">Target directory</string>\r
- <string name="srcPath">/mnt/sdcard2</string>\r
- <string name="tarPath">/mnt/sdcard/miki</string>\r
- <string name="version_label">Version</string>\r
- <string name="sw_label">[SW VERSION]</string>\r
- <string name="hw_label">[HW VERSION]</string>\r
- <string name="btn_close">Close</string>\r
- <string name="sw_and_hw">Version</string>\r
- <string name="sn">SN</string>\r
- <string name="sn_invalid">Invalid</string>\r
- <string name="hw">Cosmote-ver1</string>\r
- <string name="sw">Cosmote_</string>\r
- <string name="vk_hw">Cosmote-ver1</string>\r
- <string name="vk_sw">Cosmote_</string>\r
- <string name="no_ota_file">There is no software version found.Please put the software version in the SDcard or internal storage.</string>\r
- <string name="update_from_sd">upgrade</string>\r
- <string name="update_make_sure_to_continue">This operation is not restored, are you sure?</string>\r
- <string name="update_confirm">Yes</string>\r
-\r
- <string name="update_make_sure_and_select_file">This operation is not restored, such as determining if you click on the button to select the upgrade file.</string>\r
- <string name="update_select_file">Select file</string>\r
- <string name="update_write_file_faild">fail to write to file</string>\r
- <string name="update_file_wrong">File type error, or can not find the upgrade file</string>\r
- <string name="update_make_sure_to_update">Do you need to upgrade the software?(Please put the software version in the SDcard or internal storage)</string>\r
- <string name="TestMedia">TestMedia</string>\r
- <string name="sdcardfile">SDcard</string>\r
- <string name="buildIn">buildIn</string>\r
- <string name="no_compass">No magnetic sensor found</string>\r
- <string name="test_tv_SMT">SMT test</string>\r
- <string name="test_tv_ZZ">Assembly test</string>\r
- <string name="test_tv_Retain">Comprehensive test</string>\r
- <string name="apn_mcc">MCC:</string>\r
- <string name="apn_mnc">MNC:</string>\r
- <string name="imei1">IMEI1</string>\r
- <string name="apn_search">Search</string>\r
- <string name="lcdTest">LCD</string>\r
- <string name="lcdTest_lsn">LCD</string>\r
- <string name="phoneTest">Telephone</string>\r
- <string name="bgLightTest">Background light test</string>\r
- <string name="bgLightStrong">Strong backlight</string>\r
- <string name="bgLightWeak">Weak backlight</string>\r
- <string name="imei_ok">determine</string>\r
- <string name="imei2">imei2</string>\r
- <string name="sorry_again">Sorry, your input is not correct. Please try again!</string>\r
- <string name="ramTest">Ram</string>\r
- <string name="romTest">Rom</string>\r
- <string name="ramromTest">Memory!</string>\r
- <string name="otgTest">OTG test</string>\r
- <string name="otg_disconnect">No OTG device connection</string>\r
- <string name="otg_connect">Detecting device</string>\r
- <string name="powerBatteryTest">Power charge test</string>\r
- <string name="power_charge_battery_state">Charging status</string>\r
- <string name="power_current_battery">Current power</string>\r
- <string name="power_battery">battery level</string>\r
- <string name="power_state">Power state</string>\r
- <string name="power_current_voltage">Current voltage</string>\r
- <string name="power_temperature">Power supply temperature</string>\r
- <string name="power_skill">Power technology</string>\r
- <string name="power_electric">Battery terminal current</string>\r
- <string name="power_time">Self starting time</string>\r
- <string name="battery_info_power_unplugged">Not plugged in</string>\r
- <string name="battery_info_power_ac">alternating current</string>\r
- <string name="battery_info_power_usb">USB</string>\r
- <string name="battery_info_power_wireless">wireless</string>\r
- <string name="battery_info_power_ac_usb">alternating current + USB</string>\r
- <string name="battery_info_power_unknown">未知</string>\r
- <string name="battery_info_health_unknown">unknown</string>\r
- <string name="battery_info_health_good">Good</string>\r
- <string name="battery_info_health_overheat">overheated</string>\r
- <string name="battery_info_health_dead">No electricity</string>\r
- <string name="battery_info_health_over_voltage">Over voltage</string>\r
- <string name="battery_info_health_unspecified_failure">unknown error</string>\r
- <string name="battery_info_health_cold">Low power</string>\r
- <string name="battery_info_temperature_units">° C</string>\r
- <string name="beginPhoneTest">Click to start the phone test</string>\r
- <string name="imeisnTest">IMEI/SN</string>\r
- <string name="key_ear">Earphone button</string>\r
- <string name="kernel_specified">**********</string>\r
- <string name="kernelVer1">Kernel Ver1</string>\r
- <string name="sim_lock">SIM card lock function</string>\r
- <string name="call_fun">Call test</string>\r
- <string name="begincall">Click Start test call</string>\r
-\r
- <string name="battery_status">Battery status : </string>\r
- <string name="battery_info_status_charging">Charging</string>\r
- <string name="battery_v">Battery voltage : </string>\r
- <string name="battery_temp">Battery temperature : </string>\r
- <string name="battery_info_status_charging_ac">(AC)</string>\r
- <string name="battery_info_status_charging_usb">(USB)</string>\r
- <string name="battery_info_status_discharging">Not charging</string>\r
- <string name="battery_info_status_not_charging">Not charging</string>\r
- <string name="battery_info_status_full">Full</string>\r
- <string name="battery_info_status_unknown">Unknown</string>\r
- <string name="battery_info_voltage_units">mV</string>\r
- <string name="battery_level">Battery level : </string>\r
- <string name="battery_health">Battery health : </string>\r
-\r
-\r
- <string name="battery_charging">Battery Charging Test</string>\r
- <string name="ins_gsensor">Please turn over the phone to complete the test!</string>\r
- <string name="ins_gsensor_toast">Pass!</string>\r
-\r
- <string name="bt_empty" translatable="false"></string>\r
-\r
- <string name="isZoom_y">PASS!</string>\r
-\r
- <string name="isZoom_n">FAIL!</string>\r
- <string name="rf_parameters">rf</string>\r
- <string name="simid_parameters">SimSerialNumber</string>\r
- <string name="vl_up">VLUp</string>\r
- <string name="vl_down">VLDown</string>\r
- <string name="sos">miaoSoS</string>\r
- <string name="ageing_mode">Ageing mode老化模式</string>\r
- <string name="ageing_speaker_test">Speaker test</string>\r
- <string name="ageing_lcd_test">LCD test</string>\r
- <string name="ageing_camera_test">Camera test</string>\r
- <string name="show_volum">To adjust the volume, please click here</string>\r
- <string name="brightness_setting">Dimming</string>\r
-\r
- <string name="start_test_new">Start Testing</string>\r
- <string name="benji">Factory test</string>\r
- <string name="resunme">Reset恢复出厂设置</string>\r
- <string name="ensure_power_off">确定关机?</string>\r
- <string name="tip2">Logo: pass (green), not pass (red), not measured (white)</string>\r
-\r
- <string name="clear_new">Clear the test data</string>\r
- <string name="version_new">Version and calibration</string>\r
- <string name="touch">Touch screen</string>\r
- <string name="light_new">Display screen</string>\r
- <string name="camera">Camera</string>\r
- <string name="speak">Speaker</string>\r
- <string name="mic_title">Microphone</string>\r
- <string name="sim_title">SIM card</string>\r
- <string name="dual_new">Phone</string>\r
- <string name="beiguang_new">Backlight</string>\r
- <string name="gps">GPS</string>\r
- <string name="tempAdjust">Temperature Adjust 温度校准</string>\r
- <string name="temperature">Temperature</string>\r
- <string name="no_temperature">No Temperature device found!</string>\r
- <string name="anti_check">AntiCheck</string>\r
-\r
- <string name="startRecord">Start recording</string>\r
- <string name="stopRecord">Stop recording</string>\r
- <string name="startPlay">Start playing</string>\r
- <string name="stopPlay">Stop play</string>\r
- <string name="engineerMode">Engineering model</string>\r
- <string name="more">More settings</string>\r
- <string name="unbound">Unbound</string>\r
- <string name="showProtocolInfo">ShowProtocolInfo</string>\r
- <string name="touchtest_toast">Please touch screen test</string>\r
- <string name="testing_lcd">Testing LCD</string>\r
- <string name="fail">FAIL</string>\r
- <string name="success">SUCCESS</string>\r
- <string name="network">network</string>\r
- <string name="signal">signal</string>\r
- <string name="operator">operator</string>\r
- <string name="pcbatest_gps_pass_rules">Pass Rule: one satellite SNR > 30 </string>\r
- <string name="ageing_gps_pass_rules">Pass Rule: 3 satellites SNR > 30</string>\r
- <string name="gps_pass_rules">Pass Rule: GPS Must Fixed</string>\r
- <string name="location_sucess">Location success </string>\r
- <string name="location_fail">Location fail</string>\r
- <string name="gps_searching">Getting Gps information...</string>\r
- <string name="total_memory">Total memory: </string>\r
- <string name="avail_memory">Avail memory: </string>\r
- <string name="testing_backlight">Testing backlight</string>\r
- <string name="lcd_result">LCD Test Results</string>\r
- <string name="lcd_result_tip">Please determine whether the screen display is normal</string>\r
- <string name="ring_test">Playing music, please listen...</string>\r
- <string name="lcdtest_toast">Click to display the brightness progress bar, double-click to exit</string>\r
- <string name="speak_toast">please speak</string>\r
- <string name="stop_record_toast">Stop recording</string>\r
- <string name="playing_toast">Start playing</string>\r
- <string name="stop_playing_toast">Stop play</string>\r
- <string name="clear_new_wanr">Are you sure to clear the test data </string>\r
- <string name="clear_new_yes">confirm </string>\r
- <string name="clear_new_no">return</string>\r
- <string name="cid">CID</string>\r
- <string name="sim_hasRead">Identified</string>\r
- <string name="screen_resolution">screenResolution</string>\r
- <string name="download_mode">download_mode</string>\r
-\r
- <string name="beginBackCameraTestCmotor">查看后拉摄像头</string>\r
- <string name="rf_yes">是</string>\r
- <string name="rf_no">否</string>\r
- <string name="screen_bright">背光</string>\r
- <string name="screen_bright_test">点击开始背光测试</string>\r
- <string name="voice_phone_test">点击进入网络电话测试</string>\r
- <string name="bluetootheTest">点击进入蓝牙测试</string>\r
- <string name="radarTest">点击进入雷达测试</string>\r
- <string name="radar">雷达测试</string>\r
- <string name="open_radar">打开雷达</string>\r
- <string name="close_radar">关闭雷达</string>\r
- <!-- <string name="fm_test">FM测试</string> -->\r
- <string name="open_fm">打开FM</string>\r
- <string name="close_fm">关闭FM</string>\r
- <string name="longitude">经度:</string>\r
- <string name="latitude">纬度: </string>\r
- <string name="brightness_test">屏幕亮度(请拖动滚动条):</string>\r
- <string name="acc_test">acc点火测试</string>\r
- <string name="brightLight">按键灯测试</string>\r
- <string name="fm_isRing">提示:将收音机的频率调至101.0MHZ,测试收音机是否收到音乐,收到则成功,反之则失败。</string>\r
- <string name="open_buttonLight">点击打开按键灯</string>\r
-\r
- <string name="beginLCDTM">点击开始LCD测试</string>\r
-\r
- <string name="result">测试结果</string>\r
- <!-- <string name="app_name">"测试程序"</string> -->\r
- <string name="action_settings">设置</string>\r
- <string name="urovo_test">"Testing tools"</string>\r
- <string name="model_number">设备型号:</string>\r
- <string name="manufacturer">制造商:</string>\r
- <string name="release_number">Android版本:</string>\r
- <string name="display_number">版本号:</string>\r
- <string name="test_category_title">测试选项</string>\r
- <string name="device_model_unknown">设备型号未知</string>\r
- <string name="device_info_default">未知</string>\r
- <string name="refresh_complete">刷新完成</string>\r
- <string name="test_next">下一个</string>\r
- <string name="test_last">上一个</string>\r
- <string name="yes1">Yes</string>\r
- <string name="no1">No</string>\r
- <string name="ok1">Ok</string>\r
- <string name="cancel1">Cancel</string>\r
- <string name="openall_title">全部功能模块</string>\r
- <string name="openall_summary">打开或关闭全部功能模块</string>\r
- <string name="show_alltest_title">显示所有测试选项</string>\r
- <string name="show_alltest_summary">主界面显示所有测试选项</string>\r
- <string name="setting_title">设置</string>\r
- <string name="moblie_test_title">整机测试</string>\r
- <string name="Engineer_mode_title">工程模式</string>\r
- <string name="map_copy_tools_title">地图拷贝工具</string>\r
- <!-- device info -->\r
- <string name="deviceinfo_title">设备信息</string>\r
- <!-- audio -->\r
- <string name="audio_default_music">播放默认音频文件</string>\r
- <string name="audio_sdcard_music">扬声器(喇叭)测试</string>\r
- <string name="audio_none_music">未找到音频文件</string>\r
- <string name="audio_palying_tital">正在播放</string>\r
- <string name="unknown_arter">未知</string>\r
- <!-- flashlight -->\r
- <string name="flashlight_title">闪光灯</string>\r
- <string name="flashlight_none">设备无闪光灯</string>\r
- <string name="flashlight_on">打开</string>\r
- <string name="flashlight_off">关闭</string>\r
- <!-- LED -->\r
- <string name="led_tite">LED灯测试</string>\r
- <string name="led_red_on">红色(ON)</string>\r
- <string name="led_red_off">红色(OFF)</string>\r
- <string name="led_red">红色</string>\r
- <string name="led_blue">蓝色</string>\r
- <string name="led_blue_on">蓝色(ON)</string>\r
- <string name="led_blue_off">蓝色(OFF)</string>\r
- <!-- tests -->\r
- <string name="app_name_android">androidtest</string>\r
- <string name="test_decive_info">设备</string>\r
- <string name="test_lcd">LCD</string>\r
- <string name="test_keypad">按键</string>\r
- <string name="test_led">LED</string>\r
- <string name="test_scanner">扫描头</string>\r
- <string name="test_motor">马达</string>\r
- <string name="test_audio">音频</string>\r
- <string name="test_card">磁条卡</string>\r
- <string name="test_wifi">WiFi</string>\r
- <string name="test_bluetooth">蓝牙</string>\r
- <string name="test_flashlight">闪光灯</string>\r
- <string name="test_printer">打印</string>\r
- <string name="test_gps">GPS</string>\r
- <string name="test_record">麦克风</string>\r
- <string name="test_3g">GSM</string>\r
- <string name="test_rfid">非接卡</string>\r
- <string name="test_icc">IC卡</string>\r
- <string name="test_jj">高频</string>\r
- <string name="test_cleanall">清除</string>\r
- <string name="test_openall">打开全部模块</string>\r
- <string name="test_closeall">关闭全部模块</string>\r
- <string name="test_specifytest">选择测试</string>\r
- <string name="test_alltest">全功能测试</string>\r
- <string name="test_agedtest">老化测试</string>\r
- <string name="test_noticelabel">请观察PCBA绿灯蓝灯</string>\r
-\r
- <!-- PICC -->\r
- <string name="picc_title">PICC测试</string>\r
- <string name="picc_hint">请将卡放置在识别区</string>\r
- <string name="picc_none">设备不支持FRID刷卡</string>\r
-\r
- <!-- NFC -->\r
- <string name="nfc_hint">请将卡放置在识别区</string>\r
- <string name="nfc_start">Start</string>\r
- <string name="nfc_stop">Stop</string>\r
- <string name="nfc_context_title">NFC Test </string>\r
- <string name="nfc_title">Test Control</string>\r
- <string name="nfctest_info">Please place the NFC test card on the top of the NFC detective area of the device,\r
- then press the start button to start testing, the device will output the warning tone after detected the\r
- NFC test card. Finally, Press the stop button will stop the test.</string>\r
- <string name="nfc_frequency">test gap time(ms):</string>\r
- <!-- motortest -->\r
- <string name="vibrator_title">震动</string>\r
- <string name="app_name_driver">drivertest</string>\r
- <string name="start">震动</string>\r
- <string name="loginstr">开</string>\r
- <string name="logoutstr">关</string>\r
- <string name="wifi1">WIFI</string>\r
- <string name="wcdma">3G</string>\r
- <string name="bluetoothcn">蓝牙</string>\r
- <string name="smt">扫描头</string>\r
- <string name="motor">马达(MS)</string>\r
- <!-- camera -->\r
- <string name="record_start">开始录制</string>\r
- <string name="record_complete">"录制成功,已保存"</string>\r
- <string name="takepic_complete">拍照成功</string>\r
- <string name="no_sdcard">未找到sd卡</string>\r
- <!-- keypad -->\r
- <string name="keypad_title">按键测试</string>\r
- <string name="keypad_s1">S1</string>\r
- <string name="keypad_s2">S2</string>\r
- <string name="keypad_scan">Scan</string>\r
- <string name="keypad_dpad_up">Up</string>\r
- <string name="keypad_dpad_down">Down</string>\r
- <string name="keypad_dpad_left">Left</string>\r
- <string name="keypad_dpad_right">Right</string>\r
- <string name="keypad_menu">Menu</string>\r
- <string name="keypad_esc">Esc</string>\r
- <string name="keypad_home">Home</string>\r
- <string name="key_0">0</string>\r
- <string name="key_1">1</string>\r
- <string name="key_2">2</string>\r
- <string name="key_3">3</string>\r
- <string name="key_4">4</string>\r
- <string name="key_5">5</string>\r
- <string name="key_6">6</string>\r
- <string name="key_7">7</string>\r
- <string name="key_8">8</string>\r
- <string name="key_9">9</string>\r
- <string name="key_point">.</string>\r
- <string name="keypad_sft">Sft</string>\r
- <string name="keypad_alt">Ctrl</string>\r
- <string name="keypad_aa">Aa</string>\r
- <string name="keypad_fn">Fn</string>\r
- <string name="keypad_ent">Ent</string>\r
- <string name="keypad_del">"Del"</string>\r
- <string name="keypad_space">"Space"</string>\r
- <string name="keypad_power">Power</string>\r
- <string name="keypad_asterisk">*</string>\r
- <string name="keypad_pound">#</string>\r
- <string name="keypad_volup">Volume + </string>\r
- <string name="keypad_voldn">Volume - </string>\r
- <string name="endaudio">完成</string>\r
- <string name="quit">退出</string>\r
- <!-- Bluetooth -->\r
- <string name="bluetooth_scan">扫描</string>\r
- <string name="bluetooth_bonded">已配对的设备</string>\r
- <string name="bltooth_descovering">正在搜索周围可用设备...</string>\r
- <string name="bluetooth_bonded_none">无已配对设备</string>\r
- <string name="bluetooth_connectable">周围可用设备</string>\r
- <string name="bluetooth_connectable_none">未检测到可用设备</string>\r
- <string name="bluetooth_disable">蓝牙功能未打开</string>\r
- <string name="bluetooth_title">蓝牙测试</string>\r
- <string name="bluetooth_scan_for_devices">"扫描查找设备"</string>\r
- <string name="btscan">手动搜索设备</string>\r
- <string name="bluetooth_scan_complete">搜索结束</string>\r
- <string name="bluetooth_notfound">蓝牙不可用</string>\r
- <!-- Wifi -->\r
- <string name="wifi_scan_complete">刷新完成</string>\r
- <string name="wifi_state_title">Wifi测试</string>\r
- <string name="wifi_state_connected">连接状态</string>\r
- <string name="wifi_networks">附近网络</string>\r
- <string name="wifi_connected_title">已连接</string>\r
- <string name="wifi_unconnected_title">未连接</string>\r
- <string name="wifi_scan_none">正在扫描周边wifi,请稍候...</string>\r
- <string name="wifi_refresh">刷新</string>\r
- <string name="wifi_state_disabling">正在关闭</string>\r
- <string name="wifi_state_disabled">WIFI功能未打开,正在开启...</string>\r
- <string name="wifi_state_enabling">正在打开</string>\r
- <string name="wifi_state_enabled">WIFI功能已打开</string>\r
- <string name="wifi_state_unknown">未知</string>\r
- <!-- ICC -->\r
- <string name="icc_title">IC卡测试</string>\r
- <string name="icc_hint">请插IC卡</string>\r
- <string name="icc_read">读卡</string>\r
- <!-- scanner -->\r
- <string name="scannertype_title">扫描头类型:</string>\r
- <string name="scan_set">设置扫描头类型:</string>\r
- <string name="scan_title">扫描结果</string>\r
- <string name="scan_result">扫描结果</string>\r
- <string name="set_scanner_model_complete">设置扫描头类型成功</string>\r
- <string name="scan_about_msg">This program is the sample application provided\r
- with project android-serialport-api. The project is free and open\r
- source.\n\nMore information and bug report\r
- on:\nhttp://code.google.com/p/android-serialport-api/\n\n- Cédric</string>\r
- <string name="scan_error_configuration">Please configure your serial port first.</string>\r
- <string name="scan_error_security">You do not have read/write permission to the serial port.</string>\r
- <string name="scan_error_unknown">The serial port can not be opened for an unknown reason.</string>\r
- <string name="scan_setup">setup</string>\r
- <string name="scan_loopback">loopback</string>\r
- <string name="scan_about">about</string>\r
- <string name="scan_quit">quit</string>\r
- <string name="scan_console">console</string>\r
- <string name="scan_openscan">打开扫描头</string>\r
- <string name="scan_closescan">关闭扫描头</string>\r
- <string name="scan_setscan">设置默认参数</string>\r
- <!-- 3G -->\r
- <string name="wcdmafresh">刷新</string>\r
- <string name="wcdmatext">3G测试</string>\r
- <string name="options">Advance options</string>\r
- <string name="options_save">Save</string>\r
- <string name="options_cancle">Cancel</string>\r
- <string name="output_dsc">After th barcode</string>\r
- <string name="checkbox1_str">Output as keyboard</string>\r
- <string name="checkbox2_str">Vibrate</string>\r
- <string name="checkbox3_str">Beep</string>\r
- <string name="checkbox4_str">Append "enter"</string>\r
- <!-- gps -->\r
- <string name="title_gps">GPS数据</string>\r
- <string name="gps_disable">GPS功能尚未打开</string>\r
- <string name="gps_longitude">经度:</string>\r
- <string name="gps_latitude">纬度:</string>\r
- <string name="gps_speed">速度:</string>\r
- <string name="gps_altitude">海拔:</string>\r
- <string name="gps_direction">方位:</string>\r
- <string name="gps_getloc_failed">"获取地理位置信息失败"</string>\r
- <!-- motor -->\r
- <string name="motor_vibrator_frequency">震动时间间隔(ms):</string>\r
- <string name="motor_vibrator_tm">震动持续时间(ms):</string>\r
- <string name="motor_bgvibrator_start">开始</string>\r
- <string name="motor_bgvibrator_stop">结束</string>\r
- <string name="motor_notfound">设备不支持震动</string>\r
- <!-- sensor -->\r
- <string name="sensor_options">设备支持感应器</string>\r
- <string name="sensor_gravity">重力感应器</string>\r
- <string name="sensor_accelerometer">加速度感应器</string>\r
- <string name="sensor_light">光线感应器</string>\r
- <string name="sensor_data_null">未能获取感应器数据</string>\r
- <!-- magnetic stripe card -->\r
- <string name="mag_result_title">刷卡数据统计</string>\r
- <string name="mag_hint">请刷磁条卡</string>\r
- <!-- Please brush magnetic stripe card -->\r
- <string name="count_total_title">刷卡次数:</string>\r
- <string name="count_track1_title">磁道1成功次数:</string>\r
- <string name="count_track2_title">磁道2成功次数:</string>\r
- <string name="count_track3_title">磁道3成功次数:</string>\r
- <string name="card_data">磁条卡信息</string>\r
- <string name="card_data_wrong">错误信息</string>\r
- <!-- print -->\r
- <string name="print_context">请输入需打印内容</string>\r
- <string name="printer_context_title">编辑打印内容</string>\r
- <string name="printer_title">打印</string>\r
- <string name="printer_temp">"打印机温度: "</string>\r
- <!-- Printers temperature: -->\r
- <string name="bt_print_pic">打印图片</string>\r
- <!-- print Pic -->\r
- <string name="bt_print_code">打印编码</string>\r
- <!-- print Code -->\r
- <string name="bt_print_text">打印文字</string>\r
- <!-- print Text -->\r
- <string name="print_hint">请输入打印内容</string>\r
- <!-- recorder -->\r
- <string name="none_file">未找到录音文件</string>\r
- <string name="none_recorded_file">尚未录音</string>\r
- <string name="recorder_menu_title">录音</string>\r
- <string name="recorder_files">录音文件</string>\r
-\r
- <!-- gsm -->\r
- <string name="gsm_title">GSM信息</string>\r
- <string name="gsm_refresh">刷新</string>\r
- <string name="gsm_info_none">未能获取GSM信息</string>\r
-\r
- <!-- battery -->\r
- <string name="title_power">电源状态</string>\r
- <string name="title_battery">电池状态</string>\r
- <string name="battery_info_status_label" msgid="8109155295509700309">"电池状态:"</string>\r
- <string name="battery_info_power_label" msgid="7465140230991349382">"是否已插电:"</string>\r
- <string name="battery_info_scale_label" msgid="3649763192389778437">"当前电池电量:"</string>\r
- <string name="battery_info_level_label" msgid="8706526709307788737">"上限电池电量:"</string>\r
- <string name="battery_info_health_label" msgid="6416051542741886958">"电池运行状况:"</string>\r
- <string name="battery_info_technology_label" msgid="788304533220748681">"电池技术:"</string>\r
- <string name="battery_info_voltage_label" msgid="8971764146757637863">"电池电压:"</string>\r
- <!-- <string name="battery_info_voltage_units" msgid="8658490792208288107">"mV"</string> -->\r
- <string name="battery_info_temperature_label" msgid="1968383098818648037">"电池温度:"</string>\r
- <!-- <string name="battery_info_temperature_units" msgid="9098950587249987550">"° C"</string> -->\r
- <string name="battery_info_uptime" msgid="5548545143573527992">"启动后的时间:"</string>\r
- <string name="battery_info_awake_battery" msgid="2557725975486185849">"使用电池电量的未休眠时间:"</string>\r
- <string name="battery_info_awake_plugged" msgid="176716874713478188">"充电时的唤醒时间:"</string>\r
- <string name="battery_info_screen_on" msgid="376277447175613889">"屏幕开启时间:"</string>\r
- <!--\r
- <string name="battery_info_status_unknown" msgid="196130600938058547">"未知"</string>\r
- <string name="battery_info_status_charging" msgid="1705179948350365604">"正在充电"</string>\r
- <string name="battery_info_status_charging_ac" msgid="5874340256342956252">"(交流电)"</string>\r
- <string name="battery_info_status_charging_usb" msgid="4059070156126770959">"(USB)"</string>\r
- <string name="battery_info_status_discharging" msgid="6222697503392774475">"正在耗电"</string>\r
- <string name="battery_info_status_not_charging" msgid="2820070506621483576">"未在充电"</string>\r
- <string name="battery_info_status_full" msgid="2824614753861462808">"电量充足"</string>\r
- <string name="battery_info_power_unplugged" msgid="5987246575519551081">"未插电"</string>\r
- <string name="battery_info_power_ac" msgid="6808516193001604634">"交流电"</string>\r
- <string name="battery_info_power_usb" msgid="8012931702516331797">"USB"</string>\r
- <string name="battery_info_power_ac_usb" msgid="6777734146838328688">"交流电 + USB"</string>\r
- <string name="battery_info_power_unknown" msgid="7344115502868899881">"未知"</string>\r
- <string name="battery_info_health_unknown" msgid="5664295556921944255">"未知"</string>\r
- <string name="battery_info_health_good" msgid="8070356565806711806">"正常"</string>\r
- <string name="battery_info_health_overheat" msgid="8442959549291368806">"过热"</string>\r
- <string name="battery_info_health_dead" msgid="1725917445762829059">"没电"</string>\r
- <string name="battery_info_health_over_voltage" msgid="2420269351664490121">"过电压"</string>\r
- <string name="battery_info_health_unspecified_failure" msgid="6347021103185471590">"未知错误"</string>\r
- <string name="battery_info_health_cold" msgid="3835692786176707318">"电量低"</string>\r
-\r
-\r
-\r
-\r
- -->\r
- <string name="battery_technology_unknwn">"未知"</string>\r
- <!-- <string name="light">"亮屏了"</string> -->\r
- <string name="black">"灭屏了"</string>\r
- <string name="slide"> "请滑动屏幕测试"</string>\r
- <string name="music_is_run"> "音乐正在播放"</string>\r
- <string name="sd_status"> "SD状态:已检测到SD卡"</string>\r
- <string name="sd_tatal"> "总容量:"</string>\r
- <string name="sd_left"> "剩余容量:" </string>\r
- <string name="sd_used"> "已用容量:" </string>\r
- <string name="sd_fail"> "SD状态:未检测到SD卡!" </string>\r
- <string name="set_tag"> "测试完成,将写入标志位" </string>\r
- <string name="sim_status"> "SIM状态:SIM 就绪" </string>\r
- <string name="sim_fail"> "SIM状态:无SIM或SIM卡损坏" </string>\r
- <string name="china_yidong"> "中国移动"</string>\r
- <string name="china_lintong"> "中国联通"</string>\r
- <string name="china_dianxin"> "中国电信" </string>\r
- <string name="sim_fail1"> "SIM卡过期" </string>\r
- <string name="gongcheng"> "工厂测试" </string>\r
- <string name="moshi"> "工程模式" </string>\r
- <string name="shintool"> "地图拷贝工具" </string>\r
- <string name="lanya"> "蓝牙测试" </string>\r
- <string name="lanya_open"> " 蓝牙设备已开启" </string>\r
- <string name="car_staut"> " 摄像头\n测试结果" </string>\r
- <string name="start_test"> "开始测试" </string>\r
- <string name="fm_test"> "FM发射器测试" </string>\r
- <string name="fm_status"> " FM状态:" </string>\r
- <string name="fm_tip"> " 提示:将收音机频率调至108.0MHZ,测试收音机是否收到音乐,收到则成功,反之则失败。" </string>\r
- <string name="light_test"> " 灭/亮屏测试" </string>\r
- <string name="light_tip"> " 提示:请按电源键,测试灭/亮屏和电源键,是否正常" </string>\r
- <string name="light_status"> " 状态:" </string>\r
- <string name="sd_test"> "SD卡测试" </string>\r
- <string name="sim_test"> " SIM卡测试" </string>\r
- <string name="sim_type"> "网络类型" </string>\r
- <string name="sim_strenth"> "信号强度:" </string>\r
- <string name="test1"> "PCBA自动测试" </string>\r
- <string name="test2"> "整机自动测试" </string>\r
- <string name="sd_title">"SD卡" </string>\r
- <string name="fm_title">"FM发射" </string>\r
- <string name="light_title">"灭/亮屏" </string>\r
- <string name="bt_r">"蓝牙," </string>\r
- <string name="touch_r">"触摸屏," </string>\r
- <string name="sim_r">"sim卡," </string>\r
- <string name="sd_r">"SD卡," </string>\r
- <string name="mic_r">"双MIC," </string>\r
- <string name="speak_r">"扬声器," </string>\r
- <string name="camera_r">"摄像头," </string>\r
- <string name="fm_r">"FM发射," </string>\r
- <string name="light_r">"灭/亮屏," </string>\r
- <string name="barry_r">"电池," </string>\r
- <string name="pass_r">"已通过的项目:" </string>\r
- <string name="fail_r">"未通过的项目:" </string>\r
- <string name="tag_r">"本机NV标志位(1代表通过,0代表未通过):" </string>\r
- <string name="diglog_r">"请按下图测试,点击任意处,取消该窗口,开始测试" </string>\r
- <string name="test_r">"测试报告" </string>\r
- <string name="close_r">"关闭" </string>\r
- <string name="none">"没有测试记录,完成一次PCBA测试,添加记录" </string>\r
- <string name="none1">"没有测试记录,完成一次整机自动测试,添加记录" </string>\r
- <string name="none2">"没有校准记录" </string>\r
- <string name="jiaju">"PCBA自动测试报告" </string>\r
- <string name="auto">"整机自动测试报告" </string>\r
- <string name="jiaju_time">"最近测试时间:" </string>\r
- <string name="tags">"标志位(按测试顺序):" </string>\r
- <string name="test_over">"测试完成,将写入标志位" </string>\r
- <string name="picturing">"正在拍照" </string>\r
- <string name="recording">"正在录像,请晃动机器测试" </string>\r
- <string name="pic_over">"拍照完成" </string>\r
- <string name="write_tag_over">" 已经写入标志位" </string>\r
- <string name="record1">"录像" </string>\r
- <string name="photo">"停止" </string>\r
- <string name="deviceInfo">"版本信息" </string>\r
- <string name="gsensor">"Gsensor测试" </string>\r
- <string name="sensor">请旋转手机或屏幕</string>\r
- <string name="read_data">读取数据</string>\r
- <string name="sensor_calibration_do_20">进行校准(误差20%)</string>\r
- <string name="sensor_calibration_do_40">进行校准(误差40%)</string>\r
- <string name="sensor_calibration_clear">清除校准数据</string>\r
- <string name="sensor_calibration_note">" 注意:在校准过程中,设备必须处于水平放置状态。"</string>\r
- <string name="sensor_calibration_intro">" 操作:点击“水平校准”按钮,系统会自动校准,并判断是否成功。点击“清除校准数据”按钮后,校准数据清零,需重新进行水平校准。"</string>\r
- <string name="sensor_calibration_current_data_hint">加速度传感器当前数据: </string>\r
- <string name="sensor_calibration_sensor_data_hint">加速度传感器校准数据: </string>\r
- <string name="sensor_calibration_gsensor">加速度传感器校准</string>\r
- <string name="record_agin">重新录音</string>\r
- <string name="bt_tip">请在附近打开蓝牙,观察是否搜索到该蓝牙</string>\r
- <string name="rf_result">"RF校准标志位: "</string>\r
- <string name="rf_gsensor">Rf,Gsensor校准报告</string>\r
- <string name="sensor_accelerometer1">Gsensor测试</string>\r
- <string name="sensor_accelerometer2">"Gsensor,"</string>\r
- <string name="sensor_tip">" 提示:请将机器屏幕分别朝前后左右4个方向,观察箭头变化,只有4个方向都测试通过,才会显示成功。"</string>\r
- <string name="north">向北</string>\r
- <string name="sourth">向南</string>\r
- <string name="weast">向西</string>\r
- <string name="east">向东</string>\r
- <string name="gsensor_data">Gsensor参数:</string>\r
- <string name="auto_tip">该台机器已经做过整机自动测试</string>\r
- <string name="user_tip">该台机器已经做过PCBA自动测试</string>\r
- <string name="mic_tip"> " 提示:请选择测试的Mic,然后对着选择的Mic吹气,右图指针转动则判断成功,否则失败。"</string>\r
- <string name="version_tip"> "显示版本及测试信息"</string>\r
- <string name="testresult_tip"> "测试结果:"</string>\r
- <string name="pass_test"> "通过"</string>\r
- <string name="fail_test"> "未通过"</string>\r
- <string name="gps_test"> "GPS测试"</string>\r
- <string name="gsensor_complete"> "Gensor校准"</string>\r
- <string name="gsensor_20"> "水平校准"</string>\r
- <string name="gsensor_zhengji"> "整机自动测试: "</string>\r
- <string name="gsensor_pcba"> "PCBA自动测试: "</string>\r
- <string name="lamp"> "三色灯 "</string>\r
- <string name="lamp_tile"> "三色灯测试 "</string>\r
- <string name="lamp_tip"> " 请观察指示灯颜色变化,如果看到红绿蓝三种颜色依次变化,则判断成功;反之,只看到一种、两种或灯不亮则失败。 "</string>\r
- <string name="mianmic"> "主Mic测试 "</string>\r
- <string name="othermic"> "副Mic测试 "</string>\r
- <string name="button_new"> "按键"</string>\r
- <string name="leida_new"> "雷达"</string>\r
- <string name="sigle_new"> "单项测试报告"</string>\r
- <string name="rf_new"> "Rf校准:"</string>\r
- <string name="imei_new"> "IMEI号:"</string>\r
- <string name="lcd_test_new"> "显示屏测试结果" </string>\r
- <string name="tf_test_new"> "双TF卡" </string>\r
- <string name="tf_Detect"> "已检测到" </string>\r
- <string name="tf_UnDetect"> "未检测到" </string>\r
- <string name="test_over_new"> "测试结束!" </string>\r
- <string name="lamp_new"> "按键灯" </string>\r
- <string name="key_result_tip">*提示:点击按键灯测试,观察电源键灯光是否亮起</string>\r
- <string name="tip1">提示:该界面可进行单项测试</string>\r
- <string name="mac_new">MAC Addr:</string>\r
- <string name="bt_tip_new">操作步骤:\n1.准备一台可拨打电话的手机和一台固定电话\n2.使用手机与后视镜蓝牙连接,然后向固话拨打电话,\n3.接通后,两边能正常通话,则通过.</string>\r
-\r
- <string name="open_dialer">正在打开通话界面,请稍后。。。</string>\r
- <string name="test_camera">Camera</string>\r
- <string name="test_sensor">Gravity sensor</string>\r
- <string name="test_battery">Battery</string>\r
- <string name="key_ai">AI键</string>\r
- <string name="test_keypad1">按键1</string>\r
- <string name="test_keypad2">按键2</string>\r
- <string name="ultraviolet">紫外线</string>\r
- <string name="currentTime">currentTime</string>\r
- <string name="workTime">workTime</string>\r
- <string name="wifi_mac_addaress">wifi mac addaress</string>\r
- <string name="bluethooth_mac_addaress">bluethooth mac addaress</string>\r
- <string name="barcode">barcode</string>\r
- <string name="flag_position">标志位检查</string>\r
- <string name="dsp">DSP</string>\r
- <string name="change_camera">change</string>\r
- <string name="isWeared">isWeared</string>\r
- <string name="heartrate">HeartRate</string>\r
- <string name="no_heartrate">No HeartRate device found!</string>\r
-\r
- <string name="hall">hall</string>\r
-\r
-\r
- <string name="gps_full_title">GPS Stat:</string>\r
- <string name="gps_star_count">Stars:</string>\r
- <string name="gps_dop">Dop:</string>\r
- <string name="gps_scan_time">Cost:</string>\r
- <string name="seconds">Seconds</string>\r
- <string name="meter">Meters</string>\r
- <string name="factory_temp_format_text">%1$.2f</string>\r
- <string name="power_off">shutdown</string>\r
-\r
-</resources>\r
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+ <string name="project" translatable="false">Kdragon_80_t11</string>
+ <string name="KEY_POWER" translatable="false">false</string>
+ <string name="KEY_VLUP" translatable="false">true</string>
+ <string name="KEY_VLDOWN" translatable="false">true</string>
+ <string name="KEY_SEARCH" translatable="false">false</string>
+ <string name="KEY_HOME" translatable="false">true</string>
+ <string name="KEY_MENU" translatable="false">true</string>
+ <string name="KEY_BACK" translatable="false">true</string>
+ <string name="KEY_CAMERA" translatable="false">false</string>
+ <string name="KEY_EARPHONE" translatable="false">false</string>
+ <string name="timer_format" formatted="false" translatable="false">%02d:%02d</string>
+ <string name="app_name">FactoryMode</string>
+ <string name="otaupdate">OTA Update</string>
+ <string name="light">Light_induction</string>
+ <string name="noLight">Could not get brightness value</string>
+ <string name="defaultlightness">Getting_brightness</string>
+ <string name="lightness">brightness</string>
+ <string name="lightTip">Tip: the phone is positive toward the light source is conducive to faster access to brightness</string>
+ <string name="magnetic">Magnetic_induction</string>
+ <string name="magneticX">Magnetic field x</string>
+ <string name="magneticY">Magnetic field Y</string>
+ <string name="magneticZ">Magnetic field Z</string>
+ <string name="gravity">Gravity induction</string>
+ <string name="gravityX">Gravity x</string>
+ <string name="gravityY">Gravity Y</string>
+ <string name="gravityZ">Gravity Z</string>
+ <string name="shakeTest">Vibration_test</string>
+ <string name="shakeClick">Click_shock</string>
+ <string name="noShake">Does not support the mobile phone vibration</string>
+ <string name="keysTest">Key test</string>
+ <string name="keyPower">Power</string>
+ <string name="keyVLDown">VLUp</string>
+ <string name="keyVLUP">VLDown</string>
+ <string name="keySearch">Search</string>
+ <string name="keyHome">Home</string>
+ <string name="keyMenu">Menu</string>
+ <string name="keyBack">Back</string>
+ <string name="keyCamera">Camera</string>
+ <string name="keyCall">Call</string>
+ <string name="keyEndCall">EndCall</string>
+ <string name="empty">--</string>
+ <string name="detectSim">Sim card detection</string>
+ <string name="detectSim1">Detection Sim1</string>
+ <string name="detectSim2">Detection Sim2</string>
+ <string name="sim1">Sim1</string>
+ <string name="sim2">Sim2</string>
+ <string name="cardTest">SDcardtest</string>
+ <string name="cardAvail">Insert SD card</string>
+ <string name="cardFreeSize">Available space</string>
+ <string name="cardUsedSize">used space</string>
+ <string name="cardTotalSize">SD card capacity</string>
+ <string name="card2TotalSize">SD2 card capacity</string>
+ <string name="checkSum">Checksum</string>
+ <string name="nandFlash">Cell phone memory</string>
+ <string name="manufacturerID">Manufacturer ID</string>
+ <string name="deviceID">device ID</string>
+ <string name="rwTestResult">Read and write test results</string>
+ <string name="signalTest">Signal test</string>
+ <string name="signalRsult">Signal test results</string>
+ <string name="signalTestError">Signal test failure</string>
+ <string name="emergencyCall">Call 112</string>
+ <string name="chinaMoveCall">Call 10086</string>
+ <string name="emergencyCallSuccess">Call an emergency call success</string>
+ <string name="emergencyCallFail">Call emergency failure</string>
+ <string name="headsetTest">Headset test</string>
+ <string name="headsetAvail">There is no headset</string>
+ <string name="startMusic">play</string>
+ <string name="headsetButton">According to the remote control button</string>
+ <string name="gpsTest">GPS location</string>
+ <string name="gpsLongitude">longitude</string>
+ <string name="gpsDimensions">latitude</string>
+ <string name="coldRestart">cold boot</string>
+ <string name="hotRestart">Hot start</string>
+ <string name="noPosition">No geographic information</string>
+ <string name="gpsTTFF">GPS TTFF</string>
+ <string name="gpslocation">Getting GPS location information...</string>
+ <string name="sec">sec</string>
+ <string name="fmTest">Screen brightness</string>
+ <string name="fmSetFreq">channel</string>
+ <string name="rssi">RSSI</string>
+ <string name="mhz">MHZ</string>
+ <string name="dbm">(dBm)</string>
+ <string name="testFreq0">Test Freq 0</string>
+ <string name="testFreq1">Test Freq 1</string>
+ <string name="testFreq2">Test Freq 2</string>
+ <string name="testFreq3">Test Freq 3</string>
+ <string name="bluetooth">Bluetooth test</string>
+ <string name="blState">Bluetooth status</string>
+ <string name="blOpen">Turn on Bluetooth</string>
+ <string name="blOpened">Bluetooth is turned on</string>
+ <string name="blNoSerport">The current phone does not support Bluetooth</string>
+ <string name="bldenied">Bluetooth has been banned</string>
+ <string name="blScan">Bluetooth scan</string>
+ <string name="blScaning">Scanning Bluetooth device</string>
+ <string name="wifitest">WIFI test</string>
+ <string name="wfState">WIFI state</string>
+ <string name="wfOpen">Start WIFI</string>
+ <string name="wfScan">WIFI scan</string>
+ <string name="wfScaning">Is sweeping the hot spots</string>
+ <string name="cameraTest">Camera test</string>
+ <string name="mainCamera">Main camera</string>
+ <string name="subCamera">Vice camera</string>
+ <string name="ringtone">Bell test</string>
+ <string name="ringStart">Click play</string>
+ <string name="receiverTest">Receiver test</string>
+ <string name="loopback">Microphone test</string>
+ <string name="mic1">Mobile phone microphone test</string>
+ <string name="mic2">Headphone microphone test</string>
+ <string name="receiverStart">Click play</string>
+ <string name="colon">:</string>
+ <string name="nothing">nothing</string>
+ <string name="ok">correct</string>
+ <string name="found">find</string>
+ <string name="tsb">Taiwan equipment</string>
+ <string name="returnBack">return</string>
+ <string name="getInfo">Getting information...</string>
+ <string name="noFoundDev">No devices found</string>
+ <string name="noMainC">Rear facing camera is not supported</string>
+ <string name="noSubC">Rear facing camera is not supported</string>
+ <string name="gpsOk">GPS module normal</string>
+ <string name="pleaseOpGps">Please open the GPS first!</string>
+ <string name="waitForpo">Wait for location information</string>
+ <string name="state">state</string>
+ <string name="have">yes</string>
+ <string name="yes">yes</string>
+ <string name="no">no</string>
+ <string name="_fail">Fail</string>
+ <string name="checkFail">Failure detection</string>
+ <string name="rwCheckSuccess">Reading and writing test success</string>
+ <string name="rwCheckFail">Reading and writing test success</string>
+ <string name="dailSuccess">Call success</string>
+ <string name="dailFail">Call failed</string>
+ <string name="grd">A hot spot</string>
+ <string name="foundNoHot">Did not search to the hot spots</string>
+ <string name="openWififail">WIFI startup failed</string>
+ <string name="scanBegin">Start scanning</string>
+ <string name="wifiOpening">Starting WIFI...</string>
+ <string name="wifiOpen">WIFI has been started</string>
+ <string name="noSuportWifi">Does not support WIFI</string>
+ <string name="pleaseInsertHS">Please insert the headset</string>
+ <string name="pleaseOffHS">Please unplug the headset</string>
+ <string name="record">sound recording</string>
+ <string name="recordStart">Is recording</string>
+ <string name="stop">stop it</string>
+ <string name="recordstop">Stop status</string>
+ <string name="play">play</string>
+ <string name="delete">delete</string>
+ <string name="recordFile">Recording file</string>
+ <string name="testTouchScreen">touch screen</string>
+ <string name="TouchScreen">TouchScreen</string>
+ <string name="TouchScreen_HandWriting">TouchScreen_HandWriting</string>
+ <string name="TouchScreen_Verification">TouchScreen_Verification</string>
+ <string name="TouchScreen_VerificationPoint">TouchScreen_VerificationPoint</string>
+ <string name="TouchScreen_VerificationLine">TouchScreen_VerificationLine</string>
+ <string name="TouchScreen_VerificationShaking">TouchScreen_VerificationShaking</string>
+ <string name="TouchScreen_MultiTouch">TouchScreen_MultiTouch</string>
+ <string name="TouchScreen_Settings_TextValue">The value</string>
+ <string name="TouchScreen_Settings_TextSpinner">Category</string>
+ <string name="TouchScreen_Settings_TextSet">Set</string>
+ <string name="TouchScreen_Settings">Settings</string>
+ <string name="TouchScreen_Settings_Value">0</string>
+ <string name="TouchScreen_Settings_sdcard">OFF</string>
+ <string name="TouchScreen_Settings_uart">OFF</string>
+ <string name="TouchScreen_Settings_TextUart">Enable Uart Log</string>
+ <string name="TouchScreen_Settings_TextSDcard">Enable SD card Log</string>
+ <string name="power">Electricity</string>
+ <string name="noPower">Unable to obtain power</string>
+ <string name="nowState">current state</string>
+ <string name="playrecord">Being played</string>
+ <string name="recordFirst">No audio file, please record</string>
+ <string name="palyfinish">Play end</string>
+ <string name="distanceSensor">Distance sensing</string>
+ <string name="noDistanceSensor">No distance sensing information</string>
+ <string name="inDistance">Object approach</string>
+ <string name="outDistance">Object departure</string>
+ <string name="distanceTip">Tip: hand block / leave screen at the top of the test</string>
+ <string name="largestSound">Max volume play</string>
+ <string name="capture">Capture</string>
+ <string name="cameraMotor">Camera motor</string>
+ <string name="pullFar">Pull to the maximum</string>
+ <string name="pullClose">Pull to the minimum</string>
+ <string name="pullLoop">Cycle focus</string>
+ <string name="pullStopLoop">Stop cycle focus</string>
+ <string name="matvTest">TV signal test</string>
+ <string name="press">Hold down</string>
+ <string name="release">let go</string>
+ <string name="lastOne">Last one</string>
+ <string name="nextOne">Next one</string>
+ <string name="singleTest">single test</string>
+ <string name="read_imei">Display IMEI number</string>
+ <string name="modify_imei_sim1">Modify SIM1</string>
+ <string name="modify_imei_sim2">Modify SIM2</string>
+ <string name="input_imei_title">Please enter a new IMEI number</string>
+ <string name="autoTest">Automatic testing自动测试</string>
+ <string name="pcbaTest">PCBA testing</string>
+ <string name="sysVersion">edition</string>
+ <string name="reStore">Restore factory settings</string>
+ <string name="mediaTest">mediaTest</string>
+ <string name="readAPN">APN query</string>
+ <string name="sim_lock_settings">SIM card lock function setting</string>
+ <string name="modify_imei">Modify IMEI number</string>
+ <string name="testReport">Test report测试报告</string>
+ <string name="beginTestGPS">Click start GPS test</string>
+ <string name="beginTestTM">Click start FM test</string>
+ <string name="beginTestCamera">Click to start the camera test</string>
+ <string name="beginTestMtv">Click to start the TV signal test</string>
+ <string name="beginTestCmotor">Click to start the camera motor test</string>
+ <string name="beginTestScreenTouch">beginTestScreenTouch</string>
+ <string name="beginTestMulitScreenTouch">beginTestMulitScreenTouch</string>
+ <string name="testSucess">success</string>
+ <string name="testFail">fail</string>
+ <string name="testReprot">Test report</string>
+ <string name="bbChip">BB Chip</string>
+ <string name="msBoard">MS Board</string>
+ <string name="modemVer">Modem Ver</string>
+ <string name="buildTime">Build Time</string>
+ <string name="buildNumber">Build Number</string>
+ <string name="uBootVer">UBoot Ver</string>
+ <string name="kernelVer">Kernel Ver</string>
+ <string name="androidVer">Android Ver</string>
+ <string name="swVer">SW Ver</string>
+ <string name="verno">Custom Build Verno</string>
+ <string name="deviceInfoDefault">unKnown</string>
+ <string name="isLatestOne">Is the last one</string>
+ <string name="isTopOne">Is the last one</string>
+ <string name="reScan">Re scan</string>
+ <string name="versionTest">Version test</string>
+ <string name="flashLightTest">Flash test</string>
+ <string name="openLight">open</string>
+ <string name="closeLight">close</string>
+ <string name="appsPath">Application path</string>
+ <string name="defaultPath">mnt/sdcard/apps</string>
+ <string name="installPath">Installation location</string>
+ <string name="sdCard">SDCard</string>
+ <string name="phone">mobile phone</string>
+ <string name="startInstall">Start installation</string>
+ <string name="selectInsLocation">Please select the installation location</string>
+ <string name="noApps">No application can be installed</string>
+ <string name="nowInstall">Being installed</string>
+ <string name="submit">determine</string>
+ <string name="unbound_cancel">cancel</string>
+ <string name="installFinish">Installation end</string>
+ <string name="installSoft">Installation software</string>
+ <string name="cmmbTest">mobile TV</string>
+ <string name="bCmmbTest">Click to enter the mobile TV test</string>
+ <string name="setMac">Write WIFI/ Bluetooth MAC address</string>
+ <string name="phoneDetail">Device Status</string>
+ <string name="imei">IMEI</string>
+
+ <string name="imei_invalid">invalid</string>
+ <string name="imei_write_successful">Write IMEI number is successful, please restart the phone into effect!</string>
+ <string name="imei_wirte_fail">Write IMEI number failed, please enter the correct IMEI number!</string>
+ <string name="storage">storage</string>
+ <string name="sdcard_storage">SD card storage available / total</string>
+ <string name="phone_storage">Internal storage available / total</string>
+ <string name="mac">MAC</string>
+ <string name="bt">Bluetooth</string>
+ <string name="wifi">WIFI</string>
+ <string name="checkDir">SD card structure</string>
+ <string name="installedSoft">Installed applications</string>
+ <string name="cpsdcard2">Copy_sdcard2</string>
+ <string name="cpsdcard2Hint">Click OK to copy all the files on the SDCard2 to SDCard, the same name of the file will be covered, to confirm the copy?</string>
+ <string name="cpsdcard2ing">Being copied...</string>
+ <string name="cpsdcard2finish">copy complete</string>
+ <string name="agree">confirm</string>
+ <string name="cancel">close</string>
+ <string name="srcDir">Source directory</string>
+ <string name="tarDir">Target directory</string>
+ <string name="srcPath">/mnt/sdcard2</string>
+ <string name="tarPath">/mnt/sdcard/miki</string>
+ <string name="version_label">Version</string>
+ <string name="sw_label">[SW VERSION]</string>
+ <string name="hw_label">[HW VERSION]</string>
+ <string name="btn_close">Close</string>
+ <string name="sw_and_hw">Version</string>
+ <string name="sn">SN</string>
+ <string name="sn_invalid">Invalid</string>
+ <string name="hw">Cosmote-ver1</string>
+ <string name="sw">Cosmote_</string>
+ <string name="vk_hw">Cosmote-ver1</string>
+ <string name="vk_sw">Cosmote_</string>
+ <string name="no_ota_file">There is no software version found.Please put the software version in the SDcard or internal storage.</string>
+ <string name="update_from_sd">upgrade</string>
+ <string name="update_make_sure_to_continue">This operation is not restored, are you sure?</string>
+ <string name="update_confirm">Yes</string>
+
+ <string name="update_make_sure_and_select_file">This operation is not restored, such as determining if you click on the button to select the upgrade file.</string>
+ <string name="update_select_file">Select file</string>
+ <string name="update_write_file_faild">fail to write to file</string>
+ <string name="update_file_wrong">File type error, or can not find the upgrade file</string>
+ <string name="update_make_sure_to_update">Do you need to upgrade the software?(Please put the software version in the SDcard or internal storage)</string>
+ <string name="TestMedia">TestMedia</string>
+ <string name="sdcardfile">SDcard</string>
+ <string name="buildIn">buildIn</string>
+ <string name="no_compass">No magnetic sensor found</string>
+ <string name="test_tv_SMT">SMT test</string>
+ <string name="test_tv_ZZ">Assembly test</string>
+ <string name="test_tv_Retain">Comprehensive test</string>
+ <string name="apn_mcc">MCC:</string>
+ <string name="apn_mnc">MNC:</string>
+ <string name="imei1">IMEI1</string>
+ <string name="apn_search">Search</string>
+ <string name="lcdTest">LCD</string>
+ <string name="lcdTest_lsn">LCD</string>
+ <string name="phoneTest">Telephone</string>
+ <string name="bgLightTest">Background light test</string>
+ <string name="bgLightStrong">Strong backlight</string>
+ <string name="bgLightWeak">Weak backlight</string>
+ <string name="imei_ok">determine</string>
+ <string name="imei2">imei2</string>
+ <string name="sorry_again">Sorry, your input is not correct. Please try again!</string>
+ <string name="ramTest">Ram</string>
+ <string name="romTest">Rom</string>
+ <string name="ramromTest">Memory!</string>
+ <string name="otgTest">OTG test</string>
+ <string name="otg_disconnect">No OTG device connection</string>
+ <string name="otg_connect">Detecting device</string>
+ <string name="powerBatteryTest">Power charge test</string>
+ <string name="power_charge_battery_state">Charging status</string>
+ <string name="power_current_battery">Current power</string>
+ <string name="power_battery">battery level</string>
+ <string name="power_state">Power state</string>
+ <string name="power_current_voltage">Current voltage</string>
+ <string name="power_temperature">Power supply temperature</string>
+ <string name="power_skill">Power technology</string>
+ <string name="power_electric">Battery terminal current</string>
+ <string name="power_time">Self starting time</string>
+ <string name="battery_info_power_unplugged">Not plugged in</string>
+ <string name="battery_info_power_ac">alternating current</string>
+ <string name="battery_info_power_usb">USB</string>
+ <string name="battery_info_power_wireless">wireless</string>
+ <string name="battery_info_power_ac_usb">alternating current + USB</string>
+ <string name="battery_info_power_unknown">未知</string>
+ <string name="battery_info_health_unknown">unknown</string>
+ <string name="battery_info_health_good">Good</string>
+ <string name="battery_info_health_overheat">overheated</string>
+ <string name="battery_info_health_dead">No electricity</string>
+ <string name="battery_info_health_over_voltage">Over voltage</string>
+ <string name="battery_info_health_unspecified_failure">unknown error</string>
+ <string name="battery_info_health_cold">Low power</string>
+ <string name="battery_info_temperature_units">° C</string>
+ <string name="beginPhoneTest">Click to start the phone test</string>
+ <string name="imeisnTest">IMEI/SN</string>
+ <string name="key_ear">Earphone button</string>
+ <string name="kernel_specified">**********</string>
+ <string name="kernelVer1">Kernel Ver1</string>
+ <string name="sim_lock">SIM card lock function</string>
+ <string name="call_fun">Call test</string>
+ <string name="begincall">Click Start test call</string>
+
+ <string name="battery_status">Battery status : </string>
+ <string name="battery_info_status_charging">Charging</string>
+ <string name="battery_v">Battery voltage : </string>
+ <string name="battery_temp">Battery temperature : </string>
+ <string name="battery_info_status_charging_ac">(AC)</string>
+ <string name="battery_info_status_charging_usb">(USB)</string>
+ <string name="battery_info_status_discharging">Not charging</string>
+ <string name="battery_info_status_not_charging">Not charging</string>
+ <string name="battery_info_status_full">Full</string>
+ <string name="battery_info_status_unknown">Unknown</string>
+ <string name="battery_info_voltage_units">mV</string>
+ <string name="battery_level">Battery level : </string>
+ <string name="battery_health">Battery health : </string>
+
+
+ <string name="battery_charging">Battery Charging Test</string>
+ <string name="ins_gsensor">Please turn over the phone to complete the test!</string>
+ <string name="ins_gsensor_toast">Pass!</string>
+
+ <string name="bt_empty" translatable="false"></string>
+
+ <string name="isZoom_y">PASS!</string>
+
+ <string name="isZoom_n">FAIL!</string>
+ <string name="rf_parameters">rf</string>
+ <string name="simid_parameters">SimSerialNumber</string>
+ <string name="vl_up">VLUp</string>
+ <string name="vl_down">VLDown</string>
+ <string name="sos">miaoSoS</string>
+ <string name="ageing_mode">Ageing mode老化模式</string>
+ <string name="ageing_speaker_test">Speaker test</string>
+ <string name="ageing_lcd_test">LCD test</string>
+ <string name="ageing_camera_test">Camera test</string>
+ <string name="show_volum">To adjust the volume, please click here</string>
+ <string name="brightness_setting">Dimming</string>
+
+ <string name="start_test_new">Start Testing</string>
+ <string name="benji">Factory test</string>
+ <string name="resunme">Reset恢复出厂设置</string>
+ <string name="ensure_power_off">PowerOff确定关机?</string>
+ <string name="tip2">Logo: pass (green), not pass (red), not measured (white)</string>
+
+ <string name="clear_new">Clear the test data</string>
+ <string name="version_new">Version and calibration</string>
+ <string name="touch">Touch screen</string>
+ <string name="light_new">Display screen</string>
+ <string name="camera">Camera</string>
+ <string name="speak">Speaker</string>
+ <string name="mic_title">Microphone</string>
+ <string name="sim_title">SIM card</string>
+ <string name="dual_new">Phone</string>
+ <string name="beiguang_new">Backlight</string>
+ <string name="gps">GPS</string>
+ <string name="tempAdjust">Temperature Adjust 温度校准</string>
+ <string name="temperature">Temperature</string>
+ <string name="no_temperature">No Temperature device found!</string>
+ <string name="anti_check">AntiCheck</string>
+
+ <string name="startRecord">Start recording</string>
+ <string name="stopRecord">Stop recording</string>
+ <string name="startPlay">Start playing</string>
+ <string name="stopPlay">Stop play</string>
+ <string name="engineerMode">Engineering model</string>
+ <string name="more">More settings</string>
+ <string name="unbound">Unbound</string>
+ <string name="showProtocolInfo">ShowProtocolInfo</string>
+ <string name="touchtest_toast">Please touch screen test</string>
+ <string name="testing_lcd">Testing LCD</string>
+ <string name="fail">FAIL</string>
+ <string name="success">SUCCESS</string>
+ <string name="network">network</string>
+ <string name="signal">signal</string>
+ <string name="operator">operator</string>
+ <string name="pcbatest_gps_pass_rules">Pass Rule: one satellite SNR > 30 </string>
+ <string name="ageing_gps_pass_rules">Pass Rule: 3 satellites SNR > 30</string>
+ <string name="gps_pass_rules">Pass Rule: GPS Must Fixed</string>
+ <string name="location_sucess">Location success </string>
+ <string name="location_fail">Location fail</string>
+ <string name="gps_searching">Getting Gps information...</string>
+ <string name="total_memory">Total memory: </string>
+ <string name="avail_memory">Avail memory: </string>
+ <string name="testing_backlight">Testing backlight</string>
+ <string name="lcd_result">LCD Test Results</string>
+ <string name="lcd_result_tip">Please determine whether the screen display is normal</string>
+ <string name="ring_test">Playing music, please listen...</string>
+ <string name="lcdtest_toast">Click to display the brightness progress bar, double-click to exit</string>
+ <string name="speak_toast">please speak</string>
+ <string name="stop_record_toast">Stop recording</string>
+ <string name="playing_toast">Start playing</string>
+ <string name="stop_playing_toast">Stop play</string>
+ <string name="clear_new_wanr">Are you sure to clear the test data </string>
+ <string name="clear_new_yes">confirm </string>
+ <string name="clear_new_no">return</string>
+ <string name="cid">CID</string>
+ <string name="sim_hasRead">Identified</string>
+ <string name="screen_resolution">screenResolution</string>
+ <string name="download_mode">download_mode</string>
+
+ <string name="beginBackCameraTestCmotor">查看后拉摄像头</string>
+ <string name="rf_yes">是</string>
+ <string name="rf_no">否</string>
+ <string name="screen_bright">背光</string>
+ <string name="screen_bright_test">点击开始背光测试</string>
+ <string name="voice_phone_test">点击进入网络电话测试</string>
+ <string name="bluetootheTest">点击进入蓝牙测试</string>
+ <string name="radarTest">点击进入雷达测试</string>
+ <string name="radar">雷达测试</string>
+ <string name="open_radar">打开雷达</string>
+ <string name="close_radar">关闭雷达</string>
+ <!-- <string name="fm_test">FM测试</string> -->
+ <string name="open_fm">打开FM</string>
+ <string name="close_fm">关闭FM</string>
+ <string name="longitude">经度:</string>
+ <string name="latitude">纬度: </string>
+ <string name="brightness_test">屏幕亮度(请拖动滚动条):</string>
+ <string name="acc_test">acc点火测试</string>
+ <string name="brightLight">按键灯测试</string>
+ <string name="fm_isRing">提示:将收音机的频率调至101.0MHZ,测试收音机是否收到音乐,收到则成功,反之则失败。</string>
+ <string name="open_buttonLight">点击打开按键灯</string>
+
+ <string name="beginLCDTM">点击开始LCD测试</string>
+
+ <string name="result">测试结果</string>
+ <!-- <string name="app_name">"测试程序"</string> -->
+ <string name="action_settings">设置</string>
+ <string name="urovo_test">"Testing tools"</string>
+ <string name="model_number">设备型号:</string>
+ <string name="manufacturer">制造商:</string>
+ <string name="release_number">Android版本:</string>
+ <string name="display_number">版本号:</string>
+ <string name="test_category_title">测试选项</string>
+ <string name="device_model_unknown">设备型号未知</string>
+ <string name="device_info_default">未知</string>
+ <string name="refresh_complete">刷新完成</string>
+ <string name="test_next">下一个</string>
+ <string name="test_last">上一个</string>
+ <string name="yes1">Yes</string>
+ <string name="no1">No</string>
+ <string name="ok1">Ok</string>
+ <string name="cancel1">Cancel</string>
+ <string name="openall_title">全部功能模块</string>
+ <string name="openall_summary">打开或关闭全部功能模块</string>
+ <string name="show_alltest_title">显示所有测试选项</string>
+ <string name="show_alltest_summary">主界面显示所有测试选项</string>
+ <string name="setting_title">设置</string>
+ <string name="moblie_test_title">整机测试</string>
+ <string name="Engineer_mode_title">工程模式</string>
+ <string name="map_copy_tools_title">地图拷贝工具</string>
+ <!-- device info -->
+ <string name="deviceinfo_title">设备信息</string>
+ <!-- audio -->
+ <string name="audio_default_music">播放默认音频文件</string>
+ <string name="audio_sdcard_music">扬声器(喇叭)测试</string>
+ <string name="audio_none_music">未找到音频文件</string>
+ <string name="audio_palying_tital">正在播放</string>
+ <string name="unknown_arter">未知</string>
+ <!-- flashlight -->
+ <string name="flashlight_title">闪光灯</string>
+ <string name="flashlight_none">设备无闪光灯</string>
+ <string name="flashlight_on">打开</string>
+ <string name="flashlight_off">关闭</string>
+ <!-- LED -->
+ <string name="led_tite">LED灯测试</string>
+ <string name="led_red_on">红色(ON)</string>
+ <string name="led_red_off">红色(OFF)</string>
+ <string name="led_red">红色</string>
+ <string name="led_blue">蓝色</string>
+ <string name="led_blue_on">蓝色(ON)</string>
+ <string name="led_blue_off">蓝色(OFF)</string>
+ <!-- tests -->
+ <string name="app_name_android">androidtest</string>
+ <string name="test_decive_info">设备</string>
+ <string name="test_lcd">LCD</string>
+ <string name="test_keypad">Key</string>
+ <string name="test_led">LED</string>
+ <string name="test_scanner">扫描头</string>
+ <string name="test_motor">马达</string>
+ <string name="test_audio">音频</string>
+ <string name="test_card">磁条卡</string>
+ <string name="test_wifi">WiFi</string>
+ <string name="test_bluetooth">蓝牙</string>
+ <string name="test_flashlight">闪光灯</string>
+ <string name="test_printer">打印</string>
+ <string name="test_gps">GPS</string>
+ <string name="test_record">麦克风</string>
+ <string name="test_3g">GSM</string>
+ <string name="test_rfid">非接卡</string>
+ <string name="test_icc">IC卡</string>
+ <string name="test_jj">高频</string>
+ <string name="test_cleanall">清除</string>
+ <string name="test_openall">打开全部模块</string>
+ <string name="test_closeall">关闭全部模块</string>
+ <string name="test_specifytest">选择测试</string>
+ <string name="test_alltest">全功能测试</string>
+ <string name="test_agedtest">老化测试</string>
+ <string name="test_noticelabel">请观察PCBA绿灯蓝灯</string>
+
+ <!-- PICC -->
+ <string name="picc_title">PICC测试</string>
+ <string name="picc_hint">请将卡放置在识别区</string>
+ <string name="picc_none">设备不支持FRID刷卡</string>
+
+ <!-- NFC -->
+ <string name="nfc_hint">请将卡放置在识别区</string>
+ <string name="nfc_start">Start</string>
+ <string name="nfc_stop">Stop</string>
+ <string name="nfc_context_title">NFC Test </string>
+ <string name="nfc_title">Test Control</string>
+ <string name="nfctest_info">Please place the NFC test card on the top of the NFC detective area of the device,
+ then press the start button to start testing, the device will output the warning tone after detected the
+ NFC test card. Finally, Press the stop button will stop the test.</string>
+ <string name="nfc_frequency">test gap time(ms):</string>
+ <!-- motortest -->
+ <string name="vibrator_title">震动</string>
+ <string name="app_name_driver">drivertest</string>
+ <string name="start">震动</string>
+ <string name="loginstr">开</string>
+ <string name="logoutstr">关</string>
+ <string name="wifi1">WIFI</string>
+ <string name="wcdma">3G</string>
+ <string name="bluetoothcn">蓝牙</string>
+ <string name="smt">扫描头</string>
+ <string name="motor">马达(MS)</string>
+ <!-- camera -->
+ <string name="record_start">开始录制</string>
+ <string name="record_complete">"录制成功,已保存"</string>
+ <string name="takepic_complete">拍照成功</string>
+ <string name="no_sdcard">未找到sd卡</string>
+ <!-- keypad -->
+ <string name="keypad_title">按键测试</string>
+ <string name="keypad_s1">S1</string>
+ <string name="keypad_s2">S2</string>
+ <string name="keypad_scan">Scan</string>
+ <string name="keypad_dpad_up">Up</string>
+ <string name="keypad_dpad_down">Down</string>
+ <string name="keypad_dpad_left">Left</string>
+ <string name="keypad_dpad_right">Right</string>
+ <string name="keypad_menu">Menu</string>
+ <string name="keypad_esc">Esc</string>
+ <string name="keypad_home">Home</string>
+ <string name="key_0">0</string>
+ <string name="key_1">1</string>
+ <string name="key_2">2</string>
+ <string name="key_3">3</string>
+ <string name="key_4">4</string>
+ <string name="key_5">5</string>
+ <string name="key_6">6</string>
+ <string name="key_7">7</string>
+ <string name="key_8">8</string>
+ <string name="key_9">9</string>
+ <string name="key_point">.</string>
+ <string name="keypad_sft">Sft</string>
+ <string name="keypad_alt">Ctrl</string>
+ <string name="keypad_aa">Aa</string>
+ <string name="keypad_fn">Fn</string>
+ <string name="keypad_ent">Ent</string>
+ <string name="keypad_del">"Del"</string>
+ <string name="keypad_space">"Space"</string>
+ <string name="keypad_power">Power</string>
+ <string name="keypad_asterisk">*</string>
+ <string name="keypad_pound">#</string>
+ <string name="keypad_volup">Volume + </string>
+ <string name="keypad_voldn">Volume - </string>
+ <string name="endaudio">完成</string>
+ <string name="quit">退出</string>
+ <!-- Bluetooth -->
+ <string name="bluetooth_scan">扫描</string>
+ <string name="bluetooth_bonded">已配对的设备</string>
+ <string name="bltooth_descovering">正在搜索周围可用设备...</string>
+ <string name="bluetooth_bonded_none">无已配对设备</string>
+ <string name="bluetooth_connectable">周围可用设备</string>
+ <string name="bluetooth_connectable_none">未检测到可用设备</string>
+ <string name="bluetooth_disable">蓝牙功能未打开</string>
+ <string name="bluetooth_title">蓝牙测试</string>
+ <string name="bluetooth_scan_for_devices">"扫描查找设备"</string>
+ <string name="btscan">手动搜索设备</string>
+ <string name="bluetooth_scan_complete">搜索结束</string>
+ <string name="bluetooth_notfound">蓝牙不可用</string>
+ <!-- Wifi -->
+ <string name="wifi_scan_complete">刷新完成</string>
+ <string name="wifi_state_title">Wifi测试</string>
+ <string name="wifi_state_connected">连接状态</string>
+ <string name="wifi_networks">附近网络</string>
+ <string name="wifi_connected_title">已连接</string>
+ <string name="wifi_unconnected_title">未连接</string>
+ <string name="wifi_scan_none">正在扫描周边wifi,请稍候...</string>
+ <string name="wifi_refresh">刷新</string>
+ <string name="wifi_state_disabling">正在关闭</string>
+ <string name="wifi_state_disabled">WIFI功能未打开,正在开启...</string>
+ <string name="wifi_state_enabling">正在打开</string>
+ <string name="wifi_state_enabled">WIFI功能已打开</string>
+ <string name="wifi_state_unknown">未知</string>
+ <!-- ICC -->
+ <string name="icc_title">IC卡测试</string>
+ <string name="icc_hint">请插IC卡</string>
+ <string name="icc_read">读卡</string>
+ <!-- scanner -->
+ <string name="scannertype_title">扫描头类型:</string>
+ <string name="scan_set">设置扫描头类型:</string>
+ <string name="scan_title">扫描结果</string>
+ <string name="scan_result">扫描结果</string>
+ <string name="set_scanner_model_complete">设置扫描头类型成功</string>
+ <string name="scan_about_msg">This program is the sample application provided
+ with project android-serialport-api. The project is free and open
+ source.\n\nMore information and bug report
+ on:\nhttp://code.google.com/p/android-serialport-api/\n\n- Cédric</string>
+ <string name="scan_error_configuration">Please configure your serial port first.</string>
+ <string name="scan_error_security">You do not have read/write permission to the serial port.</string>
+ <string name="scan_error_unknown">The serial port can not be opened for an unknown reason.</string>
+ <string name="scan_setup">setup</string>
+ <string name="scan_loopback">loopback</string>
+ <string name="scan_about">about</string>
+ <string name="scan_quit">quit</string>
+ <string name="scan_console">console</string>
+ <string name="scan_openscan">打开扫描头</string>
+ <string name="scan_closescan">关闭扫描头</string>
+ <string name="scan_setscan">设置默认参数</string>
+ <!-- 3G -->
+ <string name="wcdmafresh">刷新</string>
+ <string name="wcdmatext">3G测试</string>
+ <string name="options">Advance options</string>
+ <string name="options_save">Save</string>
+ <string name="options_cancle">Cancel</string>
+ <string name="output_dsc">After th barcode</string>
+ <string name="checkbox1_str">Output as keyboard</string>
+ <string name="checkbox2_str">Vibrate</string>
+ <string name="checkbox3_str">Beep</string>
+ <string name="checkbox4_str">Append "enter"</string>
+ <!-- gps -->
+ <string name="title_gps">GPS数据</string>
+ <string name="gps_disable">GPS功能尚未打开</string>
+ <string name="gps_longitude">经度:</string>
+ <string name="gps_latitude">纬度:</string>
+ <string name="gps_speed">速度:</string>
+ <string name="gps_altitude">海拔:</string>
+ <string name="gps_direction">方位:</string>
+ <string name="gps_getloc_failed">"获取地理位置信息失败"</string>
+ <!-- motor -->
+ <string name="motor_vibrator_frequency">震动时间间隔(ms):</string>
+ <string name="motor_vibrator_tm">震动持续时间(ms):</string>
+ <string name="motor_bgvibrator_start">开始</string>
+ <string name="motor_bgvibrator_stop">结束</string>
+ <string name="motor_notfound">设备不支持震动</string>
+ <!-- sensor -->
+ <string name="sensor_options">设备支持感应器</string>
+ <string name="sensor_gravity">重力感应器</string>
+ <string name="sensor_accelerometer">加速度感应器</string>
+ <string name="sensor_light">光线感应器</string>
+ <string name="sensor_data_null">未能获取感应器数据</string>
+ <!-- magnetic stripe card -->
+ <string name="mag_result_title">刷卡数据统计</string>
+ <string name="mag_hint">请刷磁条卡</string>
+ <!-- Please brush magnetic stripe card -->
+ <string name="count_total_title">刷卡次数:</string>
+ <string name="count_track1_title">磁道1成功次数:</string>
+ <string name="count_track2_title">磁道2成功次数:</string>
+ <string name="count_track3_title">磁道3成功次数:</string>
+ <string name="card_data">磁条卡信息</string>
+ <string name="card_data_wrong">错误信息</string>
+ <!-- print -->
+ <string name="print_context">请输入需打印内容</string>
+ <string name="printer_context_title">编辑打印内容</string>
+ <string name="printer_title">打印</string>
+ <string name="printer_temp">"打印机温度: "</string>
+ <!-- Printers temperature: -->
+ <string name="bt_print_pic">打印图片</string>
+ <!-- print Pic -->
+ <string name="bt_print_code">打印编码</string>
+ <!-- print Code -->
+ <string name="bt_print_text">打印文字</string>
+ <!-- print Text -->
+ <string name="print_hint">请输入打印内容</string>
+ <!-- recorder -->
+ <string name="none_file">未找到录音文件</string>
+ <string name="none_recorded_file">尚未录音</string>
+ <string name="recorder_menu_title">录音</string>
+ <string name="recorder_files">录音文件</string>
+
+ <!-- gsm -->
+ <string name="gsm_title">GSM信息</string>
+ <string name="gsm_refresh">刷新</string>
+ <string name="gsm_info_none">未能获取GSM信息</string>
+
+ <!-- battery -->
+ <string name="title_power">电源状态</string>
+ <string name="title_battery">电池状态</string>
+ <string name="battery_info_status_label" msgid="8109155295509700309">"电池状态:"</string>
+ <string name="battery_info_power_label" msgid="7465140230991349382">"是否已插电:"</string>
+ <string name="battery_info_scale_label" msgid="3649763192389778437">"当前电池电量:"</string>
+ <string name="battery_info_level_label" msgid="8706526709307788737">"上限电池电量:"</string>
+ <string name="battery_info_health_label" msgid="6416051542741886958">"电池运行状况:"</string>
+ <string name="battery_info_technology_label" msgid="788304533220748681">"电池技术:"</string>
+ <string name="battery_info_voltage_label" msgid="8971764146757637863">"电池电压:"</string>
+ <!-- <string name="battery_info_voltage_units" msgid="8658490792208288107">"mV"</string> -->
+ <string name="battery_info_temperature_label" msgid="1968383098818648037">"电池温度:"</string>
+ <!-- <string name="battery_info_temperature_units" msgid="9098950587249987550">"° C"</string> -->
+ <string name="battery_info_uptime" msgid="5548545143573527992">"启动后的时间:"</string>
+ <string name="battery_info_awake_battery" msgid="2557725975486185849">"使用电池电量的未休眠时间:"</string>
+ <string name="battery_info_awake_plugged" msgid="176716874713478188">"充电时的唤醒时间:"</string>
+ <string name="battery_info_screen_on" msgid="376277447175613889">"屏幕开启时间:"</string>
+ <!--
+ <string name="battery_info_status_unknown" msgid="196130600938058547">"未知"</string>
+ <string name="battery_info_status_charging" msgid="1705179948350365604">"正在充电"</string>
+ <string name="battery_info_status_charging_ac" msgid="5874340256342956252">"(交流电)"</string>
+ <string name="battery_info_status_charging_usb" msgid="4059070156126770959">"(USB)"</string>
+ <string name="battery_info_status_discharging" msgid="6222697503392774475">"正在耗电"</string>
+ <string name="battery_info_status_not_charging" msgid="2820070506621483576">"未在充电"</string>
+ <string name="battery_info_status_full" msgid="2824614753861462808">"电量充足"</string>
+ <string name="battery_info_power_unplugged" msgid="5987246575519551081">"未插电"</string>
+ <string name="battery_info_power_ac" msgid="6808516193001604634">"交流电"</string>
+ <string name="battery_info_power_usb" msgid="8012931702516331797">"USB"</string>
+ <string name="battery_info_power_ac_usb" msgid="6777734146838328688">"交流电 + USB"</string>
+ <string name="battery_info_power_unknown" msgid="7344115502868899881">"未知"</string>
+ <string name="battery_info_health_unknown" msgid="5664295556921944255">"未知"</string>
+ <string name="battery_info_health_good" msgid="8070356565806711806">"正常"</string>
+ <string name="battery_info_health_overheat" msgid="8442959549291368806">"过热"</string>
+ <string name="battery_info_health_dead" msgid="1725917445762829059">"没电"</string>
+ <string name="battery_info_health_over_voltage" msgid="2420269351664490121">"过电压"</string>
+ <string name="battery_info_health_unspecified_failure" msgid="6347021103185471590">"未知错误"</string>
+ <string name="battery_info_health_cold" msgid="3835692786176707318">"电量低"</string>
+
+
+
+
+ -->
+ <string name="battery_technology_unknwn">"未知"</string>
+ <!-- <string name="light">"亮屏了"</string> -->
+ <string name="black">"灭屏了"</string>
+ <string name="slide"> "请滑动屏幕测试"</string>
+ <string name="music_is_run"> "音乐正在播放"</string>
+ <string name="sd_status"> "SD状态:已检测到SD卡"</string>
+ <string name="sd_tatal"> "总容量:"</string>
+ <string name="sd_left"> "剩余容量:" </string>
+ <string name="sd_used"> "已用容量:" </string>
+ <string name="sd_fail"> "SD状态:未检测到SD卡!" </string>
+ <string name="set_tag"> "测试完成,将写入标志位" </string>
+ <string name="sim_status"> "SIM状态:SIM 就绪" </string>
+ <string name="sim_fail"> "SIM状态:无SIM或SIM卡损坏" </string>
+ <string name="china_yidong"> "中国移动"</string>
+ <string name="china_lintong"> "中国联通"</string>
+ <string name="china_dianxin"> "中国电信" </string>
+ <string name="sim_fail1"> "SIM卡过期" </string>
+ <string name="gongcheng"> "工厂测试" </string>
+ <string name="moshi"> "工程模式" </string>
+ <string name="shintool"> "地图拷贝工具" </string>
+ <string name="lanya"> "蓝牙测试" </string>
+ <string name="lanya_open"> " 蓝牙设备已开启" </string>
+ <string name="car_staut"> " 摄像头\n测试结果" </string>
+ <string name="start_test"> "开始测试" </string>
+ <string name="fm_test"> "FM发射器测试" </string>
+ <string name="fm_status"> " FM状态:" </string>
+ <string name="fm_tip"> " 提示:将收音机频率调至108.0MHZ,测试收音机是否收到音乐,收到则成功,反之则失败。" </string>
+ <string name="light_test"> " 灭/亮屏测试" </string>
+ <string name="light_tip"> " 提示:请按电源键,测试灭/亮屏和电源键,是否正常" </string>
+ <string name="light_status"> " 状态:" </string>
+ <string name="sd_test"> "SD卡测试" </string>
+ <string name="sim_test"> " SIM卡测试" </string>
+ <string name="sim_type"> "网络类型" </string>
+ <string name="sim_strenth"> "信号强度:" </string>
+ <string name="test1"> "PCBA自动测试" </string>
+ <string name="test2"> "整机自动测试" </string>
+ <string name="sd_title">"SD卡" </string>
+ <string name="fm_title">"FM发射" </string>
+ <string name="light_title">"灭/亮屏" </string>
+ <string name="bt_r">"蓝牙," </string>
+ <string name="touch_r">"触摸屏," </string>
+ <string name="sim_r">"sim卡," </string>
+ <string name="sd_r">"SD卡," </string>
+ <string name="mic_r">"双MIC," </string>
+ <string name="speak_r">"扬声器," </string>
+ <string name="camera_r">"摄像头," </string>
+ <string name="fm_r">"FM发射," </string>
+ <string name="light_r">"灭/亮屏," </string>
+ <string name="barry_r">"电池," </string>
+ <string name="pass_r">"已通过的项目:" </string>
+ <string name="fail_r">"未通过的项目:" </string>
+ <string name="tag_r">"本机NV标志位(1代表通过,0代表未通过):" </string>
+ <string name="diglog_r">"请按下图测试,点击任意处,取消该窗口,开始测试" </string>
+ <string name="test_r">"测试报告" </string>
+ <string name="close_r">"关闭" </string>
+ <string name="none">"没有测试记录,完成一次PCBA测试,添加记录" </string>
+ <string name="none1">"没有测试记录,完成一次整机自动测试,添加记录" </string>
+ <string name="none2">"没有校准记录" </string>
+ <string name="jiaju">"PCBA自动测试报告" </string>
+ <string name="auto">"整机自动测试报告" </string>
+ <string name="jiaju_time">"最近测试时间:" </string>
+ <string name="tags">"标志位(按测试顺序):" </string>
+ <string name="test_over">"测试完成,将写入标志位" </string>
+ <string name="picturing">"正在拍照" </string>
+ <string name="recording">"正在录像,请晃动机器测试" </string>
+ <string name="pic_over">"拍照完成" </string>
+ <string name="write_tag_over">" 已经写入标志位" </string>
+ <string name="record1">"录像" </string>
+ <string name="photo">"停止" </string>
+ <string name="deviceInfo">"版本信息" </string>
+ <string name="gsensor">"Gsensor测试" </string>
+ <string name="sensor">请旋转手机或屏幕</string>
+ <string name="read_data">读取数据</string>
+ <string name="sensor_calibration_do_20">进行校准(误差20%)</string>
+ <string name="sensor_calibration_do_40">进行校准(误差40%)</string>
+ <string name="sensor_calibration_clear">清除校准数据</string>
+ <string name="sensor_calibration_note">" 注意:在校准过程中,设备必须处于水平放置状态。"</string>
+ <string name="sensor_calibration_intro">" 操作:点击“水平校准”按钮,系统会自动校准,并判断是否成功。点击“清除校准数据”按钮后,校准数据清零,需重新进行水平校准。"</string>
+ <string name="sensor_calibration_current_data_hint">加速度传感器当前数据: </string>
+ <string name="sensor_calibration_sensor_data_hint">加速度传感器校准数据: </string>
+ <string name="sensor_calibration_gsensor">加速度传感器校准</string>
+ <string name="record_agin">重新录音</string>
+ <string name="bt_tip">请在附近打开蓝牙,观察是否搜索到该蓝牙</string>
+ <string name="rf_result">"RF校准标志位: "</string>
+ <string name="rf_gsensor">Rf,Gsensor校准报告</string>
+ <string name="sensor_accelerometer1">Gsensor测试</string>
+ <string name="sensor_accelerometer2">"Gsensor,"</string>
+ <string name="sensor_tip">" 提示:请将机器屏幕分别朝前后左右4个方向,观察箭头变化,只有4个方向都测试通过,才会显示成功。"</string>
+ <string name="north">向北</string>
+ <string name="sourth">向南</string>
+ <string name="weast">向西</string>
+ <string name="east">向东</string>
+ <string name="gsensor_data">Gsensor参数:</string>
+ <string name="auto_tip">该台机器已经做过整机自动测试</string>
+ <string name="user_tip">该台机器已经做过PCBA自动测试</string>
+ <string name="mic_tip"> " 提示:请选择测试的Mic,然后对着选择的Mic吹气,右图指针转动则判断成功,否则失败。"</string>
+ <string name="version_tip"> "显示版本及测试信息"</string>
+ <string name="testresult_tip"> "测试结果:"</string>
+ <string name="pass_test"> "通过"</string>
+ <string name="fail_test"> "未通过"</string>
+ <string name="gps_test"> "GPS测试"</string>
+ <string name="gsensor_complete"> "Gensor校准"</string>
+ <string name="gsensor_20"> "水平校准"</string>
+ <string name="gsensor_zhengji"> "整机自动测试: "</string>
+ <string name="gsensor_pcba"> "PCBA自动测试: "</string>
+ <string name="lamp"> "三色灯 "</string>
+ <string name="lamp_tile"> "三色灯测试 "</string>
+ <string name="lamp_tip"> " 请观察指示灯颜色变化,如果看到红绿蓝三种颜色依次变化,则判断成功;反之,只看到一种、两种或灯不亮则失败。 "</string>
+ <string name="mianmic"> "主Mic测试 "</string>
+ <string name="othermic"> "副Mic测试 "</string>
+ <string name="button_new"> "按键"</string>
+ <string name="leida_new"> "雷达"</string>
+ <string name="sigle_new"> "单项测试报告"</string>
+ <string name="rf_new"> "Rf校准:"</string>
+ <string name="imei_new"> "IMEI号:"</string>
+ <string name="lcd_test_new"> "显示屏测试结果" </string>
+ <string name="tf_test_new"> "双TF卡" </string>
+ <string name="tf_Detect"> "已检测到" </string>
+ <string name="tf_UnDetect"> "未检测到" </string>
+ <string name="test_over_new"> "测试结束!" </string>
+ <string name="lamp_new"> "按键灯" </string>
+ <string name="key_result_tip">*提示:点击按键灯测试,观察电源键灯光是否亮起</string>
+ <string name="tip1">提示:该界面可进行单项测试</string>
+ <string name="mac_new">MAC Addr:</string>
+ <string name="bt_tip_new">操作步骤:\n1.准备一台可拨打电话的手机和一台固定电话\n2.使用手机与后视镜蓝牙连接,然后向固话拨打电话,\n3.接通后,两边能正常通话,则通过.</string>
+
+ <string name="open_dialer">正在打开通话界面,请稍后。。。</string>
+ <string name="test_camera">Camera</string>
+ <string name="test_sensor">Gravity sensor</string>
+ <string name="test_battery">Battery</string>
+ <string name="key_ai">AIKey</string>
+ <string name="test_keypad1">Key1</string>
+ <string name="test_keypad2">Key2</string>
+ <string name="ultraviolet">紫外线</string>
+ <string name="currentTime">currentTime</string>
+ <string name="workTime">workTime</string>
+ <string name="wifi_mac_addaress">wifi mac addaress</string>
+ <string name="bluethooth_mac_addaress">bluethooth mac addaress</string>
+ <string name="barcode">barcode</string>
+ <string name="flag_position">标志位检查</string>
+ <string name="dsp">DSP</string>
+ <string name="change_camera">change</string>
+ <string name="isWeared">isWeared</string>
+ <string name="heartrate">HeartRate</string>
+ <string name="no_heartrate">No HeartRate device found!</string>
+
+ <string name="hall">hall</string>
+
+
+ <string name="gps_full_title">GPS Stat:</string>
+ <string name="gps_star_count">Stars:</string>
+ <string name="gps_dop">Dop:</string>
+ <string name="gps_scan_time">Cost:</string>
+ <string name="seconds">Seconds</string>
+ <string name="meter">Meters</string>
+ <string name="factory_temp_format_text">%1$.2f</string>
+ <string name="power_off">shutdown</string>
+
+</resources>
-#Thu Dec 03 17:53:23 CST 2020
-VERSION_CODE=56
+#Mon Dec 21 18:03:48 CST 2020
+VERSION_CODE=57