2011-03-08 8 views
0

私はバックグラウンドで実行できるメディアプレーヤーを作っています。私はこのサービスで文字列uriを送信する必要があります。 私はバンドルを介して私の活動からのuri値を送信できません.Servicesクラスdoes notサポートgetIntent()とエラーを表示します。 どのようにして活動を通じてuriを送信できますか? これは私がこの例で使用する静的URLに取り組んでいるサービスで値を渡すには?

package com.abc.activity; 

import android.app.Service; 
import android.content.Intent; 
import android.media.MediaPlayer; 
import android.net.Uri; 
import android.os.Bundle; 
import android.os.IBinder; 
import android.util.Log; 
import android.widget.Toast; 

public class MyService extends Service { 
    private static final String TAG = "MyService"; 
    MediaPlayer player; 
    String uri,url; 
    Bundle b; 
    AudioPlayer2 ap; 


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

    @Override 
    public void onCreate() { 
     Log.d(TAG, "onCreate"); 

     Uri path=Uri.parse("/mnt/sdcard/download/abc.mp3"); 
     player = MediaPlayer.create(this,path); 
     player.setLooping(false); // Set looping 
    } 

    @Override 
    public void onDestroy() { 
     Toast.makeText(this, "My Service Stopped", Toast.LENGTH_LONG).show(); 
     Log.d(TAG, "onDestroy"); 
     player.stop(); 
    } 

    @Override 
    public void onStart(Intent intent, int startid) { 
     Toast.makeText(this, "My Service Started", Toast.LENGTH_LONG).show(); 
     Log.d(TAG, "onStart"); 
     //Bundle extras = getIntent().getExtras(); 
     player.start(); 
    } 
    public void getValue(String uri) 
    { 
     url=uri; 
    } 
} 

助けてください。私のアクティビティクラスからuriの値を取得することができます。このクラスでバンドルは動作しません。

答えて

-1

1つのアクティビティから別のアクティビティに文字列または文字列配列を送信しようとする場合、これはインテントで実行できます。 ClassAで

:ClassBので

Intent intent = new Intent(this, ClassB);
tring[] myStrings = new String[] {"test", "test2"};
intent.putExtra("strings", myStrings);
startActivity(intent);

public void onCreate() {
Intent intent = getIntent();
String[] myStrings = intent.getStringArrayExtra("strings");
}

+0

私は私のサービスクラスに一つの活性から文字列を送信します。これはアクティビティではありません。 –

+0

はい、あるアクティビティから他のアクティビティへの文字列にアクセスすることができます(サービスクラスまたは他のアクティビティ)。 – RAAAAM

関連する問題