인 텐트는 Java에서 직접적인 아날로그가없는 Android의 매우 강력한 기능입니다. 당신이 사용하고자하는 것은 암묵적인 의도로 알려진 메커니즘입니다. 일] 적으로 한 활동을 다른 활동에서 실행하면 의도를 작성하고 시작할 활동을 지정합니다. 묵시적 인 텐트를 사용하면 작업 (Intent.ACTION_VIEW
)과 데이터 (음악 파일을 가리키는 URI)를 제공합니다. 암시 적 인 텐트를 사용하면 어떤 Activity가 처리를 수행 할 것인지 미리 알지 못해도 처리 할 수 있습니다.
의도를 으로 전달하면 OS는 가능한 가장 좋은 방법으로 데이터를 분석하려고 시도합니다. 일반적으로 데이터를 처리 할 수있는 앱 목록이 표시됩니다. 사용자가 적절한 앱을 선택하면 해당 앱이 인 텐트를 처리하여 음악 파일을 재생합니다. 잠재적으로 데이터를 처리 할 수있는 서비스로 등록한 모든 앱이 목록에 표시됩니다. 인 텐트를 지나면 사용자의 작업이 백그라운드로 진행되고 인 텐트를 처리하는 응용 프로그램이 포 그라운드로 이동합니다.
사용자가 활동의 의도를 처리하기 위해 앱을 선택하면 해당 앱은 사용자가 자신의 앱 데이터를 삭제할 때까지 활동별로 해당 종류의 의도를 처리하는 데 항상 사용됩니다.
official doc을보고 나서 더 구체적인 문제가있을 때 새로운 질문을하십시오. 도움말 MarsAtomic에 대한
package com.marsatomic.intentimplicitdemo;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity
{
public final static Uri URI = Uri.parse("http://www.marsatomic.com");
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button buttonConnect = (Button)findViewById(R.id.button_connect);
buttonConnect.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
Intent i = new Intent(Intent.ACTION_VIEW, URI);
startActivity(i);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
감사 :
는 여기에 URL을 엽니 다되는 브라우저 모르게 개방하는 매우 간단한 암시 적 의도 예를 보여주는 코드 샘플입니다. 내 앱이 파일을 재생해야 할 때마다 어떤 앱을 선택할지를 사용자에게 묻지 않고 대상 앱을 미리 결정할 수 있습니까? 또한, 나는 꽤 구체적인 문제가 있다고 생각합니다. 내 앱이 뮤직 플레이어를 제어하고 콘텐츠를 피드에 제공하기를 원한다. 내 앱이 실행되기 시작하면 특정 음악 파일을로드하고 뮤직 플레이어에 넣고 음악 플레이어를 시작해야합니다. 또한, 내 앱을 독립 뮤직 플레이어로 만들어서이 작업을 수행 할 수 있음을 알고 있습니다. 음악 플레이어 작성을 피할 수있는 대체 솔루션을 찾고 있습니다. –
내 대답에 세 번째 단락을 추가하여 명확하게 설명합니다. 암시 적 의도를 사용하면 절대적으로 음악 플레이어를 쓰는 것을 피할 수 있습니다. 귀하의 질문에 대한 답변을 얻으려면 미래의 독자를 위해 답변을 "수락 됨"으로 표시하고 새 질문에 추가로 구체적인 후속 문의를하십시오. – MarsAtomic
이 솔루션을 사용하면 Music Player를 사용하여 URI를 열 수 있습니다. 또한 내 앱 (재생/일시 정지/정지 등)에서 음악 플레이어를 제어하는 방법을 찾고 있습니다. –