2017-01-17 4 views
1

Я разрабатываю приложение для smartwatch с использованием Android 6.01 API 23. Я хочу добавить некоторые возможности вибрации. я определил в моем AndroidManifest.xml следующее:Требуется разрешение VIBRATE Исключение, хотя разрешение указано в манифесте

<?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 

"Зов вибрация" выглядит следующим образом:

Vibrator v = (Vibrator) getSystemService(VIBRATOR_SERVICE); 
v.vibrate(200); 

Любой намек на то, почему это поведение?

+0

http://stackoverflow.com/questions/13602190/java-lang-securityexception-requires-vibrate-permission-on-jelly-bean-4-2 –

+0

Android версии зефир требует разрешения выполнения не устанавливать время –

+0

HTTP://stackoverflow.com/questions/33162152/storage-permission-error-in-marshmallow/33163206#33163206 –

ответ

1

Ну, очень больно признать, что я разместил неправильный манифест. Я предоставил разрешение на версию mobile, а не на версию wear. То есть я использовал неправильный Manifest.xml.

Теперь он работает правильно, не делая ничего, кроме разрешений.

Спасибо за помощь.

Смежные вопросы