2019년 2월 27일 수요일

안드로이드 커스텀 스키마



- 커스텀 URL 스키마 주소를 통해 Activity를 실행
주소 : custom://page?text=hello


1. CustomSchemeActivity 생성

public class CustomSchemeActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_custom);

        // uri 읽기
        Uri uri = getIntent().getData();

        if (uri != null) {
            // 파라미터 읽기
            String text = uri.getQueryParameter("text");

            if (TextUtils.isEmpty(text) == false) {
                // 파라미터 값 표시
                TextView textView = findViewById(R.id.text);
                textView.setText(String.format("text = %s", text));
            }
        }
    }
}




2. AndroidManifests 설정

<activity android:name=".CustomSchemeActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />

<data
android:host="page"
android:scheme="custom" />
</intent-filter>
</activity>



3. 동작 확인
 - Intent 동작
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("custom://page?text=hello")));


- URL 동작
주소 : custom://page?text=hello



4. 샘플코드
소스코드
APK

 




댓글 없음:

댓글 쓰기