Custom URI로 웹에서 앱 호출하기

안드로이드에는 Custom URI라는 연동방식이 존재합니다. 

아래는 이와 관련해서 이전에 포스팅 내용을 참고하시면 됩니다 .


[Android] Custom Scheme 생성에 대한 메모


오늘은 웹브라우저에서 네이티브 앱을 호출하는 방식을 알아보겠습니다. 

관련 자료는 아래의 페이지에 잘 나와 있습니다. 


Android Intents with Chrome


호출받을 네이티브 앱의 Manifest.xml에 아래와 같이 Custom URI를 설정합니다. 

스키마명과 호스트명을 설정해 주는 것이죠. 


        <activity

            android:name=".TargetActivity"

            android:label="@string/app_name" 

            android:theme="@android:style/Theme.Translucent.NoTitleBar"

            android:excludeFromRecents="true"            

            >

            <intent-filter>

<action android:name="android.intent.action.VIEW" />

<action android:name="android.intent.action.MAIN" />

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

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

                <category android:name="android.intent.category.LAUNCHER" />

                

                <data android:scheme="myScheme" android:host="myHost" />

            </intent-filter>

        </activity>


기본적으로 Custom URI는 아래와 같은 형식으로 간단히 호출해주면 됩니다. 

같은 앱이든 다른 앱이든 상관이 없죠. 


Uri uri = Uri.parse("myScheme://myHost);

Intent i = new Intent();

i.setAction(Intent.ACTION_VIEW);

i.setData(uri);

startActivity(i);


아래는 이와 동일한 방식으로 단말 내 웹브라우저에서 네이티브 앱을 호출하는 방법입니다. 

서버의 특정 웹페이지 내에 아래와 같은 <A>태그를 작성합니다. 


<a href="intent://myHost/#Intent;scheme=myScheme;package=com.example.myapp;end"> 

링크문구 

</a>


파라미터를 넘겨주고 싶은 경우, 아래와 같이 호스트명 이후에 파라미터를 추가해줍니다. 


<a href="intent://myHost?param1=hello&param2=world/#Intent;scheme=myScheme;package=com.example.myapp;end"> 

링크문구 

</a>


감사합니다. 


Lock Screen (Key Guard) 설정 / 해제



  • 권한
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>


  • Lock 해제
    private void disableKeyguard() {
    KeyguardManager keyguardManager 
                        = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE);
    KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
    lock.disableKeyguard();
    }


  • Lock 설정

    private void disableKeyguard() {

    KeyguardManager keyguardManager 

                        = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE);

    KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);

    lock.disableKeyguard();

    }

SubversionEdge 실행하기 II

이전 포스트에서 가상머신PC인 우분투에서의 SubversionEdge 접속내용르 살펴보았습니다. 

본 포스트에서는 이러한 SubversionEdge 접속을 호스트PC에서 가능하게 하는 NAT 설정에 대해 살펴보겠습니다. 


일단 VMWare 관련 네트워크 설정부를 살펴보겠습니다. 



그리고 아래는 윈도우즈 네트워크 상태이구요. 

위 그림에서 확인했듯이 VMNet8 항목을 주의깊게 확인하셔야 합니다. 



마지막으로 우분투 네트워크 상태입니다. 



위와같이 VMNet8 항목으로 네트워크 설정정보가 기재되어 있습니다. 

VMWare의 상단 메뉴 중 Edit 하위의 Network Editor 항목을 선택하여 아래의 설정화면을 띄워줍니다. 


이 설정부분은 NAT 설정을 통해 호스트PC인 윈도우즈에서 가상머신PC로의 연결을 하기 위한 부분입니다. 



이곳에서 VMNet8 항목에 대한 NAT 설정을 해줘야 합니다. 

중간쯤에 보이는 NAT Settings... 버튼을 눌러줍니다. 



사용자별로 설정이 다르겠지만, 저 같은 경우는 SubversionEdge의 GUI 인터페이스를 브라우저에서 사용하기 위해 80포트를 설정하였고, putty 등의 유틸로 SSH를 접속하기 위해 22번과 23번 등을 설정하였습니다. 



또한 브라우저 접속시, 사용되는 포트가 3343 포트이므로 이것또한 함께 설정해 주었으며 실제 SVN 저장소를 활용하기 위해 18080 포트도 함께 설정해 주었습니다. 


모든 포트포워딩 설정이 끝나면, 이제 호스트PC에서 브라우저를 띄워 접속을 시도해 봅니다. 



위와같이 가상머신PC에 설치된 SubversionEdge로의 접속이 완료되었습니다. 

접속 이후에는 가상머신PC에서 하던대로 동일하게 사용이 가능합니다. 



그러면 실제 저장소는 사용이 가능할까?

확인해 보겠습니다. 



먼저 저장소를 하나 생성해 줘야겠죠. 

그 이후 호스트PC에서 잘 되는지 확인해 보니, 정상적으로 commit 등의 처리가 가능합니다. 



본 포스트에서는 VMWare를 이용하여 가상머신 PC에 SubversionEdge를 설치한 경우에 대한 NAT설정과 그 이후의 확인방안에 대해 살펴보았습니다. 



'기술참고자료 > SubversionEdge' 카테고리의 다른 글

SubversionEdge 실행하기 I  (0) 2013.07.24
SubversionEdge 설치하기  (0) 2013.07.24
SubVersionEdge 란?  (0) 2013.07.24

SubversionEdge 실행하기 I

설치가 완료된 SubversionEdge를 실행해 보겠습니다. 

저의 경우 VMWare에 우분투를 설치하여, Desktop 디렉토리 하위에 설치를 하였습니다. 



위와같이 bin/csvn start 명령을 이용하여 어플리케이션을 시작합니다. 

이때 어플리케이션의 시작을 위해 약간의 시간이 필요합니다. 


일단 우분투에서 파이어폭스 브라우저를 띄워 SubversionEdge에 접속해 보겠습니다. 

기본적으로 계정과 비번은 'admin/admin'이며, 로그인 후 SVN은 최초 미동작 상태입니다. 



위에서 보는 것과 같이 웹 인터페이스를 통해 보다 쉽고 빠르게 SVN 관련 설정과 관리를 수행할 수 있습니다. 


그런데 저와 같이 가상머신에 설치한 경우, 호스트PC에서 접속을 하지 못하는 결과가 초래됩니다. 

이러한 경우 VMWare의 NAT 설정을 통해 가상머신PC로의 접속을 가능하게 설정할 수 있습니다. 


다음 포스트를 통해 NAT 설정내용을 살펴보겠습니다. 


'기술참고자료 > SubversionEdge' 카테고리의 다른 글

SubversionEdge 실행하기 II  (0) 2013.07.24
SubversionEdge 설치하기  (0) 2013.07.24
SubVersionEdge 란?  (0) 2013.07.24

SubversionEdge 설치하기

본 매뉴얼은 ‘CollabNet Subversion Edge’ 제품을 서버에 설치하기 위한 문서로서, 서버 제품군은 우분투 서버를 기준으로 합니다.


필수요구사항


  • Java 1.6 JRE/JDK

  • Python 2.4 또는 이상의 버전


설치과정


  1. Java의 설치여부를 확인합니다.

    1. $JAVA_HOME/bin/java -version

    2. 설치되어 있지 않은 경우, 아래의 명령어를 통해 설치과정을 수행합니다.

      1. add-apt-repository를 사용하기 위한 패키지 설치

apt-get install python-software-properties

      1. Oracle Java 설치를 위한 repository 추가

add-apt-repository ppa:webupd8team/java

      1. 추가한 repository 적용

apt-get update

      1. 원하는 버전의 자바 설치 - 6버전으로 설치

apt-get install oracle-java6-installer

      1. 설치된 자바 버전확인

java -version


java version "1.6.0_43"

Java(TM) SE Runtime Environment (build 1.6.0_43-b01)

Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01, mixed mode)


  1. $JAVA_HOME 환경변수 등록하기

    1. JDK가 설치된 경로를 확인합니다.

(위 1번 매뉴얼대로 설치하는 경우 아래와 같은 경로로 설치됩니다.)

/usr/lib/jvm/java-6-oracle

    1. PATH 설정

      1. /etc/profile 문서파일을 열어줍니다. (vi 또는 vim 사용)

      2. 조건문 등의 기존 소스코드 최하단에 아래의 내용을 추가합니다.

#JAVA_HOME

JAVA_HOME=/usr/lib/jvm/java-6-oracle

PATH=$PATH:$JAVA_HOME/bin

export JAVA_HOME

export PATH

      1. 수정된 파일을 저장하고 나옵니다.

      2. 아래의 명령을 한번 내려줍니다.

source /etc/profile

    1. 환경변수 설정이 정상적으로 이루어졌는지 확인합니다.

echo $JAVA_HOME

echo $PATH

    1. 설정한 경로가 출력된다면 정상적으로 등록된 것 입니다.


  1. Python 설치하기

알아서 설치해주세요.


  1. SubVersionEdge 압축파일 다운로드

    1. Collab.net 웹사이트(http://www.collab.net/kr)에 접속합니다.

    2. 다운로드 페이지(http://www.collab.net/downloads/subversion)로 이동합니다.

    3. 운영체제 중 Linux를 선택합니다.

    4. 각 운영체제 버전에 알맞는 압축파일의 Download 버튼을 선택합니다.

(테스트의 경우 Subversion Edge 4.0 (Windows 32-bit)으로 설치하였음)

    1. 로그인 화면이 나온다면, ‘ID / PW’을 입력합니다.

    2. 로그인 완료시, 자동으로 압축파일이 다운로드 됩니다.

    3. 다운로드 완료시, 설치할 서버의 원하는 경로로 파일을 복사합니다.


  1. tar 압축파일 해제

    1. 아래의 명령을 통해 압축을 해제 합니다.

tar zxf CollabNetSubversionEdge-2.3.0_linux-x86_64.tar.gz

    1. 압축해제되어 생성된 디렉토리는 ‘csvn’이 될 것입니다.

    2. 해당 디렉토리 내부에 진입합니다.


  1. 서비스 동작방법

    1. 현재 위치에서 아래의 명령을 내려줍니다.

bin/csvn start

    1. 터미널 화면상에 진행바가 출력되며, 서비스 시작을 준비합니다.

    2. 완료시 완료메시지가 화면에 출력됩니다.


  1. 동작 확인방법

    1. 웹 브라우저를 동작합니다.

    2. http://localhost:3343/csvn 주소를 입력하여 진입합니다.

    3. 계정을 입력하라는 화면이 출력되면, 최초 보이는 안내 풍선도움말과 같이 ‘admin / admin’ 으로 진입합니다.



참고자료

SubVersionEdge 설치매뉴얼 영문

http://www.pothireddy.com/knowledge/source-version-control/subversion/install-subversion-edge-on-linux/


JAVA 설치과정

http://polaris.vartist.org/entry/Ubuntu-Diary-Ubuntu%EC%97%90-Java6-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0


Python 설치과정

http://askubuntu.com/questions/101591/how-do-i-install-python-2-7-2-on-ubuntu


VMWare에서의 NAT 설정과정

http://clansim.tistory.com/117


Ubuntu에서의 JAVA_HOME 설정과정

http://blog.naver.com/PostView.nhn?blogId=ssalzibi&logNo=40121068205


'기술참고자료 > SubversionEdge' 카테고리의 다른 글

SubversionEdge 실행하기 II  (0) 2013.07.24
SubversionEdge 실행하기 I  (0) 2013.07.24
SubVersionEdge 란?  (0) 2013.07.24