您的位置:首页 > 移动开发 > Android开发

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");
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: