unity打包apk无法连接mysql_在U3D上测试连接MYSQL,读取增加记录都没问题,发布成APK失效...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

几个解决办法都尝试过了

1)提到的发布设置 更改设置.NET 模式

2)I18N.dll,I18N.West.dll,I18N.CJK.dll,System.data.dll,MySql.data.dll........都添加过了

3)代码贴上来 求解

using UnityEngine;

using System;

using System.Collections;

using System.Data;

using MySql.Data.MySqlClient;

using System.Collections.Generic;

using MySql.Data;

using System.IO;

using System.Net.NetworkInformation;

public class CMySql : MonoBehaviour {

public static MySqlConnection dbConnection;//Just like MyConn.conn in StoryTools before

static string host = "************";

static string id = "********"; //***不要变***

static string pwd = "*********"; //密码

static string database = "*******";//数据库名

static string result = "";

static string userimei="";

static string userimei_android="";

static string userimei_android2="";

private string strCommand = "Select id from userdata ;";

public static DataSet MyObj;

void Start () {

gameObject.SetActive(false);

//{

//host = GUILayout.TextField( host, 200, GUILayout.Width(200));

//id = GUILayout.TextField( id, 200, GUILayout.Width(200));

//pwd = GUILayout.TextField( pwd, 200, GUILayout.Width(200));

//if(GUILayout.Button("Test"))

//{

string connectionString = string.Format("Server = {0}; Database = {1}; User ID = {2}; Password = {3};",host,database,id,pwd);

openSqlConnection(connectionString);

MyObj = GetDataSet(strCommand);

//读取数据函数

ReaderData();

//}

//GUILayout.Label(result);

}

// On quit

public static void OnApplicationQuit()

{

closeSqlConnection();

}

// Connect to database

private static void openSqlConnection(string connectionString)

{

dbConnection = new MySqlConnection(connectionString);

dbConnection.Open();

result = dbConnection.ServerVersion; //获得MySql的版本

}

// Disconnect from database

private static void closeSqlConnection()

{

dbConnection.Close();

dbConnection = null;

}

// MySQL Query

public static void doQuery(string sqlQuery)

{

IDbCommand dbCommand = dbConnection.CreateCommand();

dbCommand.CommandText = sqlQuery;

IDataReader reader = dbCommand.ExecuteReader();

reader.Close();

reader = null;

dbCommand.Dispose();

dbCommand = null;

}

#region Get DataSet

public DataSet GetDataSet(string sqlString)

{

DataSet ds = new DataSet();

try

{

MySqlDataAdapter da = new MySqlDataAdapter(sqlString, dbConnection);

da.Fill(ds);

}

catch (Exception ee)

{

throw new Exception("SQL:" + sqlString + "\n" + ee.Message.ToString());

}

return ds;

}

#endregion

//读取数据函数

void ReaderData()

{

//IOS PC IMEI

NetworkInterface[] n = NetworkInterface.GetAllNetworkInterfaces();

userimei = n [0].GetPhysicalAddress().ToString();

//end

userimei_android=SystemInfo.deviceName;

userimei_android2 = SystemInfo.deviceUniqueIdentifier;

MySqlCommand mySqlCommand = new MySqlCommand ("Select * from userdata where uid='"+userimei+"' or uid2='"+userimei_android+"' or uid3='"+userimei_android2+"';", dbConnection);

//MySqlCommand mySqlCommand = new MySqlCommand ("Select * from userdata where uid='Daventh' or uid2='"+userimei_android+"';", dbConnection);

MySqlDataReader reader = mySqlCommand.ExecuteReader ();

if (reader.Read()) {

print ("ID:" + reader.GetInt32 (0) + "--IMEI:" + reader.GetString (1) + "--CID:" + reader.GetString (2));

gameObject.SetActive (false);

//gameObject.SetActive (true);

print (userimei + "||||" + userimei_android+"|||||"+userimei_android2);

//Time.timeScale=0;

} else {

gameObject.SetActive (true);

//gameObject.SetActive (false);

print ("mac-----"+userimei);

print ("macandroid-----"+userimei_android);

}

reader.Close();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值