← Back to team overview

ubuntu-phone team mailing list archive

Re: Persisting cookies in Oxide

 

On 07/16/2014 06:53 AM, Olivier Tilloy wrote:
> 
> 
> 
> On Wed, Jul 16, 2014 at 7:04 AM, Robert Schroll <rschroll@xxxxxxxxx
> <mailto:rschroll@xxxxxxxxx>> wrote:
> 
>     On Tue, Jul 15, 2014 at 8:26 PM, Alexandre Abreu
>     <alexandre.abreu@xxxxxxxxxxxxx <mailto:alexandre.abreu@xxxxxxxxxxxxx>__> wrote:
> 
>         There might be a few reasons for that. Are you directly using the
>         Oxide.WebView or do you use it through the Ubuntu.Web.UbuntuWebView
>         component?
> 
> 
>     I'm using the Oxide.WebView directly, since I need to set some custom user
>     scripts.
> 
> 
>         If you are directly using the Oxide.WebView you might not have set the
>         dataPath for the WebContext of the Oxide WebView. Unless things have
>         changed, an empty dataPath means that the cookies/data resources are not
>         persisted,
> 
> 
>     That seems to have done it.  I already have a C++ module that returns
>     QStandardPaths::DataLocation (amongst other things), so I could replicate
>     the behavior of the UbuntuWebView easily enough.
> 
>     Do you know if it's possible to make Oxide read the cookies stored by
>     QtWebKit?  If so, does anyone know where QtWebKit stored its cookies?
> 
> 
> There’s not code readily available in oxide to import QtWebKit cookies, but I
> guess you could write some if you really need to.
> QtWebKit stores its cookies under $dataLocation/.QtWebKit/cookies.db, in an
> sqlite database.
> You might want to take a look at the "*cookie-store.[h|cpp]" files
> under http://bazaar.launchpad.net/~phablet-team/webbrowser-app/trunk/files/head:/src/app/webcontainer/,
> it has some logic to read/write cookies from/to QtWebKit and Chromium.
> 

If you want to do this to provide some sort of automatic upgrade in a click app,
note that application isolation will block access to outside of the application
specific directory. That said, if your app was previously working as a copnfined
click package, the QtWebkit cookies should be somewhere in one of app's writable
areas-- eg, ~/.cache/<pkgname>, ~/.config/<pkgname>, or ~/.local/share/<pkgname>.


-- 
Jamie Strandboge                 http://www.ubuntu.com/

Attachment: signature.asc
Description: OpenPGP digital signature


Follow ups

References