Hello,
A Crosswalk Cordova application requires these permissions to run:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
Unfortunately this is related to the Crosswalk and Cordova internals and will
not change in the short term. This has always been the case since we published
Crosswalk. If these permissions are not acceptable, Crosswalk can’t be used.
Crosswalk 14 introduced the “shared mode”, which requires an extra permission
to work:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE”/>
Unfortunately, when using Crosswalk 14 with the XDK this is set by default even
if shared mode is not used, which should not be the case. More on the solution
later.
About the camera, audio, etc. permissions, I have no idea where they come from.
I tried to build a blank application with no plugins with the latest XDK, and I
only got the required permissions mentioned above. According to the XDK team,
these are added by some plugins that are configured either by Construct or the
XDK. I believe Paul has been in contact with you to provide help.
About the external storage permission, the XDK team recommended to fix this by
taking into use the CLI 5.1.1 in the build settings. I have tried and can
confirm the permission is no longer there. However this forces you to use
Crosswalk 15 and upgrade your plugins to the latest versions.
Hope this helps,
Francesco
From: Irbis <[email protected]<mailto:[email protected]>>
Date: Tuesday 29 September 2015 08:30
To: Robert Staudinger
<[email protected]<mailto:[email protected]>>, "Sun, Lin"
<[email protected]<mailto:[email protected]>>, Francesco Balestrieri
<[email protected]<mailto:[email protected]>>,
"Fischer, Paul A" <[email protected]<mailto:[email protected]>>,
"[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Subject: Re: [Crosswalk-help] CrossWalk14+XDK+Construct2: Problems with
permissions
Robert, this is the problem - I DON'T HAVE WHERE TO write that code you gave me.
There is just no option for that. And there never were. For past 2 years we've
been setting permissions via Construct 2 and Intel XDK and it was all fine. I
don't understand why this changed.My father always used to say "Don't fix
something what ain't broken".
Right now, upon export my simple tapping game requests this permissions:
-Full SD card access
-microphone and recording access
-camera access
-device deep setup access
I did not set any of that. And my game does not need any of those. But in order
to change them back I have to unpack my own game. Recompile AndroidManifest.xml
correct it, compile again, do the same for the apk...
The whole point of Construct 2 and Intel XDK is to make this process as fast
and smooth as possible. But if this messy solution is the new standard - than
it kind of a defeats the whole purpose of XDK existence.
2015-09-28 21:45 GMT+02:00 Staudinger, Robert
<[email protected]<mailto:[email protected]>>:
Hello Radek,
On 28 September 2015 at 14:31, Irbis
<[email protected]<mailto:[email protected]>> wrote:
>
> The problem here (to my understanding) is that the CrossWalk automatically
> sets up the permissions, overwriting or extending already present
> permissions. By default it adds practically every and all possible
> permissions.
This is a misunderstanding. Crosswalk itself only needs a very limited
set of permissions regarding network access in order to run. But the
default crosswalk AndroidManifest.xml adds a few more regarding webcam
and the like, such that trying various examples is easy.
We will make it more clear, and also advise downstream integrators,
that the default set of permissions is not the minimal one.
> I am aware of the method of rewriting the permissions from the manifest but
> its a very edgy solution. Do I really have to crack my own game to make it
> work? And if so - then whats the point of using Intel XDK/Crosswalk anyway,
> when I still have do the job manualy.
>
> Possible solution here would be Crosswalk just staying the heck away from
> permissions. Leaving the users with the task of adding them. Which btw was
> just like that in the previous Crosswalk version, where it all worked fine.
> The programmers, who have full access to the permissions setup within
> Crosswalk will be able to add them anyway. And we, Construct 2/Intel XDK
> users will be enabled again to produce games without cracking them after
> export.
Even if you are not calling yourself a programmer, it is important to
understand the basic concepts of security and permissions when
publishing software. I would very much suggest to read up on the
relevant documentation¹ and familiarise yourself with how they are
handled in the XDK or any other tools you are using. For a basic app
with network access, try starting with the following set of
permissions:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
Don't hesitate to ask if you have additional question.
Best,
Rob
¹ https://developer.android.com/guide/topics/manifest/manifest-intro.html#perms
--
I_R_B_I_S
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki
Business Identity Code: 0357606 - 4
Domiciled in Helsinki
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
_______________________________________________
Crosswalk-help mailing list
[email protected]
https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-help