我如何将一些信息发送到android中的前台活动

时间:2015-07-10 13:36:19

标签: android android-activity

我想将一些String数据发送到之前打开的活动,该活动在前台运行而不通过Intents

进行调用

3 个答案:

答案 0 :(得分:1)

执行此操作的最佳方式是SharedPreferences。 SharedPreferences会将您的数据写入应用程序的apk中的键/值中的私有文件,即使您关闭设备也会持续存在。

您可以在onCreate中初始化SharedPreferences,如下所示: SharedPreferences sharedPreferences = getSharedPreferences(getPackageName(), MODE_PRIVATE)

要存储一个值,只需调用: sharedPreferences.edit().putString("myKey", stringValue).commit();

要从应用程序中的任何位置检索该值,请初始化SharedPreferences,然后使用以下代码: String myData = sharedPreferences.getString("myKey");

如果有帮助,请告诉我!

答案 1 :(得分:0)

您可以使用界面执行此操作" trick"。我将向您展示一个发送String的示例。

创建一个界面,如:

public interface Communicable {
    public void transportString(String data);
}

然后在活动上实现此界面:

public class MyActivity extends Activity implements Communicable {
    //any code

    @Override
    public void transportString(String data) {
        //do whatever what you wants
    }

    //any code
}

要完成,在新课程的构造函数中,使用 Communicable 作为参数并将 Activity 传递给它:

public class MyClass {
    private final Communicable communicable;

    public MyClass(Communicable communicable) {
        this.communicable = communicable;
    }

    public void myMethod() {
         //any code
         communicable.transportString("example");
    }
}

您可以做的另一件事是创建一个扩展 Application 的新类,并使用它来通过您的应用程序传输任何数据。

答案 2 :(得分:0)

简单方法共享偏好。很难用Sqlite或txt文件。