스마트 워치 메신저 알림


스마트 워치 메신저 알림입니다.

현재 카카오톡, 행아웃, 라인, 마이피플까지 개발되었습니다.

플레이 스토어 링크






만들면 금방 만드는데.. 아이콘 같은 거 만드는 데 오래 걸리네요. 회사일도 바쁘고.

두 개 이상의 알림 애플리케이션을 이용하신다면 그 중 하나만 접근성을 켜주세요.

다른 개발자의 접근성을 이용하는 애플리케이션과 같이 사용한다면 제대로 작동하지
않을 수 있습니다.

행아웃 알림은 휴대폰에 알림이 오는 즉시 알림이 사라집니다.(알림 확인됨)

알림 확인이 안된 상태에서 메시지가 계속 오면 내용이 안오고 메시지 카운트만 되네요.

혹시 상대방 사진이 안나온다면 liveware(smart connect) 에서 상대방 이미지 조정에서
다른 옵션을 이용해보세요. 휴대폰마다 다른 것 같군요.


업데이트 내역

1.4.0 에서는 시계에서 메뉴키 눌러서 시계에 있는 메시지를 삭제하는 기능이 추가되었습니다. (아이콘 안습 ㅜㅠ)
추후에는 휴대폰의 알림을 없애는 기능을 추가 할까 합니다.
(메신저의 메시지 삭제는 불가능합니다.)
솔직히 카톡이외에 잘 안 써서 잘 모르겠네요.
의견 및 문의는 댓글로 부탁드려요!


다른 애플리케이션의 노티피케이션 구독하기 #2

행아웃의 경우, 유저가 노티 확인을 안하면 이 후 받는 메시지는 내용이 안나오고
‘2개의 읽지 않은 메시지가 있습니다.’ 
요렇게 나온다… 행아웃만.

매번 알림을 없애서 해결해야겠다.

다른 애플리케이션의 context에 접근하는 건 되지만, 수정할 수는 없다.

수정하려 하면 security exception 이 발생한다.
remote context 의 notificationManager 에서 cancel() 을 호출하면…

10-27 12:22:09.525: E/AndroidRuntime(5055): java.lang.RuntimeException: Unable to start receiver com.mypackage.MyReceiver: java.lang.SecurityException: Calling uid 10141 gave packagecom.kakao.talk which is owned by uid 10152


구글링을 열심히 했는데 없어서 이것 저것 건드리다가 성공했다.
notification.deleteIntent.send(context,0,new Intent());

한줄만 넣고 예외처리만 해주면 된다. 
더불어, 노티 취소가 아닌 실행은 notification.contentIntent 로 해주면 된다.


다른 애플리케이션의 노티피케이션 구독하기 #1

스마트 워치를 구매한 걸 계기로 메신저 연동을 하다가 여기까지 왔다


1. 접근성 서비스 등록
접근성 서비스를 등록하게 되면 권한을 따와서 다른 애플리케이션의 노티까지 접근 가능해 진다.
매니페스트에 등록만 하면 서비스가 실행되지만, 같은 권한을 가진 두 개 이상의 서비스는 동시에 돌릴 수 없는 것 같다… (기능이 충돌 되므로) 따라서, 두 개 이상 APP 에서 돌리고 싶으면 하나가 숙주 열할을 하고 받은 녀석이 방송을 해주는 식으로 하면 될듯..

In manifest.xml
<service android:name=“com.mypackage.MyAccessibilityService”
        android:permission=“android.permission.BIND_ACCESSIBILITY_SERVICE”>
    <intent-filter>
        <action android:name=“android.accessibilityservice.AccessibilityService” />
    intent-filter>
    <meta-data
            android:name=“android.accessibilityservice”
            android:resource=“@xml/accessibilityservice” />
  service>

메타 데이터는 xml 로 작성한다.

in acessibilityservice.xml
<accessibility-service xmlns:android=“http://schemas.android.com/apk/res/android”
    android:accessibilityEventTypes=“typeNotificationStateChanged”
    android:accessibilityFeedbackType=“feedbackAllMask”
    android:notificationTimeout=“100” />

accessibilityEventType 이 같은 게 중복되면 안될 듯 하다..