当前位置: 移动技术网 > IT编程>移动开发>Android > AndroidStudio Gradle基于友盟的多渠道打包方法

AndroidStudio Gradle基于友盟的多渠道打包方法

2019年07月24日  | 移动技术网IT编程  | 我要评论

街码,长春天气预报15天查询,上校爹地耍流氓

androidstudio由于使用了gradle的进行项目构建,使我们开发app方便很多,今天我就给大家列出几点是用gradle的方便之处。

一、androidstudio gradle第三依赖统一管理
二、androidstudio gradle基于友盟的多渠道打包
三、androidstudio安全管理签名文件keystroe和签名密码

好久没写博客了,今天写一篇关于多渠道打包的文章。
首先我们要下载友盟的jar包,然后照着文档配置即可。(这里就不过多讲解了,直接看我的代码)
文档地址:

这是我的mainactivity

public class mainactivity extends appcompatactivity {

 @override
 protected void oncreate(bundle savedinstancestate) {
  super.oncreate(savedinstancestate);
  setcontentview(r.layout.activity_main);
  // 场景类型设置接口,设置为普通统计场景类型
  mobclickagent.setscenariotype(this, escenariotype.e_um_normal);

  string appkey = "";
  string channal = "";
  try {
   appkey = packagemanageruitls.getmatedatavalue(this, "umeng_appkey");
   channal = packagemanageruitls.getmatedatavalue(this, "umeng_channel");
  } catch (packagemanager.namenotfoundexception e) {
   e.printstacktrace();
  }
  mobclickagent.umanalyticsconfig config = new mobclickagent.umanalyticsconfig(this, appkey, channal);

  mobclickagent.startwithconfigure(config);

 }

 public void onresume() {
  super.onresume();
  mobclickagent.onresume(this);
 }

 public void onpause() {
  super.onpause();
  mobclickagent.onpause(this);
 }
}

这里写了一个工具类,获取清单文件的meta-data节点对应的值

/**
 * 作者:lcw 16-9-8
 * 博客:http://blog.csdn.net/lsyz0021/
 */
public class packagemanageruitls {
 /**
  * 获取 androidmanifest中application节点下meta-data节点的值
  *
  * @param context
  * @param key
  * @return
  * @throws packagemanager.namenotfoundexception
  */
 public static string getmatedatavalue(context context, string key) throws packagemanager.namenotfoundexception {

  applicationinfo appinfo = context.getpackagemanager().getapplicationinfo(context.getpackagename(), packagemanager.get_meta_data);

  string msg = appinfo.metadata.getstring(key);
  return msg;
 }

}

这是清单文件的配置

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
 package="com.hfax.umeng">

 <uses-permission android:name="android.permission.access_network_state" />
 <uses-permission android:name="android.permission.access_wifi_state" />
 <uses-permission android:name="android.permission.internet" />
 <uses-permission android:name="android.permission.read_phone_state" />

 <application
  android:allowbackup="true"
  android:icon="@mipmap/ic_launcher"
  android:label="@string/app_name"
  android:supportsrtl="true"
  android:theme="@style/apptheme">

  <meta-data
   android:name="umeng_appkey"
   android:value="57d11e6467e58e9051000d7e" />
  <meta-data
   android:name="umeng_channel"
   android:value="${umeng_channel_value}" />
  <meta-data
   android:name="base_url"
   android:value="${base_url}" />

  <activity android:name=".mainactivity">
   <intent-filter>
    <action android:name="android.intent.action.main" />

    <category android:name="android.intent.category.launcher" />
   </intent-filter>
  </activity>
 </application>

</manifest>

下面是核心的gredle配置
这里是测环境的配置(可以不配置,不影响多渠道)



渠道配置




打包生成apk

安装测试
首先测试安装包到友盟官网的渠道列表中可以看了。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网