GithubHelp home page GithubHelp logo

glasgowneuro / attysecg Goto Github PK

View Code? Open in Web Editor NEW
19.0 5.0 6.0 47.85 MB

Realtime ECG scope for Einthoven/Augmented leads with heartrate plot/vector ECG

Home Page: http://www.attys.tech

License: Other

Java 88.27% Shell 0.39% Python 0.81% CMake 10.53%
ecg ecg-signal heart-rate heart-rate-variability heartbeat medical-education biomedical-instrumentation vector-ecg android android-application

attysecg's Introduction

AttysECG

ECG app for Attys

Features

  • Realtime plot of I,II,III,aVR,aVL,aVF
  • Wavelet based heartbeat detection
  • Lead off detection
  • Heartrate over time with heartrate variability stats
  • Heartrate variability animation for biofeedback / breathing exercises
  • PQRST inspector: zoom into one PQRST complex and measure precisely the timings
  • Vector ECG to assess in detail the electrical heart axis of P,QRS and T
  • Save the data in PYTHON/MATLAB compatible format
  • Long term heartrate logging with epoch timestamp

alt tag

Install from Google Play

alt tag

Electrode placement

  • "+" : left ankle or hip
  • "-" : right shoulder or wrist
  • GND : left shoulder or wrist

The two amplifiers are interally connected. No need to connect a wire to the 2nd channel amplifier.

alt tag

Plot and inspect the recorded ECGs

Download the ECG files from /Android/data/tech.glasgowneuro.attysecg or use the "share" option in the app and then drop them on the ECG viewer: https://glasgowneuro.github.io/AttysECG

Or click on the screenshot to enter the ECG viewer:

alt tag

attysecg's People

Contributors

berndporr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

attysecg's Issues

(BUG)[AttysECG VERSION 1.4.0 ] The app gets crashes when I click on the configure bluetooth

Project Information

Expected behavior

When I click on configure bluetooth, the bluetooth should be turned on and the application should not crash

Actual behavior

The app gets crashes when I click on the configure bluetooth

How to reproduce

  • download and open the application

  • configure bluetooth

  • Note the Bug

  • Browser/App version-: 1.4.0

  • Operating system----: 9.0.0

Recording Of The Bug

20190608_151830

Logcat

06-08 14:44:29.523  1386  1386 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:44:29.523  1386  1386 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 1386
06-08 14:44:29.523  1386  1386 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'void java.io.PrintWriter.flush()' on a null object reference
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$HRRecorder.shutdown(AttysECG.java:167)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$HRRecorder.access$2500(AttysECG.java:131)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG.startRRrec(AttysECG.java:588)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG.onStart(AttysECG.java:633)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1395)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.Activity.performStart(Activity.java:7348)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3139)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1955)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:44:35.874  1493  1493 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 1493
06-08 14:44:35.874  1493  1493 E AndroidRuntime: java.lang.SecurityException: Permission Denial: starting Intent { act=android.settings.BLUETOOTH_SETTINGS cmp=com.android.settings/.Settings$BluetoothSettingsActivity } from ProcessRecord{c834b2bd0 1493:tech.glasgowneuro.attysecg/u0a178} (pid=1493, uid=10178) requires android.permission.BLUETOOTH_ADMIN
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Parcel.createException(Parcel.java:1966)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1934)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1884)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:3600)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1673)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4689)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:767)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4647)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:754)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:5008)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:4976)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$4.onClick(AttysECG.java:685)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: Caused by: android.os.RemoteException: Remote stack trace:
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:2139)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:899)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:662)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1534)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.execute(ActivityStarter.java:604)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 
06-08 14:44:41.380  1689  1689 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:44:41.380  1689  1689 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 1689
06-08 14:44:41.380  1689  1689 E AndroidRuntime: java.lang.SecurityException: Permission Denial: starting Intent { act=android.settings.BLUETOOTH_SETTINGS cmp=com.android.settings/.Settings$BluetoothSettingsActivity } from ProcessRecord{f1bd45bd0 1689:tech.glasgowneuro.attysecg/u0a178} (pid=1689, uid=10178) requires android.permission.BLUETOOTH_ADMIN
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Parcel.createException(Parcel.java:1966)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1934)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1884)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:3600)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1673)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4689)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:767)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4647)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:754)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:5008)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:4976)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$4.onClick(AttysECG.java:685)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: Caused by: android.os.RemoteException: Remote stack trace:
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:2139)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:899)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:662)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1534)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.execute(ActivityStarter.java:604)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 
06-08 14:46:46.542  1813  1813 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:46:46.542  1813  1813 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 1813
06-08 14:46:46.542  1813  1813 E AndroidRuntime: android.os.FileUriExposedException: file:///storage/emulated/0/attys/hr.tsv exposed beyond app through ClipData.Item.getUri()
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.os.StrictMode.onFileUriExposed(StrictMode.java:1978)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.net.Uri.checkFileUriExposed(Uri.java:2371)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.content.ClipData.prepareToLeaveProcess(ClipData.java:966)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.content.Intent.prepareToLeaveProcess(Intent.java:10917)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.content.Intent.prepareToLeaveProcess(Intent.java:10923)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.content.Intent.prepareToLeaveProcess(Intent.java:10902)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1671)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4689)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:767)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4647)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:754)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:5008)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:4976)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$12.onClick(AttysECG.java:1015)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:46:46.542  1813  1813 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:46:58.750  3238  3238 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 3238
06-08 14:46:58.750  3238  3238 E AndroidRuntime: android.os.FileUriExposedException: file:///storage/emulated/0/attys/hr.tsv exposed beyond app through ClipData.Item.getUri()
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.os.StrictMode.onFileUriExposed(StrictMode.java:1978)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.net.Uri.checkFileUriExposed(Uri.java:2371)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.content.ClipData.prepareToLeaveProcess(ClipData.java:966)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.content.Intent.prepareToLeaveProcess(Intent.java:10917)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.content.Intent.prepareToLeaveProcess(Intent.java:10923)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.content.Intent.prepareToLeaveProcess(Intent.java:10902)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1671)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4689)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:767)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4647)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:754)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:5008)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:4976)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$12.onClick(AttysECG.java:1015)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:46:58.750  3238  3238 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)

Error compiling when import modules.

Hello, I'm trying to compile the project in Android Studio but I get errors about modules that cannot be found when importing, specifically these two that are not in the sources:
import tech.glasgowneuro.attyscomm.AttysComm;
import tech.glasgowneuro.attyscomm.AttysService;
The files are missing in the project.

Sincerely
Carlos Javier

(BUG)[AttysECG VERSION 1.4.0 ] The application crashes when I try to browse the file

Project Information

Expected behavior

When I try to file a browser, all the information in the file should appear in the application and the application should not be crashed.

Actual behavior

The app gets crashes when I try to upload or browse file

How to reproduce

  • download and open the application

  • At the top right click three vertical dots

  • click on File Browser

  • select the .tsv File

  • click on the ok button

  • Note the Bug

  • Browser/App version-: 1.4.0

  • Operating system----: 9.0.0

Recording Of The Bug

20190608_152032

Logcat

06-08 14:44:29.523  1386  1386 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:44:29.523  1386  1386 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 1386
06-08 14:44:29.523  1386  1386 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'void java.io.PrintWriter.flush()' on a null object reference
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$HRRecorder.shutdown(AttysECG.java:167)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$HRRecorder.access$2500(AttysECG.java:131)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG.startRRrec(AttysECG.java:588)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG.onStart(AttysECG.java:633)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1395)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.Activity.performStart(Activity.java:7348)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3139)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1955)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:44:29.523  1386  1386 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:44:35.874  1493  1493 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 1493
06-08 14:44:35.874  1493  1493 E AndroidRuntime: java.lang.SecurityException: Permission Denial: starting Intent { act=android.settings.BLUETOOTH_SETTINGS cmp=com.android.settings/.Settings$BluetoothSettingsActivity } from ProcessRecord{c834b2bd0 1493:tech.glasgowneuro.attysecg/u0a178} (pid=1493, uid=10178) requires android.permission.BLUETOOTH_ADMIN
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Parcel.createException(Parcel.java:1966)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1934)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1884)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:3600)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1673)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4689)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:767)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4647)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:754)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:5008)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:4976)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$4.onClick(AttysECG.java:685)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: Caused by: android.os.RemoteException: Remote stack trace:
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:2139)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:899)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:662)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1534)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.execute(ActivityStarter.java:604)
06-08 14:44:35.874  1493  1493 E AndroidRuntime: 
06-08 14:44:41.380  1689  1689 E AndroidRuntime: FATAL EXCEPTION: main
06-08 14:44:41.380  1689  1689 E AndroidRuntime: Process: tech.glasgowneuro.attysecg, PID: 1689
06-08 14:44:41.380  1689  1689 E AndroidRuntime: java.lang.SecurityException: Permission Denial: starting Intent { act=android.settings.BLUETOOTH_SETTINGS cmp=com.android.settings/.Settings$BluetoothSettingsActivity } from ProcessRecord{f1bd45bd0 1689:tech.glasgowneuro.attysecg/u0a178} (pid=1689, uid=10178) requires android.permission.BLUETOOTH_ADMIN
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Parcel.createException(Parcel.java:1966)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1934)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1884)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:3600)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Instrumentation.execStartActivity(Instrumentation.java:1673)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4689)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:767)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivityForResult(Activity.java:4647)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:754)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:5008)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.Activity.startActivity(Activity.java:4976)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at tech.glasgowneuro.attysecg.AttysECG$4.onClick(AttysECG.java:685)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at androidx.appcompat.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:106)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:214)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7073)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: Caused by: android.os.RemoteException: Remote stack trace:
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:2139)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:899)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:662)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1534)
06-08 14:44:41.380  1689  1689 E AndroidRuntime: 	at com.android.server.am.ActivityStarter.execute(ActivityStarter.java:604)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.