start-activity-by-securecode

来源:互联网 发布:p相片软件 编辑:程序博客网 时间:2024/05/16 12:16

1.

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.code"
    android:versionCode="1"
    android:versionName="1.0"
    android:sharedUserId="android.uid.system" >
    
    <uses-sdk
        android:minSdkVersion="19"
        android:targetSdkVersion="21" />


    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >  
           
        <activity 
            android:name="com.example.code.CCTMainActivity"
            android:label="Camera Current Test Program">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />              
                <!-- *#*#2287#*#* -->   
                <!--
                <data
                    android:host="2287"
                    android:scheme="android_secret_code" /> 
                 -->

            </intent-filter>       
        </activity>  
        
        <receiver android:name="CCTPReceiver">    
            <intent-filter>  
                <action android:name="android.provider.Telephony.SECRET_CODE"/>    
                <!-- *#*#2287#*#* -->    
                <data
                    android:host="2287"
                    android:scheme="android_secret_code" />   
            </intent-filter>    
        </receiver>  

          
    </application>
</manifest>


2.

CCTPReceiver.java

package com.example.code;


import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;


public class CCTPReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Log.e("GCCTPR","CCTPReceiver:onReceive()");
if (intent.getAction().equals("android.provider.Telephony.SECRET_CODE")) { 
Log.e("GCCTPR","CCTPReceiver:onReceive():SECRET_CODE in");
           Intent i = new Intent(Intent.ACTION_MAIN);  
           i.setClass(context, CCTMainActivity.class);  
           i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
           context.startActivity(i);  
       }  

}
}






3.

CCTMainActivity.java

package com.example.code;


import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RelativeLayout;
import android.widget.TextView;


import android.os.SystemProperties;


public class CCTMainActivity extends Activity {
//RadioGroup
private RadioGroup MainAfRadioGroup = null;
private RadioGroup MainFpsZsdPreRadioGroup = null;
private RadioGroup MainFpsSlimVidRadioGroup = null;
private RadioGroup MainFpsHsVidRadioGroup = null;
//Sub
private RadioGroup SubAfRadioGroup = null;
private RadioGroup SubFpsZsdPreRadioGroup = null;
private RadioGroup SubFpsSlimVidRadioGroup = null;
private RadioGroup SubFpsHsVidRadioGroup = null;

//RadioButton
private RadioButton MainAfMinRadioButton = null;
private RadioButton MainAfMaxRadioButton = null;
private RadioButton MainFpsZsdPreMinRadioButton = null;
private RadioButton MainFpsZsdPreMaxRadioButton = null;
private RadioButton MainFpsSlimVidMinRadioButton = null;
private RadioButton MainFpsSlimVidMaxRadioButton = null;
private RadioButton MainFpsHsVidMinRadioButton = null;
private RadioButton MainFpsHsVidMaxRadioButton = null;
//Sub
private RadioButton SubAfMinRadioButton = null;
private RadioButton SubAfMaxRadioButton = null;
private RadioButton SubFpsZsdPreMinRadioButton = null;
private RadioButton SubFpsZsdPreMaxRadioButton = null;
private RadioButton SubFpsSlimVidMinRadioButton = null;
private RadioButton SubFpsSlimVidMaxRadioButton = null;
private RadioButton SubFpsHsVidMinRadioButton = null;
private RadioButton SubFpsHsVidMaxRadioButton = null;

//Prop
private String MainAfMinProp = null;
private String MainAfMaxProp = null;
private String MainFpsZsdPreMinProp = null;
private String MainFpsZsdPreMaxProp = null;
private String MainFpsSlimVidMinProp = null;
private String MainFpsSlimVidMaxProp = null;
private String MainFpsHsVidMinProp = null;
private String MainFpsHsVidMaxProp = null;
//Sub
private String SubAfMinProp = null;
private String SubAfMaxProp = null;
private String SubFpsZsdPreMinProp = null;
private String SubFpsZsdPreMaxProp = null;
private String SubFpsSlimVidMinProp = null;
private String SubFpsSlimVidMaxProp = null;
private String SubFpsHsVidMinProp = null;
private String SubFpsHsVidMaxProp = null;

//Value
private String MainAfValue = null;
private String MainFpsZsdPreValue = null;
private String MainFpsSlimVidValue = null;
private String MainFpsHsVidValue = null;
//Sub
private String SubAfValue = null;
private String SubFpsZsdPreValue = null;
private String SubFpsSlimVidValue = null;
private String SubFpsHsVidValue = null;

private TextView CCTPStatusTextView = null;
private Button StartCCTPButton = null;
private static Boolean isStartButtonClicked = false; 

    public void getViewById() {
//Get IDs
//Radio Group
MainAfRadioGroup = (RadioGroup)findViewById(R.id.MainAfRadioGroupId);
MainFpsZsdPreRadioGroup = (RadioGroup)findViewById(R.id.MainFpsZsdPreRadioGroupId);
MainFpsSlimVidRadioGroup = (RadioGroup)findViewById(R.id.MainFpsSlimVidRadioGroupId);
MainFpsHsVidRadioGroup = (RadioGroup)findViewById(R.id.MainFpsHsVidRadioGroupId);
//Sub
SubAfRadioGroup = (RadioGroup)findViewById(R.id.SubAfRadioGroupId);
SubFpsZsdPreRadioGroup = (RadioGroup)findViewById(R.id.SubFpsZsdPreRadioGroupId);
SubFpsSlimVidRadioGroup = (RadioGroup)findViewById(R.id.SubFpsSlimVidRadioGroupId);
SubFpsHsVidRadioGroup = (RadioGroup)findViewById(R.id.SubFpsHsVidRadioGroupId);

//Radio Button
MainAfMinRadioButton = (RadioButton)findViewById(R.id.MainAfInfinityRadioButtonId);
MainAfMaxRadioButton = (RadioButton)findViewById(R.id.MainAfMacroRadioButtonId);
MainFpsZsdPreMinRadioButton = (RadioButton)findViewById(R.id.MainFpsZsdPreMinRadioButtonId);
MainFpsZsdPreMaxRadioButton = (RadioButton)findViewById(R.id.MainFpsZsdPreMaxRadioButtonId);
MainFpsSlimVidMinRadioButton = (RadioButton)findViewById(R.id.MainFpsSlimVidMinRadioButtonId);
MainFpsSlimVidMaxRadioButton = (RadioButton)findViewById(R.id.MainFpsSlimVidMaxRadioButtonId);
MainFpsHsVidMinRadioButton = (RadioButton)findViewById(R.id.MainFpsHsVidMinRadioButtonId);
MainFpsHsVidMaxRadioButton = (RadioButton)findViewById(R.id.MainFpsHsVidMaxRadioButtonId);
//Sub
SubAfMinRadioButton = (RadioButton)findViewById(R.id.SubAfInfinityRadioButtonId);
SubAfMaxRadioButton = (RadioButton)findViewById(R.id.SubAfMacroRadioButtonId);
SubFpsZsdPreMinRadioButton = (RadioButton)findViewById(R.id.SubFpsZsdPreMinRadioButtonId);
SubFpsZsdPreMaxRadioButton = (RadioButton)findViewById(R.id.SubFpsZsdPreMaxRadioButtonId);
SubFpsSlimVidMinRadioButton = (RadioButton)findViewById(R.id.SubFpsSlimVidMinRadioButtonId);
SubFpsSlimVidMaxRadioButton = (RadioButton)findViewById(R.id.SubFpsSlimVidMaxRadioButtonId);
SubFpsHsVidMinRadioButton = (RadioButton)findViewById(R.id.SubFpsHsVidMinRadioButtonId);
SubFpsHsVidMaxRadioButton = (RadioButton)findViewById(R.id.SubFpsHsVidMaxRadioButtonId);
//
StartCCTPButton = (Button)findViewById(R.id.StartCCTPButtonId);
CCTPStatusTextView = (TextView)findViewById(R.id.CCTPStatusTextViewId);
    }

    public void bindButtonListener() {
    //Bind Listers
    StartCCTPButton.setOnClickListener(new StartCCTPButtonListener());
    }
    //
    public void enableMainAfRadioGroup(boolean enable) {
    for (int i = 0; i < MainAfRadioGroup.getChildCount(); i++) {
    MainAfRadioGroup.getChildAt(i).setEnabled(enable);
    }
    } 
    
    public void enableMainFpsZsdPreRadioGroup(boolean enable) {
    for (int i = 0; i < MainFpsZsdPreRadioGroup.getChildCount(); i++) {
    MainFpsZsdPreRadioGroup.getChildAt(i).setEnabled(enable);
    }
    } 
    
    public void enableMainFpsSlimVidRadioGroup(boolean enable) {
    for (int i = 0; i < MainFpsSlimVidRadioGroup.getChildCount(); i++) {
    MainFpsSlimVidRadioGroup.getChildAt(i).setEnabled(enable);
    }
    } 
    
    public void enableMainFpsHsVidRadioGroup(boolean enable) {
    for (int i = 0; i < MainFpsHsVidRadioGroup.getChildCount(); i++) {
    MainFpsHsVidRadioGroup.getChildAt(i).setEnabled(enable);
    }
    } 
    //Sub
    public void enableSubAfRadioGroup(boolean enable) {
    for (int i = 0; i < SubAfRadioGroup.getChildCount(); i++) {
    SubAfRadioGroup.getChildAt(i).setEnabled(enable);
    }
    } 
    
    public void enableSubFpsZsdPreRadioGroup(boolean enable) {
    for (int i = 0; i < SubFpsZsdPreRadioGroup.getChildCount(); i++) {
    SubFpsZsdPreRadioGroup.getChildAt(i).setEnabled(enable);
    }
    } 
    
    public void enableSubFpsSlimVidRadioGroup(boolean enable) {
    for (int i = 0; i < SubFpsSlimVidRadioGroup.getChildCount(); i++) {
    SubFpsSlimVidRadioGroup.getChildAt(i).setEnabled(enable);
    }
    }
    
    public void enableSubFpsHsVidRadioGroup(boolean enable) {
    for (int i = 0; i < SubFpsHsVidRadioGroup.getChildCount(); i++) {
    SubFpsHsVidRadioGroup.getChildAt(i).setEnabled(enable);
    }
    } 


    public void enableAllRadioGroup(boolean enable) {
    enableMainAfRadioGroup(enable);
    enableMainFpsZsdPreRadioGroup(enable);
    enableMainFpsSlimVidRadioGroup(enable);
    enableMainFpsHsVidRadioGroup(enable);
    //Sub
    enableSubAfRadioGroup(enable);
    enableSubFpsZsdPreRadioGroup(enable);
    enableSubFpsSlimVidRadioGroup(enable);
    enableSubFpsHsVidRadioGroup(enable);
    }
    //
    public void displaySupportedDataOnRadio() {
    MainAfMinRadioButton.setText("MinMa");
MainAfMaxRadioButton.setText("MaxMa");
MainFpsZsdPreMinRadioButton.setText(MainFpsZsdPreMinProp);
MainFpsZsdPreMaxRadioButton.setText(MainFpsZsdPreMaxProp);
MainFpsSlimVidMinRadioButton.setText(MainFpsSlimVidMinProp);
MainFpsSlimVidMaxRadioButton.setText(MainFpsSlimVidMaxProp);
MainFpsHsVidMinRadioButton.setText(MainFpsHsVidMinProp);
MainFpsHsVidMaxRadioButton.setText(MainFpsHsVidMaxProp);
//Sub
    SubAfMinRadioButton.setText("MinMa");
SubAfMaxRadioButton.setText("MaxMa");
SubFpsZsdPreMinRadioButton.setText(SubFpsZsdPreMinProp);
SubFpsZsdPreMaxRadioButton.setText(SubFpsZsdPreMaxProp);
SubFpsSlimVidMinRadioButton.setText(SubFpsSlimVidMinProp);
SubFpsSlimVidMaxRadioButton.setText(SubFpsSlimVidMaxProp);
SubFpsHsVidMinRadioButton.setText(SubFpsHsVidMinProp);
SubFpsHsVidMaxRadioButton.setText(SubFpsHsVidMaxProp);
    }
    //
    public void checkDeviceValid() {
    if (MainAfMinProp.equals("0") && MainAfMaxProp.equals("0")) {
    enableMainAfRadioGroup(false);
    }
   
    if (MainFpsZsdPreMinProp.equals("0") && MainFpsZsdPreMaxProp.equals("0")) {
    enableMainFpsZsdPreRadioGroup(false);
    }
   
    if (MainFpsSlimVidMinProp.equals("0") && MainFpsSlimVidMaxProp.equals("0")) {
    enableMainFpsSlimVidRadioGroup(false);
    }
   
    if (MainFpsHsVidMinProp.equals("0") && MainFpsHsVidMaxProp.equals("0")) {
    enableMainFpsHsVidRadioGroup(false);
    }
    //Sub
    if (SubAfMinProp.equals("0") && SubAfMaxProp.equals("0")) {
    enableSubAfRadioGroup(false);
    }
   
    if (SubFpsZsdPreMinProp.equals("0") && SubFpsZsdPreMaxProp.equals("0")) {
    enableSubFpsZsdPreRadioGroup(false);
    }
   
    if (SubFpsSlimVidMinProp.equals("0") && SubFpsSlimVidMaxProp.equals("0")) {
    enableSubFpsSlimVidRadioGroup(false);
    }
   
    if (SubFpsHsVidMinProp.equals("0") && SubFpsHsVidMaxProp.equals("0")) {
    enableSubFpsHsVidRadioGroup(false);
    }
    }
    //
    public boolean getSupportedPropFromSys() {
    //try...catch...
    MainAfMinProp = SystemProperties.get("debug.af.m.max","nodata");
    MainAfMaxProp = SystemProperties.get("debug.af.m.min","nodata");
    Log.e("GCCTP","getSupportedPropFromSys: MainAfMinProp:"+MainAfMinProp+" MainAfMaxProp:"+MainAfMaxProp);      
    MainFpsZsdPreMinProp = SystemProperties.get("debug.fps.m.min.pre","nodata");
    MainFpsZsdPreMaxProp = SystemProperties.get("debug.fps.m.max.pre","nodata");
    Log.e("GCCT","getSupportedPropFromSys: MainFpsZsdPreMinProp:"+MainFpsZsdPreMinProp+" MainFpsZsdPreMaxProp:"+MainFpsZsdPreMaxProp);
    MainFpsSlimVidMinProp = SystemProperties.get("debug.fps.m.min.slim","nodata");
    MainFpsSlimVidMaxProp = SystemProperties.get("debug.fps.m.max.slim","nodata");
    Log.e("GCCT","getSupportedPropFromSys: MainFpsSlimVidMinProp:"+MainFpsSlimVidMinProp+" MainFpsSlimVidMaxProp:"+MainFpsSlimVidMaxProp);  
    MainFpsHsVidMinProp = SystemProperties.get("debug.fps.m.min.hs","nodata");
    MainFpsHsVidMaxProp = SystemProperties.get("debug.fps.m.max.hs","nodata");
    Log.e("GCCT","getSupportedPropFromSys: MainFpsHsVidMinProp:"+MainFpsHsVidMinProp+" MainFpsHsVidMaxProp:"+MainFpsHsVidMaxProp);
    //Sub Camera
    SubAfMinProp = SystemProperties.get("debug.af.s.max","nodata");
    SubAfMaxProp = SystemProperties.get("debug.af.s.min","nodata");
    Log.e("GCCTP","getSupportedPropFromSys: SubAfMinProp:"+SubAfMinProp+" SubAfMaxProp:"+SubAfMaxProp);
    SubFpsZsdPreMinProp = SystemProperties.get("debug.fps.s.min.pre","nodata");
    SubFpsZsdPreMaxProp = SystemProperties.get("debug.fps.s.max.pre","nodata");
    Log.e("GCCT","getSupportedPropFromSys: SubFpsZsdPreMinProp:"+SubFpsZsdPreMinProp+" SubFpsZsdPreMaxProp:"+SubFpsZsdPreMaxProp);        
    SubFpsSlimVidMinProp = SystemProperties.get("debug.fps.s.min.slim","nodata");
    SubFpsSlimVidMaxProp = SystemProperties.get("debug.fps.s.max.slim","nodata");
    Log.e("GCCT","getSupportedPropFromSys: SubFpsSlimVidMinProp:"+SubFpsSlimVidMinProp+" SubFpsSlimVidMaxProp:"+SubFpsSlimVidMaxProp);   
    SubFpsHsVidMinProp = SystemProperties.get("debug.fps.s.min.hs","nodata");
    SubFpsHsVidMaxProp = SystemProperties.get("debug.fps.s.max.hs","nodata");
    Log.e("GCCT","getSupportedPropFromSys: SubFpsHsVidMinProp:"+SubFpsHsVidMinProp+" SubFpsHsVidMaxProp:"+SubFpsHsVidMaxProp);
   
        return true;
    }   
    
    /*
    public void setDefaultDataToSys() {
    Log.e("GCCT","setDefaultDataToSys: MainFpsZsdPreMaxProp:"+MainFpsZsdPreMaxProp+" MainFpsSlimVidMaxProp:"+MainFpsSlimVidMaxProp+"MainFpsHsVidMaxProp:"+MainFpsHsVidMaxProp);
    Log.e("GCCT","setDefaultDataToSys: SubFpsZsdPreMaxProp:"+SubFpsZsdPreMaxProp+" SubFpsSlimVidMaxProp:"+SubFpsSlimVidMaxProp+"SubFpsHsVidMaxProp:"+SubFpsHsVidMaxProp);
    //SystemProperties.set("debug.mode.m.zsd_pre", MainFpsZsdPreValue);
    //SystemProperties.set("debug.mode.m.zsd_pre", MainFpsZsdPreMaxProp);
    //SystemProperties.set("debug.mode.m.slim_vid", MainFpsSlimVidMaxProp);
    //SystemProperties.set("debug.mode.m.hs_vid", MainFpsHsVidMaxProp);
    MainFpsZsdPreValue = MainFpsZsdPreMaxProp;
    MainFpsSlimVidValue = MainFpsSlimVidMaxProp;
    MainFpsHsVidValue = MainFpsHsVidMaxProp;
    //Sub
    //SystemProperties.set("debug.mode.s.zsd_pre", SubFpsZsdPreMaxProp);
    //SystemProperties.set("debug.mode.s.slim_vid", SubFpsSlimVidMaxProp);
    //SystemProperties.set("debug.mode.s.hs_vid", SubFpsHsVidMaxProp);  
    SubFpsZsdPreValue = SubFpsZsdPreMaxProp;
    SubFpsSlimVidValue = SubFpsSlimVidMaxProp;
    SubFpsHsVidValue = SubFpsHsVidMaxProp;
    }
    */
    
    public void setDataOnRadio() {
    Log.e("GCCTP","setDataOnRadio: MainFpsZsdPreValue:"+MainFpsZsdPreValue+"MainFpsZsdPreMinProp:"+MainFpsZsdPreMinProp);  
    if (MainAfValue.equals(MainAfMinProp)) {
    MainAfRadioGroup.check(R.id.MainAfInfinityRadioButtonId);
    } else {
    MainAfRadioGroup.check(R.id.MainAfMacroRadioButtonId);
    }  
   
    if (MainFpsZsdPreValue.equals(MainFpsZsdPreMinProp)) {
    MainFpsZsdPreRadioGroup.check(R.id.MainFpsZsdPreMinRadioButtonId);
    } else {
    MainFpsZsdPreRadioGroup.check(R.id.MainFpsZsdPreMaxRadioButtonId);
    }
   
    if (MainFpsSlimVidValue.equals(MainFpsSlimVidMinProp)) {
    MainFpsSlimVidRadioGroup.check(R.id.MainFpsSlimVidMinRadioButtonId);
    } else {
    MainFpsSlimVidRadioGroup.check(R.id.MainFpsSlimVidMaxRadioButtonId);
    }
   
    if (MainFpsHsVidValue.equals(MainFpsHsVidMinProp)) {
    MainFpsHsVidRadioGroup.check(R.id.MainFpsHsVidMinRadioButtonId);
    } else {
    MainFpsHsVidRadioGroup.check(R.id.MainFpsHsVidMaxRadioButtonId);
    }
    //Sub
    if (SubAfValue.equals(SubAfMinProp)) {
    SubAfRadioGroup.check(R.id.SubAfInfinityRadioButtonId);
    } else {
    SubAfRadioGroup.check(R.id.SubAfMacroRadioButtonId);
    }  
   
    if (SubFpsZsdPreValue.equals(SubFpsZsdPreMinProp)) {
    SubFpsZsdPreRadioGroup.check(R.id.SubFpsZsdPreMinRadioButtonId);
    } else {
    SubFpsZsdPreRadioGroup.check(R.id.SubFpsZsdPreMaxRadioButtonId);
    }
   
    if (SubFpsSlimVidValue.equals(SubFpsSlimVidMinProp)) {
    SubFpsSlimVidRadioGroup.check(R.id.SubFpsSlimVidMinRadioButtonId);
    } else {
    SubFpsSlimVidRadioGroup.check(R.id.SubFpsSlimVidMaxRadioButtonId);
    }
   
    if (SubFpsHsVidValue.equals(SubFpsHsVidMinProp)) {
    SubFpsHsVidRadioGroup.check(R.id.SubFpsHsVidMinRadioButtonId);
    } else {
    SubFpsHsVidRadioGroup.check(R.id.SubFpsHsVidMaxRadioButtonId);
    }
    }
      
    public void getDataFromSys() {
    MainAfValue         = SystemProperties.get("debug.af.m.pos","nodata");
    MainFpsZsdPreValue  = SystemProperties.get("debug.fps.m.zsd_pre","nodata");
    MainFpsSlimVidValue = SystemProperties.get("debug.fps.m.slim_vid","nodata");
    MainFpsHsVidValue   = SystemProperties.get("debug.fps.m.hs_vid","nodata");
    //Sub
    SubAfValue         = SystemProperties.get("debug.af.s.pos","nodata");
    SubFpsZsdPreValue  = SystemProperties.get("debug.fps.s.zsd_pre","nodata");
    SubFpsSlimVidValue = SystemProperties.get("debug.fps.s.slim_vid","nodata");
    SubFpsHsVidValue   = SystemProperties.get("debug.fps.s.hs_vid","nodata");
   
    Log.e("GCCT","getDataFromSys: MainFpsZsdPreValue:"+MainFpsZsdPreValue+" MainFpsSlimVidValue:"+MainFpsSlimVidValue+" MainFpsHsVidValue:"+MainFpsHsVidValue);
    Log.e("GCCT","getDataFromSys: SubFpsZsdPreValue:"+SubFpsZsdPreValue+" SubFpsSlimVidValue:"+SubFpsSlimVidValue+" SubFpsHsVidValue:"+SubFpsHsVidValue);
    }
    
    public void setDataToSys() {
    Log.e("GCCT","setDataToSys(before set): MainFpsZsdPreValue:"+MainFpsZsdPreValue+" MainFpsSlimVidValue:"+MainFpsSlimVidValue+" MainFpsHsVidValue:"+MainFpsHsVidValue);
    Log.e("GCCT","setDataToSys(before set): SubFpsZsdPreValue:"+SubFpsZsdPreValue+" SubFpsSlimVidValue:"+SubFpsSlimVidValue+" SubFpsHsVidValue:"+SubFpsHsVidValue);
    SystemProperties.set("debug.af.m.pos", MainAfValue);
    SystemProperties.set("debug.fps.m.zsd_pre", MainFpsZsdPreValue);
    SystemProperties.set("debug.fps.m.slim_vid", MainFpsSlimVidValue);
    SystemProperties.set("debug.fps.m.hs_vid", MainFpsHsVidValue);
    //Sub
    SystemProperties.set("debug.af.s.pos", SubAfValue);
    SystemProperties.set("debug.fps.s.zsd_pre", SubFpsZsdPreValue);
    SystemProperties.set("debug.fps.s.slim_vid", SubFpsSlimVidValue);
    SystemProperties.set("debug.fps.s.hs_vid", SubFpsHsVidValue); 
   
    Log.e("GCCT","setDataToSys(after set): MainAfValue:"+SystemProperties.get("debug.af.m.pos","nodata"));
    Log.e("GCCT","setDataToSys(after set): MainFpsZsdPreValue:"+SystemProperties.get("debug.fps.m.zsd_pre","nodata"));
    Log.e("GCCT","setDataToSys(after set): MainFpsSlimVidValue:"+SystemProperties.get("debug.fps.m.slim_vid","nodata"));
    Log.e("GCCT","setDataToSys(after set): MainFpsHsVidValue:"+SystemProperties.get("debug.fps.m.hs_vid","nodata"));
    //Sub
    Log.e("GCCT","setDataToSys(after set): SubAfValue:"+SystemProperties.get("debug.af.s.pos","nodata"));
    Log.e("GCCT","setDataToSys(after set): SubFpsZsdPreValue:"+SystemProperties.get("debug.fps.s.zsd_pre","nodata"));
    Log.e("GCCT","setDataToSys(after set): SubFpsSlimVidValue:"+SystemProperties.get("debug.fps.s.slim_vid","nodata"));
    Log.e("GCCT","setDataToSys(after set): SubFpsHsVidValue:"+SystemProperties.get("debug.fps.s.hs_vid","nodata"));
    }
    
    public boolean isCCTPRunning() {
    String isCCTPRunnig = null;
    isCCTPRunnig = SystemProperties.get("debug.cctp.on","nodata");//try...catch...
    Log.e("GCCTP","isCCTPRunnig:"+isCCTPRunnig);
    return isCCTPRunnig.equals("1");
    } 


    public void setStartButtonStatus(boolean on) {
    if (on) {
StartCCTPButton.setText("Stop CCTP");
StartCCTPButton.setTextColor(0xFF000000);
StartCCTPButton.setBackgroundColor(android.graphics.Color.RED);
    } else {
StartCCTPButton.setText("Start CCTP");
StartCCTPButton.setBackgroundColor(android.graphics.Color.GRAY);
    }
    } 
    
    public void setCCTPTextViewStatus(boolean on) {
        if (on) {
        Log.e("GCCTP","CCT is runnig now, click to stop!");
        CCTPStatusTextView.setText("CCTP is runnig now, click to stop!");
        } else {
        Log.e("GCCTP","CCT is stopped, click to start!");
        CCTPStatusTextView.setText("CCTP is stopped, click to start!");
        }
    }
    
    public void doStartCCTP(String on) {
Log.e("GCCTP","doStartCCTP(before set), on:"+on);
SystemProperties.set("debug.cctp.on", on);
Log.e("GCCTP","doStartCCTP(after set), on:"+SystemProperties.get("debug.cctp.on","nodata"));
    }
    
    public void startCCTP(boolean on) {
    String s = null;
    //
    Log.e("GCCTP","startCCTP(before enableAllRadioGroup), MainFpsZsdPreValue:"+MainFpsZsdPreValue);
if (on) {
        enableAllRadioGroup(false);
        setCCTPTextViewStatus(true);
setStartButtonStatus(true);
} else {
//
enableAllRadioGroup(true);
checkDeviceValid();
//
setCCTPTextViewStatus(false);
setStartButtonStatus(false);
}
Log.e("GCCTP","startCCTP(after enableAllRadioGroup), MainFpsZsdPreValue:"+MainFpsZsdPreValue);
//
if (on) {
setDataToSys();
s = String.valueOf(1);
} else {
s = String.valueOf(0);
}
//

    //set value

    //set flag on
doStartCCTP(s);
    }
    
 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////   
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.cct_main_xml);


Log.e("GCCTP","onCreate: isCCTPRunning:"+isCCTPRunning());
//
getViewById();
bindButtonListener();
//
getSupportedPropFromSys();//Only need to get once!
displaySupportedDataOnRadio();
//
getDataFromSys();
setDataOnRadio();
//
if (isCCTPRunning()) {
enableAllRadioGroup(false);
setCCTPTextViewStatus(true);
setStartButtonStatus(true);
isStartButtonClicked = true;
} else {
//setDefaultDataToSys();//only when data is null
//
enableAllRadioGroup(true);
checkDeviceValid();
//
setCCTPTextViewStatus(false);
setStartButtonStatus(false);
isStartButtonClicked = false;
}
//
}


@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();
Log.e("GCCTP","onRestart: isCCTPRunning:"+isCCTPRunning());
//
if (isCCTPRunning()) {
enableAllRadioGroup(false);
setCCTPTextViewStatus(true);
setStartButtonStatus(true);
isStartButtonClicked = true;
} else {
//
enableAllRadioGroup(true);
checkDeviceValid();
//
setCCTPTextViewStatus(false);
setStartButtonStatus(false);
isStartButtonClicked = false;
}
}

class StartCCTPButtonListener implements OnClickListener {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(isStartButtonClicked == true)  
       {  
Log.e("GCCTP","StartCCTPButtonListener isStartButtonClicked=true IN");
isStartButtonClicked = false;
startCCTP(false);
       } else {
        Log.e("GCCTP","StartCCTPButtonListener isStartButtonClicked=false IN");
        isStartButtonClicked = true;  
        startCCTP(true);
       }
   }
}

public void onRadioButtonClicked(View view) {
   // Is the button now checked?
   boolean checked = ((RadioButton) view).isChecked();
   // Check which radio button was clicked
   switch(view.getId()) {
    //Main
       case R.id.MainAfMacroRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainAfMacroRadioButtonId checked, MainAfMaxProp:"+MainAfMaxProp);
            MainAfValue = MainAfMaxProp;
           }
           break;
       case R.id.MainAfInfinityRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainAfInfinityRadioButtonId checked, MainAfMinProp:"+MainAfMinProp);
            MainAfValue = MainAfMinProp;
           }
           break;            
       case R.id.MainFpsZsdPreMinRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainFpsZsdPreMinRadioButtonId checked, MainFpsZsdPreMinProp:"+MainFpsZsdPreMinProp);
            MainFpsZsdPreValue = MainFpsZsdPreMinProp;
           }
           break; 
       case R.id.MainFpsZsdPreMaxRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainFpsZsdPreMaxRadioButtonId checked, MainFpsZsdPreMaxProp:"+MainFpsZsdPreMaxProp);
            MainFpsZsdPreValue = MainFpsZsdPreMaxProp;
           }
           break;            
       case R.id.MainFpsSlimVidMinRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainFpsSlimVidMinRadioButtonId checked, MainFpsSlimVidMinProp:"+MainFpsSlimVidMinProp);
            Log.e("GCCTP","onRadioButtonClicked MainFpsSlimVidMinRadioButtonId checked, MainFpsZsdPreValue:"+MainFpsZsdPreValue);
            MainFpsSlimVidValue = MainFpsSlimVidMinProp;
           }
           break; 
       case R.id.MainFpsSlimVidMaxRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainFpsSlimVidMaxRadioButtonId checked, MainFpsSlimVidMaxProp:"+MainFpsSlimVidMaxProp);
            MainFpsSlimVidValue = MainFpsSlimVidMaxProp;
           }
           break;            
       case R.id.MainFpsHsVidMinRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainFpsHsVidMinRadioButtonId checked, MainFpsHsVidMinProp:"+MainFpsHsVidMinProp);
            MainFpsHsVidValue = MainFpsHsVidMinProp;
           }
           break; 
       case R.id.MainFpsHsVidMaxRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked MainFpsHsVidMaxRadioButtonId checked, MainFpsHsVidMaxProp:"+MainFpsHsVidMaxProp);
            MainFpsHsVidValue = MainFpsHsVidMaxProp;
           }
           break; 
       //Sub  
       case R.id.SubAfMacroRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked SubAfMacroRadioButtonId checked, SubAfMaxProp:"+SubAfMaxProp);
            SubAfValue = SubAfMaxProp;
           }
           break;
       case R.id.SubAfInfinityRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked SubAfInfinityRadioButtonId checked, SubAfMinProp:"+SubAfMinProp);
            SubAfValue = SubAfMinProp;
           }
           break;          
       case R.id.SubFpsZsdPreMaxRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked SubFpsZsdPreMaxRadioButtonId checked, SubFpsZsdPreMaxProp:"+SubFpsZsdPreMaxProp);
            SubFpsZsdPreValue = SubFpsZsdPreMaxProp;
           }
           break;          
       case R.id.SubFpsSlimVidMinRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked SubFpsSlimVidMinRadioButtonId checked, SubFpsSlimVidMinProp:"+SubFpsSlimVidMinProp);
            SubFpsSlimVidValue = SubFpsSlimVidMinProp;
           }
           break; 
       case R.id.SubFpsSlimVidMaxRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked SubFpsSlimVidMaxRadioButtonId checked, SubFpsSlimVidMaxProp:"+SubFpsSlimVidMaxProp);
            SubFpsSlimVidValue = SubFpsSlimVidMaxProp;
           }
           break;            
       case R.id.SubFpsHsVidMinRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked SubFpsHsVidMinRadioButtonId checked, SubFpsHsVidMinProp:"+SubFpsHsVidMinProp);
            SubFpsHsVidValue = SubFpsHsVidMinProp;
           }
           break; 
       case R.id.SubFpsHsVidMaxRadioButtonId:
           if (checked) {
            Log.e("GCCTP","onRadioButtonClicked SubFpsHsVidMaxRadioButtonId checked, SubFpsHsVidMaxProp:"+SubFpsHsVidMaxProp);
            SubFpsHsVidValue = SubFpsHsVidMaxProp;
           }
           break;                
   }
}
}



4.

cct_main_xml.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
      
    <Button 
        android:id="@+id/StartCCTPButtonId"
        android:layout_alignParentBottom="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/StartCCTPButtonText"
        />
    
    <TextView 
        android:id="@+id/CCTPStatusTextViewId"
        android:layout_above="@+id/StartCCTPButtonId"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/CCTPStatusText"
        />


    <RelativeLayout 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:layout_marginBottom="20dp"
        android:layout_marginLeft="45dp"
        android:layout_marginRight="20dp"
        android:layout_weight = "1">
        
        <TextView 
            android:id="@+id/AfReleatedTextViewId"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/AfReleatedText"       
            /> 
            
    <TextView 
            android:id="@+id/MainAfTextViewId"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/AfReleatedTextViewId"
            android:layout_marginLeft="20dp"
            android:text="@string/MainAfText"       
        /> 
        
        <RadioGroup 
            android:id="@+id/MainAfRadioGroupId"
            android:checkedButton="@+id/MainAfMacroRadioButtonId"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/MainAfTextViewId"
            android:orientation="horizontal">
            
            <TextView 
                android:id="@+id/MainAfModeId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="5dp"
           android:text="@string/MainAfModeText"      
            />
           
            <RadioButton 
                android:id="@+id/MainAfInfinityRadioButtonId"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight = "1"
                android:text="@string/MainAfInfinityText"
                android:onClick="onRadioButtonClicked"
                />  
            
            <RadioButton 
                android:id="@+id/MainAfMacroRadioButtonId"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight = "1"
                android:text="@string/MainAfMacroText"
                android:onClick="onRadioButtonClicked"
                />
        </RadioGroup>
        
        <TextView 
            android:id="@+id/SubAfTextViewId"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/MainAfRadioGroupId"
            android:layout_marginLeft="20dp"
            android:text="@string/SubAfText"       
        /> 
        
        <RadioGroup 
            android:id="@+id/SubAfRadioGroupId"
            android:checkedButton="@+id/SubAfMacroRadioButtonId"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/SubAfTextViewId"
            android:orientation="horizontal">
            
            <TextView 
                android:id="@+id/SubAfModeId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="5dp"
           android:text="@string/SubAfModeText"      
            />
           
            <RadioButton 
                android:id="@+id/SubAfInfinityRadioButtonId"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight = "1"
                android:text="@string/SubAfInfinityText"
                android:onClick="onRadioButtonClicked"
                />  
            
            <RadioButton 
                android:id="@+id/SubAfMacroRadioButtonId"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight = "1"
                android:text="@string/SubAfMacroText"
                android:onClick="onRadioButtonClicked"
                />
        </RadioGroup>
            
        <RelativeLayout 
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_below="@+id/SubAfRadioGroupId"
       
       android:layout_marginTop="20dp"
       android:layout_marginBottom="20dp"
       android:layout_weight = "1">
       
       <TextView 
           android:id="@+id/FpsReleatedId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:text="@string/FpsReleatedText"       
           />  
           
       <TextView 
           android:id="@+id/MainCameraTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/FpsReleatedId"
           android:layout_marginLeft="20dp"
           android:text="@string/MainCameraText"       
           /> 
        
       <RadioGroup 
           android:id="@+id/MainFpsZsdPreRadioGroupId"
           android:checkedButton="@+id/MainFpsZsdPreMaxRadioButtonId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/MainCameraTextViewId"
           android:orientation="horizontal">
           
           <TextView 
               android:id="@+id/MainFpsZsdPreRadioGroupTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="5dp"
           android:text="@string/MainFpsZsdPreRadioGroupText"      
           />
           
           <RadioButton 
               android:id="@+id/MainFpsZsdPreMinRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/MainFpsZsdPreMinRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />
           
           <RadioButton 
               android:id="@+id/MainFpsZsdPreMaxRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/MainFpsZsdPreMaxRadioButtonText"            
               android:onClick="onRadioButtonClicked"
               />          
       </RadioGroup>
       
       <RadioGroup 
           android:id="@+id/MainFpsSlimVidRadioGroupId"
           android:checkedButton="@+id/MainFpsSlimVidMaxRadioButtonId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/MainFpsZsdPreRadioGroupId"
           android:orientation="horizontal">
           
           <TextView 
               android:id="@+id/MainSlimVidRadioGroupTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="15dp"
           android:text="@string/MainFpsSlimVidRadioGroupText"      
           />
           
           <RadioButton 
               android:id="@+id/MainFpsSlimVidMinRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/MainFpsSlimVidMinRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />
           
           <RadioButton 
               android:id="@+id/MainFpsSlimVidMaxRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/MainFpsSlimVidMaxRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />          
       </RadioGroup>
       
       <RadioGroup 
           android:id="@+id/MainFpsHsVidRadioGroupId"
           android:checkedButton="@+id/MainFpsHsVidMaxRadioButtonId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/MainFpsSlimVidRadioGroupId"
           android:orientation="horizontal">          
           
           <TextView 
               android:id="@+id/MainHsVidRadioGroupTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="25dp"
           android:text="@string/MainFpsHsVidRadioGroupText"      
           />
                    
           <RadioButton 
               android:id="@+id/MainFpsHsVidMinRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/MainFpsHsVidMinRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />
           
           <RadioButton 
               android:id="@+id/MainFpsHsVidMaxRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/MainFpsHsVidMaxRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />  
       </RadioGroup>       
       
    <TextView 
           android:id="@+id/SubCameraTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/MainFpsHsVidRadioGroupId"
           android:layout_marginLeft="20dp"
           android:text="@string/SubCameraText"       
           /> 
        
       <RadioGroup 
           android:id="@+id/SubFpsZsdPreRadioGroupId"
           android:checkedButton="@+id/SubFpsZsdPreMaxRadioButtonId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/SubCameraTextViewId"
           android:orientation="horizontal">
           
           <TextView 
               android:id="@+id/SubFpsZsdPreRadioGroupTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="5dp"
           android:text="@string/SubFpsZsdPreRadioGroupText"      
           />
           
           <RadioButton 
               android:id="@+id/SubFpsZsdPreMinRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/SubFpsZsdPreMinRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />
           
           <RadioButton 
               android:id="@+id/SubFpsZsdPreMaxRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/SubFpsZsdPreMaxRadioButtonText"            
               android:onClick="onRadioButtonClicked"
               />          
       </RadioGroup>
       
       <RadioGroup 
           android:id="@+id/SubFpsSlimVidRadioGroupId"
           android:checkedButton="@+id/SubFpsSlimVidMaxRadioButtonId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/SubFpsZsdPreRadioGroupId"
           android:orientation="horizontal">
           
           <TextView 
               android:id="@+id/SubSlimVidRadioGroupTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="15dp"
           android:text="@string/SubFpsSlimVidRadioGroupText"      
           />
           
           <RadioButton 
               android:id="@+id/SubFpsSlimVidMinRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/SubFpsSlimVidMinRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />
           
           <RadioButton 
               android:id="@+id/SubFpsSlimVidMaxRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/SubFpsSlimVidMaxRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />          
       </RadioGroup>
       
       <RadioGroup 
           android:id="@+id/SubFpsHsVidRadioGroupId"
           android:checkedButton="@+id/SubFpsHsVidMaxRadioButtonId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_below="@+id/SubFpsSlimVidRadioGroupId"
           android:orientation="horizontal">          
           
           <TextView 
               android:id="@+id/SubHsVidRadioGroupTextViewId"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_marginLeft="20dp"
           android:layout_marginRight="25dp"
           android:text="@string/SubFpsHsVidRadioGroupText"      
           />
                    
           <RadioButton 
               android:id="@+id/SubFpsHsVidMinRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/SubFpsHsVidMinRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />
           
           <RadioButton 
               android:id="@+id/SubFpsHsVidMaxRadioButtonId"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_weight = "1"
               android:text="@string/SubFpsHsVidMaxRadioButtonText"
               android:onClick="onRadioButtonClicked"
               />  
       </RadioGroup>                 
        </RelativeLayout>
        
    </RelativeLayout>
    
</RelativeLayout>



5.

String.xml

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">


    <string name="app_name">code</string>
    <string name="action_settings">Settings</string>
    
    <string name="StartCCTPButtonText">Start CCTP</string>
    <string name="CCTPStatusText">null</string>
    
    <string name="AfReleatedText">AF Releated:</string>
    
    <string name="MainAfText">Main Camera:</string>
    <string name="MainAfModeText">AFMode:</string>
    <string name="MainAfMacroText">MaxMa</string>
    <string name="MainAfInfinityText">MinMa</string>
    
    <string name="SubAfText">Sub Camera:</string>
    <string name="SubAfModeText">AFMode:</string>
    <string name="SubAfMacroText">MaxMa</string>
    <string name="SubAfInfinityText">MinMa</string>
    
    <string name="FpsReleatedText">Fps Releated:</string>
    
    <string name="MainCameraText">Main Camera:</string>
    <string name="MainFpsZsdPreRadioGroupText">Zsd Preview Fps:</string>
    <string name="MainFpsZsdPreMinRadioButtonText">Min</string>
    <string name="MainFpsZsdPreMaxRadioButtonText">Max</string>
    <string name="MainFpsSlimVidRadioGroupText">Slim Video Fps:</string>
    <string name="MainFpsSlimVidMinRadioButtonText">Min</string>
    <string name="MainFpsSlimVidMaxRadioButtonText">Max</string>
    <string name="MainFpsHsVidRadioGroupText">Hs Video Fps:</string>
    <string name="MainFpsHsVidMinRadioButtonText">Min</string>
    <string name="MainFpsHsVidMaxRadioButtonText">Max</string>
    
    <string name="SubCameraText">Sub Camera:</string>
    <string name="SubFpsZsdPreRadioGroupText">Zsd Preview Fps:</string>
    <string name="SubFpsZsdPreMinRadioButtonText">Min</string>
    <string name="SubFpsZsdPreMaxRadioButtonText">Max</string>
    <string name="SubFpsSlimVidRadioGroupText">Slim Video Fps:</string>
    <string name="SubFpsSlimVidMinRadioButtonText">Min</string>
    <string name="SubFpsSlimVidMaxRadioButtonText">Max</string>
    <string name="SubFpsHsVidRadioGroupText">Hs Video Fps:</string>
    <string name="SubFpsHsVidMinRadioButtonText">Min</string>
    <string name="SubFpsHsVidMaxRadioButtonText">Max</string>
</resources>

0 0
原创粉丝点击