Android快速SDK(22)友盟升级统计库UmengUpdate【肌肉记忆,分钟接入】
2015-11-11 15:32
567 查看
代码:http://download.csdn.net/detail/huangbin95487710/9260735
依赖包模式
完整运行还需要用到以下依赖包
Android快速SDK(1)基础工具库QuickBase
基于友盟的升级统计SDK再次封装
基础类,需要继承相对应的基类UmengActivity
UmengActivityPager
UmengFragment
UmengFragmentActivity
UmengFragmentPager
以上的基类均集成了initInjectedView注释初始化代码
示例
@ViewInject(id = R.id.textView1, click = "onClick") private TextView textView1; @ViewInject(id = R.id.button1, click = "onClick") private Button button1;
继承后自动重写以下方法
页面名称
public abstract Class getActName();
在此页面是否检测升级
public abstract boolean isCheckUpdate();
在此页面是否统计信息
public abstract boolean isCheckLog();
AndroidManifest.xml添加配置
<application> <!-- ###################添加UmengAppkey###################### --> <meta-data android:name="UMENG_APPKEY" android:value="50cc517c5270153893000013" > </meta-data> <meta-data android:name="UMENG_CHANNEL" android:value="test" /> <!-- ###################添加UmengAppkey###################### --> <!-- ###################Umeng升级与统计################### --> <service android:name="com.umeng.update.net.DownloadingService" android:process=":DownloadingService" > </service> <activity android:name="com.umeng.update.UpdateDialogActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" > </activity> <!-- ###################Umeng升级与统计################### --> </application> <!-- ###################Umeng升级与统计权限################### --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <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" /> <!-- ###################Umeng升级与统计权限################### -->
添加混淆,详见依赖包proguard.cfg
示例代码
布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#FFffffff" android:gravity="center" android:orientation="vertical" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" /> </LinearLayout>
代码
package cn.whonow.whonow.viewinject; import General.System.MyLog; import General.Umeng.Update.UmengActivity; import General.Umeng.Update.Annotation.ViewInject; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; import cn.whonow.whonow.R; public class ViewInjectActivity extends UmengActivity implements OnClickListener{ @ViewInject(id = R.id.textView1, click = "onClick") private TextView textView1; @ViewInject(id = R.id.button1, click = "onClick") private Button button1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.test_viewinject); } @Override public Class getActName() { // TODO Auto-generated method stub return ViewInjectActivity.class; } @Override public boolean isCheckUpdate() { // TODO Auto-generated method stub return false; } @Override public boolean isCheckLog() { // TODO Auto-generated method stub return false; } @Override public void onClick(View v) { // TODO Auto-generated method stub MyLog.show(this, "dddd"); } }
相关文章推荐
- Android apk多渠道自动打包 - 不提供工具,只提供源码
- Android获取app应用程序大小的方法
- Android从服务器获取图片的实例方法
- Android开发之旅:HelloWorld项目的目录结构
- 【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性
- Android中Canvas绘图基础详解(附源码下载)
- android 开发环境搭建
- Android 6.0新特性
- android的Activity横竖屏切换时的生命周期
- Android仿Iphone通知角标的实现
- Android快速SDK(21)免费短信验证码库MobSms【肌肉记忆,分钟接入】
- Android 6.0新特性之Doze模式
- ViewStub用法
- 在解决密码输入框里不能输入中文以及空格时所找到的解决方案
- Android中PopupWindow的基本使用
- Android.Hook框架Cydia篇
- Android style and theme 小结
- 解决Android帧动画在Oncreate中启动只显示第一帧
- 《android 学习》一、Activity的生命周期
- Android中Touch事件的总结