>

ACTIVITY 에서 데이터를 전달하려면 다음이 있습니다. 에서 SERVICE

public static final String SOMKEY = "asdf";
private void startWatcherService() {
    Intent serviceIntent = new Intent(MainActivity.this, servicefall.class);
    Bundle bundle = new Bundle();
    bundle.putInt(SOMKEY, value); //value is some changing int number
    serviceIntent.putExtras(bundle);
    this.startService(serviceIntent);
}

int 를 검색하려면   getInt() 를 사용하여   onCreate  서비스의

   Bundle b = new Bundle();
    if (b != null) {
        b.getInt("asdf", 0);
        int score = b.getInt("asdf", 0);
        Log.i("retrieve", "retrieved value: " + score);
    }

문제는 활동 상태가 다르더라도 검색된 값은 항상 0 (기본값)입니다. getInt() 를 사용하여 int를 검색하는 데 문제가 있습니까? ?

  • 답변 # 1

    알겠습니다. 문제를 해결했습니다!

    이 경우를 대비하여 여기에 두십시오 :

    만들기 OnStartCommand 방법 :

    public int onStartCommand(Intent intent, int flags, int startId) {
        int score = (int) intent.getExtras().get("asdf");
        Log.i("retrieve", "retrieved value: " + score);
        return score;
    }
    
    
    intent 를 사용하여 int를 검색하십시오.   onStartCommand 의 매개 변수  그리고 getExtras()   MainActivity 에서 전달한 것을 수집하기 위해 . 그런 다음 검색 할 키를 지정하십시오.

    다른 아이디어가 있으시면 언제든지 게시하십시오.

  • 답변 # 2

    getInt ()를 사용하여 int를 검색하는 데 문제가 있습니까?

    네가 잘못하고 있습니다. 당신은 getInt() 를 호출  그 bundle 의 참조에 방법  당신이 bundle 에서 자신을 만드는 것입니다  당신은 활동을 만드는 동안 전달합니다. "asdf"키가없는 새 번들 오브젝트를 작성하고 기본적으로 int의0

  • 이전 javascript - 유성 자동 양식에서 한 필드를 다른 필드의 값에 종속시키는 방법은 무엇입니까?
  • 다음 security - 취약한 요청을 통해 JSONP 에스컬레이션을 방지하기 위해 play2의 모든 JSON 응답 접두사