Umeng 分享集成

第一步:

下載最新sdk >>>> 解壓 >>> main-libs /main-res  文件拷貝到項目中;


第二步:

拷貝各jar包


第三步:

配置AndroidManifast


<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE" /><uses-permissionandroid:name="android.permission.READ_PHONE_STATE" /><uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permissionandroid:name="android.permission.INTERNET" /><uses-permissionandroid:name="android.permission.READ_LOGS" /><uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION" /><uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION" /><uses-permissionandroid:name="android.permission.GET_TASKS" /><uses-permissionandroid:name="android.permission.SET_DEBUG_APP" /><uses-permissionandroid:name="android.permission.SYSTEM_ALERT_WINDOW" /><uses-permissionandroid:name="android.permission.GET_ACCOUNTS" /><uses-permissionandroid:name="android.permission.USE_CREDENTIALS" /><uses-permissionandroid:name="android.permission.MANAGE_ACCOUNTS" />


<!--umeng-->
<activity
    android:name="com.umeng.socialize.editorpage.ShareActivity"
    android:excludeFromRecents="true"
    android:theme="@style/Theme.UMDefault" />

<meta-data
    android:name="UMENG_APPKEY"
    android:value="******************"></meta-data>

<meta-data
    android:name="UMENG_CHANNEL"
    android:value="${UMENG_CHANNEL_VALUE}" />

<!-- 微信 -->
<activity
    android:name=".wxapi.WXEntryActivity"
    android:configChanges="keyboardHidden|orientation|screenSize"
    android:exported="true"
    android:screenOrientation="portrait"
    android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<!-- 微博 -->
<activity
    android:name=".wbapi.WBShareActivity"
    android:configChanges="keyboardHidden|orientation"
    android:screenOrientation="portrait">
    <intent-filter>
        <action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY" />

        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>
<activity
    android:name="com.sina.weibo.sdk.component.WeiboSdkBrowser"
    android:configChanges="keyboardHidden|orientation"
    android:exported="false"
    android:windowSoftInputMode="adjustResize" />

<service
    android:name="com.sina.weibo.sdk.net.DownloadService"
    android:exported="false" />

<!-- qq ,qzone -->
<activity
    android:name="com.tencent.tauth.AuthActivity"
    android:launchMode="singleTask"
    android:noHistory="true">
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />

        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />

        <data android:scheme="tencent1105421595" />
    </intent-filter>
</activity>
<activity
    android:name="com.tencent.connect.common.AssistActivity"
    android:screenOrientation="portrait"
    android:theme="@android:style/Theme.Translucent.NoTitleBar" />

第四步:

項目中添加文件

wbapi  >>>> WBShareActivity.java

wxapi  >>>>  WXEntryActivity.java


第五步:

build.gradle中配置


android{

//分包

productFlavors {
    meizu {}
    xiaomi{}
    baidu {}
    c360 {}
    huawei {}
    yingyongbao{}

    productFlavors.all { flavor ->
        flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
    }

}

}


/** 導入so文件 */
task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {
    destinationDir file("$projectDir/libs")
    baseName "Native_Libs2"
    extension "jar"
    from fileTree(dir: "libs", include: "**/*.so")
    into "lib"
}

tasks.withType(JavaCompile) {
    compileTask -> compileTask.dependsOn(nativeLibsToJar)
}

第六步:

初始化配置

在Application >>> onCreate 中添加


PlatformConfig.setWeixin("wx967daebe835fbeac","5bb696d9ccd75a38c8a0bfe0675559b3");//微信 appid appsecretPlatformConfig.setSinaWeibo("3921700954","04b48b094faeb16683c32669824ebdad");//新浪微博 appkey appsecretPlatformConfig.setQQZone("100424468","c7394704798a158208a74ab60104f0ba");// QQ和Qzone appid appkeyPlatformConfig.setAlipay("2015111700822536");


第七步:

調用


case R.id.qq:
    //不設置withTitle報失敗
    //不設置withText不顯示標題
    //兩個設一樣的值顯示兩個標題
    //其中一個設空,不顯示標題
    new ShareAction(this)
            .setPlatform(SHARE_MEDIA.QQ)
            .setCallback(umShareListener)
            .withTitle("分享")
            .withText(shareTitle)
            .withTargetUrl(shareUrl)
            .withMedia(imgLocal)
            .share();
    break;
case R.id.qqzone:
    new ShareAction(this)
            .setPlatform(SHARE_MEDIA.QZONE)
            .setCallback(umShareListener)
            .withText(shareTitle)
            .withTargetUrl(shareUrl)
            .withMedia(imgLocal)
            .share();

    break;
case R.id.wb:
    new ShareAction(this)
            .setPlatform(SHARE_MEDIA.SINA)
            .setCallback(umShareListener)
            .withText(shareTitle)
            .withTargetUrl(shareUrl)
            .withMedia(imgLocal)
            .share();
    break;
case R.id.wx:
    new ShareAction(this)
            .setPlatform(SHARE_MEDIA.WEIXIN)
            .setCallback(umShareListener)
            .withText(shareTitle)
            .withTargetUrl(shareUrl)
            .withMedia(imgLocal)
            .share();
    break;
case R.id.wxcricle:
    //withTitle  withText都設置了纔對
    new ShareAction(this)
            .setPlatform(SHARE_MEDIA.WEIXIN_CIRCLE)
            .setCallback(umShareListener)
            .withTitle(shareTitle)
            .withText(shareTitle)
            .withTargetUrl(shareUrl)
            .withMedia(imgLocal)
            .share();
    break;


UMShareListener umShareListener = new UMShareListener() {
    @Override
    public void onResult(SHARE_MEDIA share_media) {
        Toast.makeText(MainActivity.this, share_media + " 分享成功啦", Toast.LENGTH_SHORT).show();
        doBack();
    }

    @Override
    public void onError(SHARE_MEDIA share_media, Throwable throwable) {
        Toast.makeText(MainActivity.this, share_media + " 分享失敗啦", Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onCancel(SHARE_MEDIA share_media) {
        Toast.makeText(MainActivity.this, share_media + " 分享取消了", Toast.LENGTH_SHORT).show();
    }
};


發佈了60 篇原創文章 · 獲贊 18 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章