我試圖將通知發送給索尼活件設備索尼:SampleNotificationExtension:示例應用程序拋出異常
我已經安裝:com.sonyericsson.extras.liveware.extension.notificationsample,但我得到的錯誤和異常,而試圖運行它:
- 負載偏好活動到設備
- 檢查「活動」首選項屏幕
的弗洛上翼方法被稱爲在SampleExtensionService:
private void addData() {
Random rand = new Random();
int index = rand.nextInt(5);
String name = NAMES[index];
String message = MESSAGE[index];
long time = System.currentTimeMillis();
long sourceId = NotificationUtil
.getSourceId(this, EXTENSION_SPECIFIC_ID);
if (sourceId == NotificationUtil.INVALID_ID) {
Log.e(LOG_TAG, "Failed to insert data");
return;
}
String profileImage = ExtensionUtils.getUriString(this,
R.drawable.widget_default_userpic_bg);
ContentValues eventValues = new ContentValues();
eventValues.put(Notification.EventColumns.EVENT_READ_STATUS, false);
eventValues.put(Notification.EventColumns.DISPLAY_NAME, name);
eventValues.put(Notification.EventColumns.MESSAGE, message);
eventValues.put(Notification.EventColumns.PERSONAL, 1);
eventValues.put(Notification.EventColumns.PROFILE_IMAGE_URI, profileImage);
eventValues.put(Notification.EventColumns.PUBLISHED_TIME, time);
eventValues.put(Notification.EventColumns.SOURCE_ID, sourceId);
try {
getContentResolver().insert(Notification.Event.URI, eventValues);
} catch (IllegalArgumentException e) {
Log.e(LOG_TAG, "Failed to insert event", e);
} catch (SecurityException e) {
Log.e(LOG_TAG, "Failed to insert event, is Live Ware Manager installed?", e);
} catch (SQLException e) {
Log.e(LOG_TAG, "Failed to insert event", e);
}
}
的第一個問題是,「長的sourceID = NotificationUtil.getSourceId(這一點,EXTENSION_SPECIFIC_ID)」返回-1
我不知道如何改變,但文檔說這是一個可選字段。所以我刪除它,看看我是否能得到任何進一步:
拆卸時的sourceID代碼我上插入通話異常: 「java.lang.SecurityException異常:您沒有足夠的權限來進行插入」
我的環境: 的HTC One V的一個實時查看手腕尋呼機 http://www.amazon.co.uk/Sony-Ericsson-0001516170-LIVE-VIEW/dp/B00477X6DA 我已經得到了以下應用配對安裝 的LiveView 的SmartConnect(活件管理器)
我會很感激得到這個樣品任何幫助工作還是有的人們知道更簡單的方法來爲LiveWare執行簡單的文本通知。編輯: 取得了一些進展。在這裏找到一個模擬器: android-sdk \ add-ons \ addon-sony_add-on_sdk_1_0-sony-16 \ apk_files
我在手機上安裝了它。 「SampleExtensionService」在模擬器中正常工作。
我現在的想法是,附加示例與LiveView設備不兼容。
LiveView是否算作SmartWatch? – weston
我將它標記爲SmartWatch,因爲我沒有足夠的「分數」將其標記爲LiveWare。我的理解是Sony SmartWatch和LiveView Pager都使用LiveWare。我曾假設如果我可以將通知發送到也適用於Sony SmartWatch的LiveView設備。無論如何,該示例不適用於LiveView設備。 – user2848329