相关依赖:
//极光推送
ndk {
//选择要添加的对应 cpu 类型的 .so 库。
abiFilters ‘armeabi’, ‘armeabi-v7a’, ‘arm64-v8a’
// 还可以添加 ‘x86’, ‘x86_64’, ‘mips’, ‘mips64’
}
manifestPlaceholders = [
JPUSH_PKGNAME : applicationId,
JPUSH_APPKEY : "bd5cc3baff381ef5800d4bff", //JPush 上注册的包名对应的 Appkey.
JPUSH_CHANNEL : "developer-default", //暂时填写默认值即可.
]
在 build.gradle上加入
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == ‘com.android.support’) {
if (!requested.name.startsWith(“multidex”)) {
details.useVersion ‘28.0.0’//根据你的底下appcompat-v7版本
}
}
}
}
implementation ‘com.squareup.okhttp3:okhttp:3.12.0’
implementation ‘com.squareup.okhttp3:logging-interceptor:3.12.0’
implementation ‘com.google.code.gson:gson:2.8.5’
implementation ‘com.android.support:recyclerview-v7:28.0.0’
implementation ‘com.github.bumptech.glide:glide:4.8.0’
implementation ‘com.jcodecraeer:xrecyclerview:1.5.9’
implementation 'cn.jiguang.sdk:jpush:3.1.6' // 此处以JPush 3.1.6 版本为例。
implementation 'cn.jiguang.sdk:jcore:1.2.5' // 此处以JCore 1.2.5 版本为例。
布局
activity_main
在这里插入代码片
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:layout_width="40dp"
android:layout_height="40dp"
android:id="@+id/button"
android:background="@drawable/timg1"
android:layout_gravity="right"
/>
<com.jcodecraeer.xrecyclerview.XRecyclerView
android:id="@+id/xRecyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</LinearLayout>
``
在这里插入代码片
线性布局 one_image
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<ImageView
android:id="@+id/image"
android:layout_width="100dp"
android:layout_height="100dp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="数据"
android:gravity="center"
/>
<TextView
android:id="@+id/price"
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="价钱"
android:gravity="center"
/>
</LinearLayout>
</LinearLayout>
在这里插入代码片
网格布局 two_image
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<ImageView
android:id="@+id/image1"
android:layout_width="170dp"
android:layout_height="150dp"
/>
<TextView
android:id="@+id/textView1"
android:layout_width="150dp"
android:layout_height="50dp"
android:text="数据"
android:gravity="center"
/>
<TextView
android:id="@+id/price1"
android:layout_width="150dp"
android:layout_height="50dp"
android:text="价钱"
android:gravity="center"
/>
</LinearLayout>
在这里插入代码片
清单文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.jingze21">
<!-- Required -->
<uses-permission android:name="com.example.jingze21.permission.JPUSH_MESSAGE" />
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<application
android:name=".Jpush.ExampleApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
androi