Android的手机震动


android实现手机震动

1.在AndroidManifest.xml中添加震动权限

<?xml version="1.0" encoding="utf-8"?>  
<manifest xmlns:android="http://schemas.android.com/apk/res/android"  
      package="uni.vibrator"  
      android:versionCode="1"  
      android:versionName="1.0">  
    <uses-sdk android:minSdkVersion="8" />  
  
    <application android:icon="@drawable/icon" android:label="@string/app_name">  
        <activity android:name=".VibratorDemoActivity"  
                  android:label="@string/app_name">  
            <intent-filter>  
                <action android:name="android.intent.action.MAIN" />  
                <category android:name="android.intent.category.LAUNCHER" />  
            </intent-filter>  
        </activity>  
  
    </application>  
    <uses-permission android:name="android.permission.VIBRATE" />  
</manifest>

2.实现震动

package uni.vibrator;  
  
import android.app.Activity;  
import android.content.Context;  
import android.os.Bundle;  
import android.os.Vibrator;  
  
public class VibratorDemoActivity extends Activity {  
    private Vibrator vibrator;  
    /** Called when the activity is first created. */  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  
          
        /* 
         * 想设置震动大小可以通过改变pattern来设定,如果开启时间太短,震动效果可能感觉不到 
         * */  
        vibrator = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE);  
        long [] pattern = {100,400,100,400};   // 停止 开启 停止 开启   
        vibrator.vibrate(pattern,2);           //重复两次上面的pattern 如果只想震动一次,index设为-1

/*

如:只想震动一次,时间为200ms,可写为

long [] pattern = {0,200};   // 停止 开启
        vibrator.vibrate(pattern,-1);           //重复两次上面的pattern 如果只想震动一次,index设-1

*/
    }  
      
    public void onStop(){  
        super.onStop();  
        vibrator.cancel(); //停止震动 
    }  
}

时间: 2024-10-13 08:55:33

Android的手机震动的相关文章

Delphi XE6 for Android 让手机震动(调用Java的函数)

震动,是调用了 安卓api  JNI 里面的 函数  ,这些都是 调用java的 ,如下面的引用, uses  FMX.Helpers.Android,  Androidapi.JNI.App,  Androidapi.JNI.Os,  Androidapi.JNIBridge, FMX.StdCtrls; 还是分几步, 1  新建一个手机项目 打开xe6, file  ----  new ----FireMonkeyMobile Application-Delphi 2    选择black

Delphi XE5 Android 调用手机震动(通过JObject测试是否支持震动)

源码如下: [delphi] view plain copy uses Androidapi.JNI.Os, Androidapi.JNIBridge; function GetVibratorArray(const AIntArr: array of Int64): TJavaArray<Int64>; var LIndex: Integer; begin Result := TJavaArray<Int64>.Create(Length(AIntArr)); for LInde

android 之实现手机震动功能

界面:利用weight属性,能比较好得移植到平板上.      布局代码: <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:la

cocos2d-x3.2中添加Android手机震动

本人宣布从此博文发出后,我的cocos2dx的引擎从cocos2dx3.1.1跳到cocos2dx3.2,哈哈,其实变化不大的,不碍事~~~ 下面来说说在cocos中添加Android手机震动的功能,亲身体验,网上的教程都是渣渣啊,坑比的很,还要看了原帖http://www.cocos2d-x.org/boards/6/topics/8179,全英文的,蛋疼恼火了许久,才解决~~ 下面进入正题.相信看完本文,什么问题都ok了!!!! 1.在proj.android这个目录下 AndroidMan

[android] 手机卫士输入框抖动和手机震动

查看apiDemos,找到View/Animation/shake找到对应的动画代码,直接拷贝过来 当导入一个项目的时候,报R文件不存在,很多情况是xml文件出错了 Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake); et_phone.startAnimation(shake); 动画的xml文件shake.xml android:interpolator="@anim/cycle_7" interpo

android 控制手机音量的大小 切换声音的模式

(1)程序说明 在android API的AudioManager中,提供了调节手机音量的办法. audioMa.adjustVolume(AudioManager.ADJUST_LOWER, 0); audioMa.adjustVolume(AudioManager.ADJUST_RAISE, 0); 也可以调节手机声音的模式为震动或者静音 audioMa.setRingerMode(AudioManager.RINGER_MODE_NORMAL); audioMa.setRingerMode

4 手机震动

1 /** 2 * 手机震动, 需要权限 android.permission.VIBRATE 3 */ 4 private void vibrate() { 5 Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); 6 // vibrator.vibrate(2000);震动两秒 7 vibrator.vibrate(new long[] { 1000, 2000, 1000, 3000 }, -1);// 先等待

Android获取手机联系人的姓名和电话

Android获取手机联系人的姓名和电话 主要是用到了跳入手机联系人的intent和获取手机联系人信息的内容提供者,直接上代码 注:此贴是借鉴别人的帖子加了一些自己的东西写出的,原帖地址明日附上: / 首先 我们需要跳入手机通讯录 Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); startActivityForResult(intent, 0); // 之后,我们需要重写

android 获取手机的所有程序和widget的包名和启动类名

获取 widget可以 AppWidgetManager 来获取 List<AppWidgetProviderInfo> widget=AppWidgetManager.getInstance(Context(上下文)).getInstalledProviders(); 得到所有AppWidgetProviderInfo for (int i = 0; i < widget.size(); i++) {        AppWidgetProviderInfo info=widget.g