当前位置: 首页 > news >正文

wordpress 判断是否为首页国内做seo最好公司

wordpress 判断是否为首页,国内做seo最好公司,制作网页的模板的网站,世界上网站做的好的例子开发apk的时候当然要考虑保护好自己的代码,Android环境就提供了ProGuard来进行代码混淆,确实是一个非常有用的工具,但用起来也确实够折腾的。 1. 基本配置 eclipse下建立android工程,就会生成proguard.cfg和project.properties&am…

开发apk的时候当然要考虑保护好自己的代码,Android环境就提供了ProGuard来进行代码混淆,确实是一个非常有用的工具,但用起来也确实够折腾的。

Android代码混淆的实践

1. 基本配置

eclipse下建立android工程,就会生成proguard.cfg和project.properties,在后面的文件追加proguard.config=proguard.cfg即可让前面的配置文件在export时生效。默认的那个文件有一些内容,这里给一个更通用点的。

##—————Begin: proguard configuration common for all Android apps ———-
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontskipnonpubliclibraryclassmembers
-dontpreverify
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-keepattributes *Annotation*
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable

# 以下两个命令配合让类的路径给删除了
-allowaccessmodification
-repackageclasses ”

# 记录生成的日志数据,在proguard目录下
-dump class_files.txt
-printseeds seeds.txt
-printusage unused.txt
-printmapping mapping.txt

# 异常都可以忽略就打开
#-dontwarn

-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.app.backup.BackupAgentHelper
-keep public class * extends android.preference.Preference
-keep public class com.android.vending.licensing.ILicensingService
-dontnote com.android.vending.licensing.ILicensingService

-keepnames class * implements java.io.Serializable

# Explicitly preserve all serialization members. The Serializable interface
# is only a marker interface, so it wouldn’t save them.
-keepclassmembers class * implements java.io.Serializable {
static final long serialVersionUID;
private static final java.io.ObjectStreamField[] serialPersistentFields;
private void writeObject(java.io.ObjectOutputStream);
private void readObject(java.io.ObjectInputStream);
java.lang.Object writeReplace();
java.lang.Object readResolve();
}

# Preserve all native method names and the names of their classes.
-keepclasseswithmembernames class * {
native ;
}

-keepclasseswithmembernames class * {
public (android.content.Context, android.util.AttributeSet);
}

-keepclasseswithmembernames class * {
public (android.content.Context, android.util.AttributeSet, int);
}

# Preserve static fields of inner classes of R classes that might be accessed
# through introspection.
-keepclassmembers class **.R$* {
public static ;
}

# Preserve the special static methods that are required in all enumeration classes.
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}

-keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *;
}

# 如果你的工程是对外提供方法调用就打开
#-keep public class * {
# public protected *;
#}

##—————End: proguard configuration common for all Android apps ———-

2. 解决export打包的报错

这个时候export提示“conversion to Dalvik format failed with error 1”错误,网上说法有好多种,最后我还是把proguard从4.4升级到4.8就解决了。官方地址是http://proguard.sourceforge.net。上面的配置文件参数可以在这里查阅。

升级办法很简单,就是把android sdk目录下的tool/proguard目录覆盖一下即可。

3. 打包出来的程序如何调试

一旦打包出来,就不能用eclipse的logcat去看了,这里可以用android sdk中ddms.bat的tool来看,一用就发现和logcat其实还是一个东西,就是多了个设备的选择。

4. 使用 gson 需要的配置

当Gson用到了泛型就会有报错,这个真给郁闷了半天,提示“Missing type parameter”。最后找到一个资料给了一个解决办法,参考:http://stackoverflow.com/questions/8129040/proguard-missing-type-parameter。

另外我又用到了JsonObject,提交的Object里面的members居然被改成了a。所以上面给的东西还不够,还要加上

# 用到自己拼接的JsonObject
-keep class com.google.gson.JsonObject { *; }

我个人建议减少这些依赖包混淆带来的麻烦,干脆都全部保留不混淆。例如

-keep class com.badlogic.** { *; }
-keep class * implements com.badlogic.gdx.utils.Json*
-keep class com.google.** { *; }

5. 使用libgdx需要的配置

参考http://code.google.com/p/libgdx-users/wiki/Ant

6. 验证打包效果

我是利用了apktool的反编译工具,把打包文件又解压了看了一下,如果包路径、类名、变量名、方法名这些变化和你期望一致,那就OK了。命令:

apktool.bat d xxx.apk destdir

总结

这个东西用起来也不是很简单,特别是你程序用到的高级特性多,就更容易出问题。另外proguard的参数看起来确实也有点不好理解,打包过程慢,测试也比较浪费时间。东西虽好,但真不是那么容易上手。

转自 http://www.kuqin.com/mobile/20120622/320991.html

http://www.lbrq.cn/news/2735353.html

相关文章:

  • seo系统推广seo入门讲解
  • 二维码插件wordpress网站内容如何优化
  • 为什么网站建设公司越来越少百度的营销方式有哪些
  • 如何给公司做自己的网站百度关键词推广网站
  • 5个制造企业电子商务网站微信seo
  • 施工企业质量管理制度广州市口碑seo推广外包
  • 淮安网站建设公司电话网页设计费用报价
  • 做网站需要服务器还是主机网站优化员seo招聘
  • 重庆市建设执业资格注册管理中心网站网站优化招聘
  • b2b平台免费推广郑州seo优化外包顾问阿亮
  • 政府门户网站建设意义全国疫情最新名单
  • 青岛网站建设咨询百度词条官网入口
  • 网站制作流程 优帮云宁波seo推广优化
  • p2p网站建设规划百度公司怎么样
  • 营销型网站重要性网站seo排名优化软件
  • 南通专业网站建设公司惠州seo
  • 网站抠图怎么做的举例网络营销的例子
  • 新世纪建设集团有限公司网站seo营销推广服务公司
  • 商务网站创建经费预算快速优化官网
  • 机票便宜 网站建设seo优化博客
  • 服务器哪些端口可以做网站免费网站软件
  • 合肥学做网站app的学校软文代写价格
  • 小程序开发平台源代码下载北京seo做排名
  • 网站banner图做多大sem竞价教程
  • 委托完成网站建设合同模板网络营销试卷
  • 国外社交网站设计欣赏市场营销案例100例
  • 网站维护知识抖音广告投放平台官网
  • 网站后台管理模板下载seo关键词推广优化
  • 网站建设seo 视频教程发外链比较好的平台
  • 怎呀做网站网上销售有哪些方法
  • 【图论】分层图 / 拆点
  • 代码随想录Day52:图论(孤岛的总面积、沉没孤岛、水流问题、建造最大岛屿)
  • 强制从不抱怨环境。
  • Boost库中boost::function函数使用详解
  • 达梦数据库使用控制台disql执行脚本
  • OpenBMC中C++策略模式架构、原理与应用