# jiguang-sdk-java **Repository Path**: industry-software-open-source/jiguang-sdk-java ## Basic Information - **Project Name**: jiguang-sdk-java - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: customize - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-12 - **Last Updated**: 2025-05-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # jiguang-sdk-java 这是 Jiguang REST API 的 Java 版本封装开发包,是由极光推送官方提供的,一般支持最新的 API 功能。 ## 1. 集成 引入sdk包 ```xml io.github.jpush jiguang-sdk 5.1.14-customize ``` 引入log包 > 注意项目中已引用了logback、log4j、commons-logging等实现slfj接口的日志框架,则不需要配置。例如'example-for-spring'中引入了spring,自带logback框架,就不需要再配置。 ```xml ch.qos.logback logback-classic 1.2.11 ``` ## 2. Api 创建api对象 > 可根据自身情况设置client、host和loggerLevel ```java // appKey和masterSecret在极光官网-应用控制台获取 PushApi pushApi = new PushApi.Builder() .setHost(host) .setAppKey(appKey) .setMasterSecret(masterSecret) .setLoggerLevel(Logger.Level.FULL) .build(); DeviceApi deviceApi = new DeviceApi.Builder() .setHost(host) .setAppKey(appKey) .setMasterSecret(masterSecret) .setLoggerLevel(Logger.Level.FULL) .build(); ReportApi reportApi = new ReportApi.Builder() .setHost(host) .setAppKey(appKey) .setMasterSecret(masterSecret) .setLoggerLevel(Logger.Level.FULL) .build(); ScheduleApi scheduleApi = new ScheduleApi.Builder() .setHost(host) .setAppKey(appKey) .setMasterSecret(masterSecret) .setLoggerLevel(Logger.Level.FULL) .build(); GeofenceApi geofenceApi = new GeofenceApi.Builder() .setHost(host) .setAppKey(appKey) .setMasterSecret(masterSecret) .setLoggerLevel(Logger.Level.FULL) .build(); // 其他可自定义演示 okhttp3.OkHttpClient okHttpClient = new okhttp3.OkHttpClient().newBuilder() // .proxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("proxy_host", proxy_port))) // 可自定义代理,可选 .build(); PushApi pushApi = new PushApi.Builder() .setClient(new OkHttpClient(okHttpClient)) // sdk默认使用的feign-okhttp,可自定义,可选 .setOptions(new Request.Options(10, TimeUnit.SECONDS, 10, TimeUnit.SECONDS, false)) // 可自定义超时参数,可选 .setRetryer(new Retryer.Default(10, 10, 10)) // 可自定义重试参数,可选 .setLoggerLevel(Logger.Level.FULL) // 可自定义日志打印级别,可选 .setHost(host) // 必填 .setAppKey(appKey) // 必填 .setMasterSecret(masterSecret) // 必填 .build(); ``` 使用api示例 * [PushApi](https://github.com/jpush/jiguang-sdk-java/blob/customize/example-for-spring/src/test/java/cn/jiguang/app/api/PushApiTest.java) * [DeviceApi](https://github.com/jpush/jiguang-sdk-java/blob/customize/example-for-spring/src/test/java/cn/jiguang/app/api/DeviceApiTest.java) * [ReportApi](https://github.com/jpush/jiguang-sdk-java/blob/customize/example-for-spring/src/test/java/cn/jiguang/app/api/ReportApiTest.java) * [ScheduleApi](https://github.com/jpush/jiguang-sdk-java/blob/customize/example-for-spring/src/test/java/cn/jiguang/app/api/ScheduleApiTest.java) * [GeofenceApi](https://github.com/jpush/jiguang-sdk-java/customize/customize/example-for-spring/src/test/java/cn/jiguang/app/api/GeofenceApiTest.java) ## 3. 推送失败 推送失败会抛出异常,可对下面的类异常捕获后进行业务处理 ```java cn.jiguang.sdk.exception.ApiErrorException ``` ## 4. 第三方库引用说明 ``` 4.12.0 1.18.30 13.1 3.8.0 2.15.3 org.projectlombok lombok ${lombok.version} provided io.github.openfeign feign-core ${feign-core.version} io.github.openfeign.form feign-form ${feign-form.version} io.github.openfeign feign-slf4j ${feign-core.version} io.github.openfeign feign-okhttp ${feign-core.version} io.github.openfeign feign-jackson ${feign-core.version} com.squareup.okhttp3 okhttp ${okhttp.version} com.fasterxml.jackson.datatype jackson-datatype-jsr310 ${jackson-datatype-jsr310.version} org.bouncycastle bcpkix-jdk15on 1.68 ```