将数据从活动传递到服务? Android的

时间:2015-02-02 08:25:17

标签: android android-service

我可以通过ServiceIntent传递数据的数量。我将7个数据传递给Service,但后两个数据为null

此代码位于MainActivity.class

    Intent Class = new Intent(MainActivity.this, Class_Service.class);
    Class.putExtra("Url", URL);
    Class.putExtra("Username", Username);
    Class.putExtra("PASSWORD", PASSWORD);
    Class.putExtra("Mobile", Mobile);
    Class.putExtra("HQStudentID", HQStudentID);
    Class.putExtra("_SchoolCode", SchoolCode);
    Class.putExtra("_GroupID", GroupID);

这是我的Service

public class Class_Service extends Service{
    String Webresponse;
    String URL ;
    String Username;
    String PASSWORD;
    String Mobile;
    String HQStudentID;
    String SchoolCode;
    String GroupID;


    @Override
    public IBinder onBind(Intent arg0) {
        return null;
    }

    @Override
    public void onStart(Intent intent, int startId) {
        handleStart(intent, startId);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        handleStart(intent, startId);
        return START_NOT_STICKY;
    }

    void handleStart(Intent intent, int startId) {
        URL = intent.getStringExtra("Url");
        Username = intent.getStringExtra("Username");
        PASSWORD = intent.getStringExtra("PASSWORD");
        Mobile = intent.getStringExtra("Mobile");
        HQStudentID = intent.getStringExtra("HQStudentID");
        GroupID = intent.getStringExtra("_GroupID");
        SchoolCode = intent.getStringExtra("_SchoolCode");

        Log.i("test", "HERE : : :" + GroupID + "::" + SchoolCode);
    } 
}

所有参数都有值,但GroupIDSchoolCodenull

当我通过GroupIDSchoolCode MainActivity有值时。

2 个答案:

答案 0 :(得分:1)

有两件事可能导致问题:

1:您正在尝试发送一个整数并尝试将其作为服务上的字符串。检查数据类型并修复是否有错误。

2:数据可能为空。检查putcat上的所有数据,然后查看所有数据都有一些值。

希望它有所帮助。

最佳, 麦克

答案 1 :(得分:0)

如果您传递整数,请使用intent.getIntExtras(“tag”)和字符串intent.getStringExtra(“tag”)。