Bonjour,
je suis en train de m'autoformer à la programmation sur Android en développant une petite application de bataille navale.
Mon problème se situe dans les tests de mon activité pour le drag and drop, puisque j'obtiens systématiquement l'erreur
java.lang.SecurityException: Injecting to another application requires INJECT_EVENTS permission
quand j'exécute
TouchUtils.dragViewTo(this, image, Gravity.CENTER, toX, toY);
J'ai pourtant ajouter cette permission dans mes manifestes, celui de test et celui de l'application, de manière globale et spécifiquement à l'activity, mais rien n'y fait.
Voici ma stacktrace de l'erreur :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| java.lang.SecurityException: Injecting to another application requires INJECT_EVENTS permission
at android.os.Parcel.readException(Parcel.java:1327)
at android.os.Parcel.readException(Parcel.java:1281)
at android.view.IWindowManager$Stub$Proxy.injectPointerEvent(IWindowManager.java:1203)
at android.app.Instrumentation.sendPointerSync(Instrumentation.java:902)
at android.test.TouchUtils.drag(TouchUtils.java:778)
at android.test.TouchUtils.dragViewTo(TouchUtils.java:633)
at fr.atatorus.android.battle.activity.test.PrepareBattleActivityTest.testDragShip(PrepareBattleActivityTest.java:118)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214)
at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199)
at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:545)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1551) |
et mon fichier manifeste de test :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="fr.atatorus.android.battle.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="15" />
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="fr.atatorus.android.battle" />
<uses-permission android:name="android.permission.INJECT_EVENTS" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<uses-library android:name="android.test.runner" />
<activity
android:name=".SeaViewTestActivity"
android:label="@string/app_name" >
</activity>
<activity
android:name=".PrepareBattleActivityTest"
android:label="@string/app_name" >
</activity>
</application>
</manifest> |
Qui peut me dire d'où vient le problème ? Merci.
Partager