当前位置: 首页>>代码示例>>Java>>正文


Java Announcements类代码示例

本文整理汇总了Java中com.google.samples.apps.iosched.provider.ScheduleContract.Announcements的典型用法代码示例。如果您正苦于以下问题:Java Announcements类的具体用法?Java Announcements怎么用?Java Announcements使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Announcements类属于com.google.samples.apps.iosched.provider.ScheduleContract包,在下文中一共展示了Announcements类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: fetchAndParse

import com.google.samples.apps.iosched.provider.ScheduleContract.Announcements; //导入依赖的package包/类
public ArrayList<ContentProviderOperation> fetchAndParse() throws IOException {
    final ArrayList<ContentProviderOperation> batch = Lists.newArrayList();

    // Set up the HTTP transport and JSON factory
    HttpTransport httpTransport = new NetHttpTransport();
    JsonFactory jsonFactory = new AndroidJsonFactory();

    // Set up the main Google+ class
    Plus plus = new Plus.Builder(httpTransport, jsonFactory, null)
            .setApplicationName(NetUtils.getUserAgent(mContext))
            .setGoogleClientRequestInitializer(
                    new CommonGoogleClientRequestInitializer(Config.API_KEY))
            .build();

    ActivityFeed activities;
    try {
        activities = plus.activities().list(Config.ANNOUNCEMENTS_PLUS_ID, "public")
                .setMaxResults(100l)
                .execute();
        if (activities == null || activities.getItems() == null) {
            throw new IOException("Activities list was null.");
        }

    } catch (IOException e) {
        LOGE(TAG, "Error fetching announcements", e);
        return batch;
    }

    LOGI(TAG, "Updating announcements data");

    // Clear out existing announcements
    batch.add(ContentProviderOperation
            .newDelete(ScheduleContract.addCallerIsSyncAdapterParameter(
                    Announcements.CONTENT_URI))
            .build());

    StringBuilder sb = new StringBuilder();
    for (Activity activity : activities.getItems()) {
        // Filter out anything not including the conference hashtag.
        sb.setLength(0);
        appendIfNotEmpty(sb, activity.getAnnotation());
        if (activity.getObject() != null) {
            appendIfNotEmpty(sb, activity.getObject().getContent());
        }

        if (!sb.toString().contains(Config.CONFERENCE_HASHTAG)) {
            continue;
        }

        // Insert announcement info
        batch.add(ContentProviderOperation
                .newInsert(ScheduleContract
                        .addCallerIsSyncAdapterParameter(Announcements.CONTENT_URI))
                .withValue(SyncColumns.UPDATED, System.currentTimeMillis())
                .withValue(Announcements.ANNOUNCEMENT_ID, activity.getId())
                .withValue(Announcements.ANNOUNCEMENT_DATE, activity.getUpdated().getValue())
                .withValue(Announcements.ANNOUNCEMENT_TITLE, activity.getTitle())
                .withValue(Announcements.ANNOUNCEMENT_ACTIVITY_JSON, activity.toPrettyString())
                .withValue(Announcements.ANNOUNCEMENT_URL, activity.getUrl())
                .build());
    }

    return batch;
}
 
开发者ID:gdg-bh,项目名称:AppDevFestSudeste2015,代码行数:65,代码来源:AnnouncementsFetcher.java


注:本文中的com.google.samples.apps.iosched.provider.ScheduleContract.Announcements类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。