i'm getting securityexception's in app, presumably due missing permissions. happens , doesn't seem consistent, kind of 'once in blue moon' thing. haven't got access of devices it's crashed on. seems happen across different manufacturer, , android versions.
what i've done far, check androidmanifest.xml
<uses-permission>
, it's in right scope, immediate child of <mainfest>
, seems fine. below androidmanifest.xml - shortened bit readability. , i've tried google it, , i've found similare issue on google groups, seems unsolved: https://groups.google.com/forum/#!topic/android-c2dm/qijbqo38rhi
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.etilbudsavis.etilbudsavis" > <!-- permissions e.t.c. removed readability --> <uses-permission android:name="android.permission.internet" /> <!-- permission's causes crashes --> <uses-permission android:name="com.google.android.c2dm.permission.receive" /> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.write_external_storage" /> <permission android:name="${applicationid}.permission.c2d_message" android:protectionlevel="signature" /> <uses-permission android:name="${applicationid}.permission.c2d_message" /> <application android:name="com.etilbudsavis.etilbudsavis.app" android:allowbackup="true" android:icon="@drawable/ic_app" android:label="@string/app_name" > <activity android:name="com.etilbudsavis.etilbudsavis.mainactivity" android:configchanges="orientation|keyboard|keyboardhidden|screensize" android:label="@string/app_name" android:launchmode="singletop" > <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> <activity android:name="com.etilbudsavis.etilbudsavis.test.testactivity" > </activity> <!-- activities, services, recievers removed readability --> </application> </manifest>
i've included couple of stack traces, have out crash reporter along device info.
the first missing com.google.android.c2dm.permission.receive
in manifest. devices: sony xperia z1 compact (d5503, running android 5.0.2) , samsung galaxy s iii (i9300, running android 4.3).
java.lang.securityexception: not allowed start service intent { act=com.google.android.c2dm.intent.register pkg=com.google.android.gms (has extras) } without permission com.google.android.c2dm.permission.receive @ android.app.contextimpl.startservicecommon(contextimpl.java:1730) @ android.app.contextimpl.startservice(contextimpl.java:1707) @ android.content.contextwrapper.startservice(contextwrapper.java:515) @ com.google.android.gms.gcm.googlecloudmessaging.zzs() @ com.google.android.gms.gcm.googlecloudmessaging.register() @ com.etilbudsavis.etilbudsavis.notification.gcmregistration.run(gcmregistration.java:42) @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1112) @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:587) @ java.lang.thread.run(thread.java:818)
second 1 missing android.permission.access_network_state
, defined in mainfest. devices: huawei ascend p7 (p7-l10, running android 4.4.2)
java.lang.securityexception: connectivityservice: neither user 10184 nor current process has android.permission.access_network_state. @ android.os.parcel.readexception(parcel.java:1475) @ android.os.parcel.readexception(parcel.java:1429) @ android.net.iconnectivitymanager$stub$proxy.getactivenetworkinfo(iconnectivitymanager.java:843) @ android.net.connectivitymanager.getactivenetworkinfo(connectivitymanager.java:635) @ com.etilbudsavis.etilbudsavis.connectionchecker.isonline(connectionchecker.java:67) @ com.etilbudsavis.etilbudsavis.connectionchecker.run(connectionchecker.java:42)
third 1 second 1 missing android.permission.write_external_storage
, defined in mainfest. devices: samsung galaxy tab s 8.4 (sm-t705, running android 4.4.2)
java.lang.securityexception: maps api requires additional following permissions set in androidmanifest.xml ensure correct behavior: <uses-permission android:name="android.permission.write_external_storage"/> @ com.google.maps.api.android.lib6.d.t.a() @ com.google.maps.api.android.lib6.d.ft.a() @ com.google.maps.api.android.lib6.d.aj.a() @ com.google.maps.api.android.lib6.d.ai.a() @ com.google.android.gms.maps.internal.x.ontransact(sourcefile:107) @ android.os.binder.transact(binder.java:361) @ com.google.android.gms.maps.internal.imapfragmentdelegate$zza$zza.oncreateview() @ com.google.android.gms.maps.supportmapfragment$zza.oncreateview() @ com.google.android.gms.dynamic.zza$4.zzb() @ com.google.android.gms.dynamic.zza.zza() @ com.google.android.gms.dynamic.zza.oncreateview() @ com.google.android.gms.maps.supportmapfragment.oncreateview() @ android.support.v4.app.fragment.performcreateview(fragment.java:1789) @ android.support.v4.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:955) @ android.support.v4.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:1138) @ android.support.v4.app.backstackrecord.run(backstackrecord.java:740) @ android.support.v4.app.fragmentmanagerimpl.execpendingactions(fragmentmanager.java:1501) @ android.support.v4.app.fragmentmanagerimpl.executependingtransactions(fragmentmanager.java:490) @ com.etilbudsavis.etilbudsavis.fragment.locationmapfragment.ensuresupportmapfragment(locationmapfragment.java:338) @ com.etilbudsavis.etilbudsavis.fragment.locationmapfragment.onstart(locationmapfragment.java:676) @ android.support.v4.app.fragment.performstart(fragment.java:1813) @ android.support.v4.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:989) @ android.support.v4.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:1138) @ android.support.v4.app.backstackrecord.run(backstackrecord.java:740) @ android.support.v4.app.fragmentmanagerimpl.execpendingactions(fragmentmanager.java:1501) @ android.support.v4.app.fragmentmanagerimpl$1.run(fragmentmanager.java:458) @ android.os.handler.handlecallback(handler.java:733) @ android.os.handler.dispatchmessage(handler.java:95) @ android.os.looper.loop(looper.java:146) @ android.app.activitythread.main(activitythread.java:5653) @ java.lang.reflect.method.invokenative(method.java) @ java.lang.reflect.method.invoke(method.java:515) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:1291) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:1107) @ dalvik.system.nativestart.main(nativestart.java)
any appreciated.
Comments
Post a Comment