Languages

Menu
Sites
Language
tizen provider AndroidManifest.xml 설정 관련 문의드립니다.

tizen 기기와 연결하기 위해 AndroidManifast.xml 에 몇가지 퍼미션을 선언해주는데요
HelloAccessoryProvider 샘플에 있는 퍼미션 등록해 준것을 보면 
<uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="com.samsung.accessory.permission.ACCESSORY_FRAMEWORK" />
    <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY" />
    <uses-permission android:name="com.samsung.WATCH_APP_TYPE.Companion" />
    <uses-permission android:name="com.samsung.wmanager.ENABLE_NOTIFICATION" />
그리고 앱 내의 추가로 연결하기 위해 SAAgent를 상속받은 서비스, 
com.samsung.android.sdk.accessory.RegisterUponInstallReceiver, com.samsung.android.sdk.accessory.ServiceConnectionIndicationBroadcastReceiver 
리시버가 있습니다.

그리고 앱을 설치하려고 하면 
안드로이드 아이콘 : 진단정보 작성
삼성 기어 매니저 아이콘 : 프레임워크로 데이터 전송하기
가 보입니다.

꼭 필요한 것인지 문의드립니다.
그리고 무었때문에 디바이스 액세스 목록에 저 위의 2개가 보이는지 문의드립니다.

감사합니다.

Responses

8 Replies
daniel kim

안녕하세요..

Provider앱이 Samsung Accessory Service Framework를 통해 Gear와 Bluetooth로 연동하기 위해서 아래 permission이 등록되어야 합니다..

     <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="com.samsung.accessory.permission.ACCESSORY_FRAMEWORK" />
    <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY" />
    <uses-permission android:name="com.samsung.WATCH_APP_TYPE.Companion" />
    <uses-permission android:name="com.samsung.wmanager.ENABLE_NOTIFICATION" />

안드로이드 아이콘 : 진단정보 작성 --> 이것은 아래 permission 때문에 나오는 것 같네요..
  <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY" />

 

그리고, 아래 링크의 accessory sdk를 download받으면 Docs 폴더안에 ProgrammingGuide_Accessory.pdf란 문서가 있습니다. 여기에 좀더 자세한 설명이 있으니 참조하시면 될것 같습니다.

http://developer.samsung.com/galaxy#accessory

 

예슬 최

답변 감사합니다.

 

타이젠 기기를 연결하는 안드로이드 단말에 기어 매니저 앱을 설치 하지 않았을 경우에는 

A앱 설치 시 위의 '안드로이드 아이콘 : 진단정보 작성'은 뜨지만 '삼성 기어 매니저 아이콘 : 프레임워크로 데이터 전송하기'는 보이지 않는 것을 확인하였습니다.

그리고 기어 매니저 앱 미 설치 시 A앱 설치 후 타이젠 기기를 연결하면 서비스가 동작하지 않는 것을 확인하였습니다.

그래서 위의 환경에서 기어 매니저 앱 설치 후에도 동작하지 않는 것을 확인하였습니다.

그렇다면 꼭 동작을 하게 하려면 안드로이드 단말에 우선 기어 매너저 앱이 설치 되어야 하고 그 후 A앱을 설치해야 서비스가 정상적으로 동작합니까?

 

정리하자면 안드로이드 단말 기어 매니저 앱 설치 X -> A앱 설치 -> 타이젠 기기와 연결 -> 동작 X -> 기어 매니저 앱설치 후 -> 동작 X ...

그렇다면 꼭 우선적으로 안드로이드 단말에 A앱 설치 전에 기어매니저 앱을 설치해야 하는건가요?

 

그리고 디바이스 엑세스 항목에 '삼성 기어 매니저 아이콘 : 프레임워크로 데이터 전송하기' 가 띄워져야 안드로이드 단말에

기어매니저 앱이 설치되어 정상적으로 사용이 가능한 것으로 보면되는건가요?

daniel kim

안녕하세요..

단말기와 Gear가 연결하려면 Gear manager가 우선 단말기에 설치가 되어있어야 합니다. Gear manager가 설치되면 Samsung accessory service 가 같이 깔리면서 SAP으로 통신이 가능한것으로 알고있습니다. 

따라서 Gear manager가 설치되면 '삼성 기어 매니저 아이콘 : 프레임워크로 데이터 전송하기' 가 표시되고 Gear와 단말이 정상 연동될 것 같습니다.

 

예슬 최

답변 감사합니다.

 

그렇다면 기어 매니저 앱이 깔려있지 않고 A앱이 설치되었다면 기어와 정상 동작 하지 않기 때문에

꼭 A앱 삭제 후 다시 기어 매니저 앱을 설치하고 A앱을 설치해야 하는건가요?

 

daniel kim

안녕하세요..

Gear manager 설치후에 A앱을 재설치하시면 되지 않을 까 합니다. 반드시 A앱을 삭제할 필요는 없는 것 같습니다.

예슬 최

한가지 더 여쭈어 볼게 있습니다.

샘플소스를 보니 휴대폰과 기어와 파일을 공유할 땐 아래를 AndroidManifest.xml에 등록하여 사용하고 있습니다.

<provider
       android:name="android.support.v4.content.FileProvider"
       android:authorities="PACKAGENAME"
       android:exported="false"
       android:grantUriPermissions="true" >
       <meta-data
              android:name="android.support.FILE_PROVIDER_PATHS"
              android:resource="XMLFILEPATH" />
</provider>

이건 기어 매니저라든가 SDK에서 내부적으로 사용을 하는건지요..?

그리고 xml 파일로 들어가면 아래와 같이 정의가 되어있는데요

<paths xmlns:android="http://schemas.android.com/apk/res/android">
       <files-path name="my_images" path="." />
       <cache-path name="my_cache" path="." />
       <external-path name="ext" path="." />
</paths>

그냥 이렇게 파일을 공유하는 앱에 설정해 놓으면 되는지요?

 

 

예슬 최

답변 부탁드립니다.

daniel kim

안녕하세요...

FileTransfer Sample앱을 보니,  Provider앱에서 Samsung accessory service로 file 공유를 위해 android의 FileProvider를 사용하는 것 같습니다. FileProvider에 대해서는 아래 링크를 참조하시면 될 것 같습니다. 전송할 file이 특정 directory에 있다면 xml의 files-path 부분을 바꾸시면 될 것 같습니다.

    http://developer.android.com/training/secure-file-sharing/setup-sharing.html#DefineProvider

    http://developer.android.com/reference/android/support/v4/content/FileProvider.html