android 微信摇一摇代码,android 类似微信的摇一摇功能实现思路及代码

package com.eboy.testyaoyiyao;

import java.text.simpledateformat;

import java.util.date;

import android.app.activity;

import android.hardware.sensor;

import android.hardware.sensorevent;

import android.hardware.sensoreventlistener;

import android.hardware.sensormanager;

import android.os.bundle;

import android.os.vibrator;

import android.view.menu;

import android.widget.textview;

public class mainactivity extends activity implements sensoreventlistener {

//sensor管理器

private sensormanager msensormanager = null;

//震动

private vibrator mvibrator = null;

@override

public void oncreate(bundle savedinstancestate) {

super.oncreate(savedinstancestate);

setcontentview(r.layout.activity_main);

msensormanager = (sensormanager)getsystemservice(sensor_service);

mvibrator = (vibrator)getsystemservice(vibrator_service);

}

@override

public boolean oncreateoptionsmenu(menu menu) {

getmenuinflater().inflate(r.menu.activity_main, menu);

return true;

}

public void onaccuracychanged(sensor arg0, int arg1) {

// todo auto-generated method stub

}

public void onsensorchanged(sensorevent arg0) {

// todo auto-generated method stub

int sensortype = arg0.sensor.gettype();

float[] values = arg0.values;

if (sensortype == sensor.type_accelerometer){

if (math.abs(values[0]) > 14 || math.abs(values[1]) > 14 || math.abs(values[2]) > 14){

mvibrator.vibrate(100);

textview tv1 = (textview)findviewbyid(r.id.textview1);

simpledateformat f=new simpledateformat("yyyy-mm-dd hh:mm:ss e");

tv1.settext(f.format(new date()) + "手机摇动了...");

}

}

}

@override

protected void onresume() {

// todo auto-generated method stub

super.onresume();

msensormanager.registerlistener(this, msensormanager.getdefaultsensor(sensor.type_accelerometer), sensormanager.sensor_delay_normal);

}

@override

protected void onstop() {

// todo auto-generated method stub

msensormanager.unregisterlistener(this);

super.onstop();

}

@override

protected void onpause() {

// todo auto-generated method stub

msensormanager.unregisterlistener(this);

super.onpause();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值