当前位置: 首页 > news >正文

众筹网站建设wordpress部署文件

众筹网站建设,wordpress部署文件,网站开发的计划书,计算机前端工资多少1、首先#xff0c;申请权限 必须声明 ACTIVITY_RECOGNITION 权限#xff0c;以便您的应用在运行 Android 10 (API 级别 29) 或更高版本的设备上使用此传感器。 Manifest.xml也记得声明 if (Build.VERSION.SDK_INT Build.VERSION_CODES.P) {Log.d(TAG, [权限]申请权限 必须声明 ACTIVITY_RECOGNITION 权限以便您的应用在运行 Android 10 (API 级别 29) 或更高版本的设备上使用此传感器。 Manifest.xml也记得声明 if (Build.VERSION.SDK_INT Build.VERSION_CODES.P) {Log.d(TAG, [权限] ACTIVITY_RECOGNITION 未获得);if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACTIVITY_RECOGNITION) ! PackageManager.PERMISSION_GRANTED) {// 检查权限状态if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACTIVITY_RECOGNITION)) {// 用户彻底拒绝授予权限一般会提示用户进入设置权限界面Log.d(TAG, [权限] ACTIVITY_RECOGNITION 以拒绝需要进入设置权限界面打开);} else {// 用户未彻底拒绝授予权限ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACTIVITY_RECOGNITION}, 1);Log.d(TAG, [权限] ACTIVITY_RECOGNITION 未彻底拒绝拒绝请求用户同意);} // return;}else{Log.d(TAG, [权限] ACTIVITY_RECOGNITION ready);}}else{}Overridepublic void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {super.onRequestPermissionsResult(requestCode, permissions, grantResults);if (requestCode 1) {for (int i 0; i permissions.length; i) {if (grantResults[i] PackageManager.PERMISSION_GRANTED) {// 申请成功Log.d(TAG, [权限] ACTIVITY_RECOGNITION 申请成功);} else {// 申请失败Log.d(TAG, [权限] ACTIVITY_RECOGNITION 申请失败);}}}} 2、Android代码 主要是MainActivity.java、activity_main.xml、AndroidManifest.xml 2.1 MainActivity.java import androidx.appcompat.app.AppCompatActivity;import android.annotation.SuppressLint; import android.os.Environment; import android.content.Context; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView;import java.text.SimpleDateFormat; import java.util.Date;import android.util.Log; import android.widget.Toast;import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileWriter; import java.util.ArrayList; import java.util.Scanner; import java.util.List;public class MainActivity extends AppCompatActivity implements SensorEventListener,View.OnClickListener {private SensorManager mSensorMgr;private TextView tvx;private TextView tvy;private TextView tvz;private TextView step;private ListString LS;private boolean s; // 记录是否开始private int s1; // 开始后记录第一次计步器返回的值private int s2; // 记录最后一次计步器返回的值Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);LS new ArrayListString();Button btfindViewById(R.id.bt_dsp); // 开始显示加速度bt.setOnClickListener(this); // 设置监听Button bt_stopfindViewById(R.id.bt_stop); // 停止显示加速度bt_stop.setOnClickListener(this); // 设置监听tvxfindViewById(R.id.tvx); // x轴tvyfindViewById(R.id.tvy); // y轴tvzfindViewById(R.id.tvz); // z轴stepfindViewById(R.id.step); // 步数统计mSensorMgr(SensorManager)getSystemService(Context.SENSOR_SERVICE); // 获取服务}protected void onPause(){super.onPause();mSensorMgr.unregisterListener(this); // 取消监听}protected void onResume(){super.onResume();}protected void onStop(){super.onStop();mSensorMgr.unregisterListener(this); // 取消监听}SuppressLint(SetTextI18n)public void onSensorChanged(SensorEvent event) // 监听数据变化{if(event.sensor.getType() Sensor.TYPE_ACCELEROMETER) {float[] values event.values;tvx.setText(ACC_X: Float.toString(values[0]));tvy.setText(ACC_Y: Float.toString(values[1]));tvz.setText(ACC_Z: Float.toString(values[2]));String s ; // 保存数据到字符串中s System.currentTimeMillis(),Float.toString(values[0]),Float.toString(values[1]),Float.toString(values[2]);LS.add(s);}if(event.sensor.getType() Sensor.TYPE_STEP_COUNTER){float[] values event.values;step.setText(Float.toString(values[0]));if(s){ // 点击开始s1 (int) values[0];s false;}s2 (int) values[0];int st s2 - s1;step.setText(Integer.toString(st)); // Log.d(步数计数器,Float.toString(values[0]));}}public void onAccuracyChanged(Sensor sensor,int accuracy){//不用处理空着就行return ;}private static final String TAG ACCCollection:;public static void writeLS(ListString LS) {try {String path Environment.getExternalStorageDirectory().getAbsolutePath()/pdr_ZL/;File folde new File(path);Log.i(TAG, write: -------1);if (!folde.exists() || !folde.isDirectory()){Log.i(TAG, write: --------2);folde.mkdirs();}Date date new Date();SuppressLint(SimpleDateFormat) SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);String time sdf.format(date);File filenew File(path,time_pixel2_B.csv);if(!file.exists()){file.createNewFile();}BufferedWriter bw new BufferedWriter(new FileWriter(file, true));int i;for(i0;iLS.size();i){bw.write(LS.get(i));bw.newLine(); // 行换行}bw.close();}catch (Exception e){e.printStackTrace();}}public void onClick(View v) //监听函数{if(v.getId() R.id.bt_dsp) // 开始显示加速度{s true; // 点击开始记录mSensorMgr.unregisterListener(this,mSensorMgr.getDefaultSensor(Sensor.TYPE_ACCELEROMETER));mSensorMgr.unregisterListener(this,mSensorMgr.getDefaultSensor(Sensor.TYPE_STEP_COUNTER));//注册加速度传感器mSensorMgr.registerListener(this,mSensorMgr.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_NORMAL);//注册步数统计传感器mSensorMgr.registerListener(this,mSensorMgr.getDefaultSensor(Sensor.TYPE_STEP_COUNTER),SensorManager.SENSOR_DELAY_NORMAL);LS.clear();return;}if(v.getId() R.id.bt_stop) // 停止监听{mSensorMgr.unregisterListener(this);writeLS(LS);return;}} }2.2 activity_main.xml LinearLayoutandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:orientationverticalTextViewandroid:idid/tvxandroid:layout_width214dpandroid:layout_height69dpandroid:textTextViewtools:layout_editor_absoluteX117dptools:layout_editor_absoluteY100dp /TextViewandroid:idid/tvyandroid:layout_width214dpandroid:layout_height53dpandroid:textTextViewtools:layout_editor_absoluteX126dptools:layout_editor_absoluteY158dp /TextViewandroid:idid/tvzandroid:layout_width214dpandroid:layout_height53dpandroid:textTextViewtools:layout_editor_absoluteX130dptools:layout_editor_absoluteY234dp /TextViewandroid:idid/stepandroid:layout_width214dpandroid:layout_height53dpandroid:textTextViewtools:layout_editor_absoluteX130dptools:layout_editor_absoluteY234dp /Buttonandroid:idid/bt_dspandroid:layout_width131dpandroid:layout_height79dpandroid:text开始显示加速度tools:layout_editor_absoluteX115dptools:layout_editor_absoluteY444dp /Buttonandroid:idid/bt_stopandroid:layout_width217dpandroid:layout_height81dpandroid:text停止显示加速度 //LinearLayout2.3 AndroidManifest.xml ?xml version1.0 encodingutf-8? manifest xmlns:androidhttp://schemas.android.com/apk/res/androidpackagecom.example.pdr_save_data!--申请权限--uses-permission android:nameandroid.permission.READ_EXTERNAL_STORAGE /uses-permission android:nameandroid.permission.WRITE_EXTERNAL_STORAGE /uses-permission android:nameandroid.permission.ACTIVITY_RECOGNITION/applicationandroid:allowBackuptrueandroid:iconmipmap/ic_launcherandroid:labelstring/app_nameandroid:roundIconmipmap/ic_launcher_roundandroid:supportsRtltrueandroid:themestyle/AppThemeactivity android:name.MainActivityintent-filteraction android:nameandroid.intent.action.MAIN /category android:nameandroid.intent.category.LAUNCHER //intent-filter/activity/application /manifest3、APP使用方法 使用方法 1、点击“开始显示加速度”按钮注册 加速度传感器 和 计步器传感器采集模式为SensorManager.SENSOR_DELAY_NORMAL以回调的形式监听这两个传感器的 event若获取了存取权限还会保存加速度传感器xyz三轴的数据到csv文件中保存在“手机存储根目录/pdr_ZL/”中 2、行走一定步数 3、点击“停止显示加速度”按钮取消传感器的注册根据计步器传感器的取消注册时的步数和注册时的步数相减行走步数显示到如图“25”的位置 说明根据实验结果使用Google Pixel2手机的计步器传感器计算行走步数具有一定的准确性可供参考
http://www.zqtcl.cn/news/862963/

相关文章:

  • 男女做差差事的视频网站自己做一个小程序要多少钱
  • 临沂网站建设哪家好重庆建设招标造价信息网站
  • 筑巢网络官方网站深圳网站开发设计公司排名
  • 镇江市网站制作网页的代码实例
  • 吉林省网站制作公司有哪些唐山设计网站公司
  • 浙江国泰建设集团有限公司网站ps软件下载电脑版免费怎么下载
  • 昆明网站建设价格自力教育
  • 黄冈网站推广软件视频下载孝感做网站xgsh
  • 用jsp做一网站的流程图互联网博客网站
  • 南宁一站网 给网站做营销微网站和网站同步像素
  • 如何建设一个视频小网站软件做网站
  • 小企业网站建设公司哪家好网站怎样设计网页
  • 那个网站做搬家推广比较好wordpress twenty eleven
  • 微站图片临淄信息网招聘最新信息
  • 投诉举报网站建设方案宠物网站 模板
  • 生小孩去什么网站做登记有特点的个人网站
  • 汉中市住房和城乡建设局网站学网站建设需要什么
  • 深圳网站建设外包公司排名网络引流怎么做啊?
  • 关于做暧暧的网站php 网站授权
  • 网站上添加子栏目wordpress群组
  • 一站式手机网站制作有没有代做ppt的网站
  • 西安火车站网站建设网站的设计需要什么
  • 弹幕网站开发代码欧洲人喜欢什么样的服务器
  • 有哪些做壁纸的网站好ftp如何备份网站
  • 网站如何推广出去wordpress foopen
  • 网站空格键代码台州椒江网站建设公司
  • node 网站开发 视频教程汉阳网站推广
  • 广西新农村建设工作专题网站怎样创建公司网站
  • 中国十大招商平台谷歌优化软件
  • 做任务领黄钻的网站中国采购网招标公告