在Android活动之间传递PHP会话

时间:2018-11-12 16:25:37

标签: java php android session

我正在开发一个Android应用程序,该应用程序在Web服务器中具有自己的数据库。我的问题是,当我在一个活动中创建登录会话时,会话变量不会传递给下一个活动。

我使用HttpURLConnection在以下两个活动中建立连接。 (用于更改网址的参数)

URL url = new URL(si_url);
HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();

在我的第二个PHP文件中,isset( $_SESSION['memberid'] )返回 false

<?php
require "conn.php";

session_start();
$value = $_SESSION['memberid'];

if(isset($_SESSION['memberid'])){
    echo (string)$_SESSION['memberid'];
}
else {
    echo "Error!";
}
?>

我怀疑这是因为我为2个活动创建了2个不同的连接。有什么解决办法吗?

1 个答案:

答案 0 :(得分:1)

使用CookieManager

解决
CookieManager cookieManager = new CookieManager();
try{
    CookieHandler.setDefault(cookieManager);
}catch(UnsupportedOperationException ex){
    ex.printStackTrace();
}

在执行HttpURLConnection

之前,只需将此代码放在应用程序中的某个位置即可