我正在使用Android 6.01 API 23为智能手表开发应用程序。
我想添加一些振动功能。
我在AndroidManifest.xml
中定义了以下内容:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="myexample.warehousehelper.mobile">
<uses-permission android:name="android.permission.VIBRATE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
我收到以下异常
java.lang.RuntimeException: Unable to start activity ComponentInfo{myexample.warehousehelper/myexample.warehousehelper.wear.MainActivity}:
java.lang.SecurityException: Requires VIBRATE permission
&#34;振动呼叫&#34;如下:
Vibrator v = (Vibrator) getSystemService(VIBRATOR_SERVICE);
v.vibrate(200);
任何暗示为什么会出现这种行为?
答案 0 :(得分:1)
嗯,承认我发布了错误的Manifest是非常痛苦的。我已授予mobile
版本的权限,但未授予wear
版本的权限。也就是说,我使用了错误的Manifest.xml
。
现在它正常工作,除了权限之外什么都不做。
感谢您的帮助。