【发布时间】:2014-02-15 20:58:28
【问题描述】:
我有一个 Android 库项目,供多个 Android 应用程序项目使用。一个库 jar(具有 .class 文件)附加到项目并位于 lib 文件夹中。
我正在尝试将变量 com.utility.Commons.outgoingSIP(字符串)设置为位于 jar 内的变量。
在 Commons.java 中声明:public static String outgoingSIP = "";
这是一个代码片段:
public void sendMessage(SIPMessage sipMessage, InetAddress receiverAddress, int receiverPort)
throws IOException {
long time = System.currentTimeMillis();
byte[] bytes = sipMessage.encodeAsBytes(this.getTransport());
sendMessage(bytes, receiverAddress, receiverPort, sipMessage instanceof SIPRequest);
Commons.outgoingSIP = receiverAddress.toString();
但变量永远不会改变。我也在顶部导入了它(import com.utility.Commons)。
还附上了库和源代码,否则程序将无法编译:
在 jar 中,我还可以 CTRL + CLICK Commons.outgoingSIP 变量,它会将我带到 commons.java。所以eclipse知道我在说哪个变量。
我错过了什么吗?谁能给我一些建议。
【问题讨论】:
-
您确定它“从不改变”,而不是在设置它的时间和您尝试访问它的时间之间丢失了更改?
-
我不确定它永远不会改变,因为我只是尝试将它打印到 LogCat。您提出了一个很好的问题,也许更改在设置时间和我访问它之间丢失了。
-
或许你需要更持久的存储机制
标签: java android variables class-library