android蓝牙开发anr,蓝牙模块连接后出现ANR,日志记录

11-25 16:29:48.433 14507-14561/myapplication.com.myblue W/MALI: glDrawArrays:714: [MALI] glDrawArrays takes more than 5ms here. Total elapse time(us): 10221

11-25 16:29:58.204 14507-14507/myapplication.com.myblue W/BluetoothAdapter: getBluetoothService() called with no BluetoothManagerCallback

[ 11-25 16:29:58.206 17183:17202 I/         ]

[JSR82][JBT] JBT jbt_session_connect_req

[ 11-25 16:29:58.206 17183:17202 I/         ]

[session] session_mutex_lock() +++, mutex: 0xeec301a8

[ 11-25 16:29:58.206 17183:17202 I/         ]

[session] session_mutex_lock() ---

11-25 16:30:01.486 14507-14507/myapplication.com.myblue I/System.out: **android.bluetooth.BluetoothInputStream@3c5c4bb1

11-25 16:30:40.726 14507-14528/myapplication.com.myblue I/ViewRootImpl: ANR Key Analyze: No Key event currently.

11-25 16:30:40.726 14507-14528/myapplication.com.myblue I/ViewRootImpl: ANR Key Analyze: Previeous Event null,finish at 1970-01-01 08:00:00.000

11-25 16:30:40.726 14507-14528/myapplication.com.myblue I/ViewRootImpl: ANR Motion Analyze: No motion event currently.

11-25 16:30:40.727 14507-14528/myapplication.com.myblue I/ViewRootImpl: ANR Motion Analyze: Previeous Event MotionEvent { action=ACTION_UP, id[0]=0, x[0]=1030.0463, y[0]=161.91566, toolType[0]=TOOL_TYPE_FINGER, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=2030905, downTime=2030754, deviceId=3, source=0x1002 },finish at 2016-11-25 16:29:58.200

11-25 16:30:40.884 14507-14580/myapplication.com.myblue W/Binder: Caught a RuntimeException from the binder stub implementation.

java.lang.NullPointerException: Attempt to invoke interface method 'android.os.IBinder com.mediatek.anrappmanager.IFrameworks.serviceManagerGetService(java.lang.String)' on a null object reference

at com.mediatek.anrappmanager.ANRManagerNative$1.b(SourceFile:77)

at com.mediatek.anrappmanager.ANRManagerNative$1.c(SourceFile:75)

at com.mediatek.anrappmanager.ANRManagerNative$a.get(SourceFile:97)

at com.mediatek.anrappmanager.ANRManagerNative.getDefault(SourceFile:35)

at com.mediatek.anrappmanager.ANRAppManager.dumpMessageHistory(SourceFile:59)

at android.app.ActivityThread$ApplicationThread.dumpMessageHistory(ActivityThread.java:1315)

at android.app.ApplicationThreadNative.onTransact(ApplicationThreadNative.java:687)

at android.os.Binder.execTransact(Binder.java:454)

11-25 16:30:40.884 14507-14580/myapplication.com.myblue W/System.err: java.lang.NullPointerException: Attempt to invoke interface method 'android.os.IBinder com.mediatek.anrappmanager.IFrameworks.serviceManagerGetService(java.lang.String)' on a null object reference

11-25 16:30:40.884 14507-14580/myapplication.com.myblue W/System.err:     at com.mediatek.anrappmanager.ANRManagerNative$1.b(SourceFile:77)

11-25 16:30:40.884 14507-14580/myapplication.com.myblue W/System.err:     at com.mediatek.anrappmanager.ANRManagerNative$1.c(SourceFile:75)

11-25 16:30:40.884 14507-14580/myapplication.com.myblue W/System.err:     at com.mediatek.anrappmanager.ANRManagerNative$a.get(SourceFile:97)

11-25 16:30:40.884 14507-14580/myapplication.com.myblue W/System.err:     at com.mediatek.anrappmanager.ANRManagerNative.getDefault(SourceFile:35)

11-25 16:30:40.884 14507-14580/myapplication.com.myblue W/System.err:     at com.mediatek.anrappmanager.ANRAppManager.dumpMessageHistory(SourceFile:59)

11-25 16:30:40.885 14507-14580/myapplication.com.myblue W/System.err:     at android.app.ActivityThread$ApplicationThread.dumpMessageHistory(ActivityThread.java:1315)

11-25 16:30:40.885 14507-14580/myapplication.com.myblue W/System.err:     at android.app.ApplicationThreadNative.onTransact(ApplicationThreadNative.java:687)

11-25 16:30:40.885 14507-14580/myapplication.com.myblue W/System.err:     at android.os.Binder.execTransact(Binder.java:454)

11-25 16:30:43.719 17826-17826/myapplication.com.myblue I/ActivityThread: Switching default density from 480 to 380

11-25 16:30:43.745 17826-17826/myapplication.com.myblue W/linker: /system/lib64/libfilterUtils.so: unused DT entry: type 0x6ffffffe arg 0x808

11-25 16:30:43.745 17826-17826/myapplication.com.myblue W/linker: /system/lib64/libfilterUtils.so: unused DT entry: type 0x6fffffff arg 0x2

11-25 16:30:44.159 17826-17859/myapplication.com.myblue E/GED: Failed to get GED Log Buf, err(0)

11-25 16:30:44.159 17826-17859/myapplication.com.myblue I/OpenGLRenderer: Initialized EGL, version 1.4

11-25 16:30:44.227 17826-17859/myapplication.com.myblue W/MALI: glDrawArrays:714: [MALI] glDrawArrays takes more than 5ms here. Total elapse time(us): 13735

2.代码:

package myapplication.com.myblue.activity;

import android.bluetooth.BluetoothAdapter;

import android.bluetooth.BluetoothDevice;

import android.bluetooth.BluetoothSocket;

import android.content.Intent;

import android.os.Handler;

import android.os.Message;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.util.Log;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.ImageView;

import android.widget.TextView;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

import java.text.SimpleDateFormat;

import java.util.Timer;

import java.util.TimerTask;

import java.util.UUID;

import myapplication.com.myblue.R;

public class Zhuye_Activity extends AppCompatActivity {

TextView textView1,textView_time,textView_lianjie;

ImageView imageView1;

EditText edittext;

Button button_send;

private BluetoothSocket btSocket = null;

private OutputStream outStream = null;

private InputStream inStream = null;

private BluetoothAdapter BA;

private String address = "";

private static final UUID MY_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_zhuye);

Intent intent=getIntent();

String mac=intent.getStringExtra("mac");

String []a=mac.split("\\*");

address=a[1].trim();

initView();

textView1.setText(mac);

}

public void initView(){

BA = BluetoothAdapter.getDefaultAdapter();

BA.enable();

button_send= (Button) findViewById(R.id.button_send);

edittext= (EditText) findViewById(R.id.edittext);

textView1= (TextView) findViewById(R.id.textview1);

textView_time= (TextView) findViewById(R.id.textView_time);

SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

String date = sDateFormat.format(new java.util.Date());

textView_time.setText(date);

imageView1= (ImageView) findViewById(R.id.imageView1);

textView_lianjie= (TextView) findViewById(R.id.textView_lianjie);

textView_lianjie.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

connect();

}

});

imageView1.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

finish();

}

});

button_send.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

String s=edittext.getText().toString().trim();

byte[] a=s.getBytes();

try {

outStream.write(a);

} catch (IOException e) {

e.printStackTrace();

}

}

});

/**

* 创建定时器,1000ms更新一次时间

* **/

// Timer timer = new Timer();

// timer.schedule(timerTask, 0, 10000);

}

/**

* 连接蓝牙设备

*

* ***/

public void connect(){

BluetoothDevice device = BA.getRemoteDevice(address);

try {

btSocket = device.createRfcommSocketToServiceRecord(MY_UUID);

} catch (IOException e) {

System.out.println("**109"+e.toString());

}

// BA.cancelDiscovery();

try {

btSocket.connect();

outStream = btSocket.getOutputStream();

outStream.write(0x61);

outStream.write(0x41);

inStream = btSocket.getInputStream();

System.out.println("**"+inStream.toString());

System.out.println("**"+inStream.read());

int x = inStream.read();

outStream.write(x + 1);

} catch (IOException e) {

System.out.println("**124"+e.toString());

}

try {

btSocket.close();

} catch (Exception e2) {

// Log .e(TAG,"ON RESUME: Unable to close socket during connection failure", e2);

}

}

// public void connect(){

// BA = BluetoothAdapter.getDefaultAdapter();

// BluetoothDevice device = BA.getRemoteDevice(address);

// // pairedDevices = BA.getBondedDevices();

// try {

//

// btSocket = device.createRfcommSocketToServiceRecord(MY_UUID);

//

// } catch (IOException e) {

//

// Log.d("T109",e.toString());

// }

// // BA.cancelDiscovery();

// try {

//

// // new Thread(new Runnable() {

// // @Override

// // public void run() {

// // try {

// btSocket.connect();

// outStream = btSocket.getOutputStream();

// inStream = btSocket.getInputStream();

// // } catch (IOException e) {

// // e.printStackTrace();

// // }

// // }

// // }).start();

//

outStream = btSocket.getOutputStream();

String s="guoxiwang";

byte by[]=s.getBytes();

outStream.write(12345566);

outStream.write(by);

outStream.write(0x61);

outStream.write(0x41);

inStream = btSocket.getInputStream();

System.out.println("**"+inStream.toString());

System.out.println("**"+inStream.read());

int x = inStream.read();

outStream.write(x + 1);

//

// } catch (Exception e) {

// }

// try {

// btSocket.close();

// } catch (IOException e2) {

//

// // Log .e(TAG,"ON RESUME: Unable to close socket during connection failure", e2);

// }

// }

/***

* handler+TimerTask 实现更新时间

*

* ***/

Handler handler=new Handler(){

public void handleMessage(android.os.Message msg) {

switch (msg.what) {

case 200:

SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");

String date = sDateFormat.format(new java.util.Date());

textView_time.setText(date);

break;

}

}

};

TimerTask timerTask = new TimerTask() {

@Override

public void run() {

Message message = new Message();

message.what = 200;

// message.obj = view;

handler.sendMessage(message);

}

};

}

HC系列蓝牙模块连接单片机与电脑,传输数据(蓝牙心电测试)

毕设做无线心电监护.有线的做出来了,AD8232+MCU+LabVIEW上位机.pcb还没时间搞,这个9*7*2.5cm拿来测试能用. 自己做了AD8232的模拟前端,打的板子还没到没法测试. 虽然比 ...

mysql中左连接后,最终的记录数大于左边表的记录分析

如果B表符合条件的记录数大于1条,就会出现1:n的情况,这样left join后的结果,记录数会多于A表的记录数. 例如:member与member_login_log表的结构如下,member记录会 ...

Arduino蓝牙模块实现通信

蓝牙参数特点 1.蓝牙核心模块使用HC-06从模块,引出接口包括VCC,GND,TXD,RXD,预留LED状态输出脚,单片机可通过该脚状态判断蓝牙是否已经连接 2.led指示蓝牙连接状态,闪烁表示没有 ...

【Arduino】开发入门【十】Arduino蓝牙模块与Android实现通信

[Arduino]开发入门[十]蓝牙模块 首先show一下新入手的蓝牙模块 蓝牙参数特点 1.蓝牙核心模块使用HC-06从模块,引出接口包括VCC,GND,TXD,RXD,预留LED状态输出脚,单片机 ...

Android4.42-Settings源代码分析之蓝牙模块Bluetooth(上)

继上一篇Android系统源代码剖析(一)---Settings 接着来介绍一下设置中某个模块的源代码.本文依然是基于Android4.42源代码进行分析,分析一下蓝牙模块的实现.建议大致看一下关于S ...

Python开发之日志记录模块:logging

1 引言 最近在开发一个应用软件,为方便调试和后期维护,在代码中添加了日志,用的是Python内置的logging模块,看了许多博主的博文,颇有所得.不得不说,有许多博主大牛总结得确实很好.似乎我再写 ...

微软企业库5.0 学习之路——第九步、使用PolicyInjection模块进行AOP—PART4——建立自定义Call Handler实现用户操作日志记录

在前面的Part3中, 我介绍Policy Injection模块中内置的Call Handler的使用方法,今天则继续介绍Call Handler——Custom Call Handler,通过建立 ...

基于AOP和ThreadLocal实现的一个简单Http API日志记录模块

Log4a 基于AOP和ThreadLocal实现的一个简单Http API日志记录模块 github地址 : https://github.com/EalenXie/log4a 在API每次被请求时 ...

随机推荐

udisk2阻止自动Mount某些设备

1.在/etc/udev/rules.d/目录下添加一个诸如99.udisk2.rules 2.其中的内容诸如: # This file contains udev rules for udisks ...

windows跟linux文件共享

方法一:windows下的winscp工具 前提条件:windows能够ping通linux:linux关闭防火墙,/etc/init.d/iptables stop 在windows下运行winsc ...

weblogic11g重置控制台管理员用户名/密码

weblogic安装后,很久不用,忘记访问控制台的用户名或者密码,可通过以下步骤来重置用户名密码. 说明:%DOMAIN_HOME%:指WebLogic Server 域(Domain)目录例如我的做 ...

Scala中的构造器和高阶函数

构造器 在定义类时可以定义主构造器.主构造器可以同时声明字段. /** * 主构造器 * @author Administrator */ //在scala中,类和方法交织在一起 class Test ...

【编程技巧】addSubview和insertSubview的区别

addSubview 是将view加到所有层的最顶层 相当于将insertSubview的atIndex参数设置成view.subviews count 即 [view addSubview:onev ...

Android应用程序性能优化Tips

对于我们设计的应用需要做到以下特征:build an app that's smooth, responsive(反应敏捷), and uses as little battery as possib ...

干净的ssm框架项目

其中数据库只有如下表与字段 访问效果: 项目下载: 干净的ssm框架项目.rar

Linux服务-NFS

目录 1. nfs简介 1.1 nfs特点 1.2 使用nfs的好处 1.3 nfs的体系组成 1.4 nfs的应用场景 2. nfs工作机制 2.1 RPC 2.2 NIS 2.3 nfs工作机制 ...

ashx 绝对路径得到物理路径

//先得到模板页所在的路径 string phyPath = context.Server.MapPath("/p02style.html"); //得到模板的所有内容 strin ...

学习做爬虫-vs2017

最近新装了vs2017,安装过程发生了很大的变化,操作变的更加容易了. 下载vs安装程序进行安装.更新界面如图所示,我选择了安装免费个人版(这个是已安装的更新界面,和安装界面差不多) 如图所示,这样的 ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值