2016年10月11日 星期二

CORDOVA打包APP的cookie問題


用cordova打包html+js成APP時發現android不能存取cookie..找到下面文章參考解決

該檔案位置似乎版本不同不一定在那?

我的位置是在專案底下的"\platforms\android\src\io\cordova"裡面有個資料夾打開就會看到。

另外要注意的是修改好該檔案後存檔完記得關閉,不然再打包途中會出現說該檔案已修改..之後打包出來的APP會有些BUG跟問題...

用jquery的cookie也適用此方法。

參考網址:http://aubreyhsu.blogspot.tw/2015/05/documentcookie-dont-work-in-android.html

在利用cordova打包html和js時,發現document.cookie竟然寫不進手機裡,查資料才知道在android 3.1以上需要打開cookie寫入,操作如下:
1、打開專案底下的「\platforms\android\src\com\example\MainActivity.java」:
2、先「import android.webkit.CookieManager;」,
3、在 onCreate function裡面「CookieManager.setAcceptFileSchemeCookies(true);

範例如下:
import android.os.Bundle;
import android.webkit.CookieManager;
import org.apache.cordova.*;

public class MainActivity extends CordovaActivity
{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        CookieManager.setAcceptFileSchemeCookies(true);
        super.onCreate(savedInstanceState);
        // Set by <content src="index.html" /> in config.xml
        loadUrl(launchUrl);
    }
}