w1100n
This site is best viewed in Google Chrome
5/30/2015 8:06 | Tag:,

装了个64位的Archlinux,发现adb用不了,运行adb提示没有这个文件或目录,进入到sdk的platform-tools目录下去运行还是不行。 运行一下file命令 $ file adb adb: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped 可以看到adb是一个32位的linux程序。 那么首先就需要装32的glibc了,在archlinux的官网包搜索里面搜索glibc   4 packages found. Arch Repo Name Version Description Last Updated Flag Date x86_64 … Continue reading

5/8/2015 16:15 | Tag:

最近使用Intent调用系统的拍照功能,并用onActivityResult方法中的data得到照片的bitmap,但是发现获取的照片资源是被压缩过的,而且被压缩的很小,那么如何得到未被压缩的原图片并按照自己的需要进行压缩呢? 在网上找了一些方法,那就是在跳转时添加intentPhote.putExtra(MediaStore.EXTRA_OUTPUT, uri); 这个属性,这种方式的过程就是将拍摄的图片存储到uri这个路径中,而onActivityResult只是负责显示这个照片,也就是说是提前确定存储的路径。下面上代码   view plaincopyprint? <pre name=”code” class=”java”>import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Matrix; import android.net.Uri; import android.os.Bundle; import android.os.Environment; import android.provider.MediaStore; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ImageView; public class MainActivity extends Activity { private Button mButton; private ImageView mImage; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mButton = (Button) findViewById(R.id.button1); mImage = (ImageView) findViewById(R.id.image_show); mButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // 跳转至拍照界面 Intent intentPhote = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); intentPhote.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1); File out = new File(getPhotopath()); … Continue reading

4/27/2015 13:00 | Tag:

http://my.oschina.net/jack1900/blog/290694   自定义控件系列结束了,打个回马枪,补上前段时间埋下的一个坑—“应用内语言切换”。APP语言改变是一个Configuration,但是这个Configuration和android手机屏幕旋转有点不大一样。屏幕旋转的时候,会destroy当前页面,并进行重新绘制。而切换语言后不会重新绘制页面,所以这种情况的出现造成了网上的一知半解小伙伴们哀声一片,不是在咒骂api的坑爹,就是在卖力的另辟蹊径想尽办法解决问题。思路都是很好的,目的也是坚决的,可是方向是错误的,把哥哥我也给带进了坑了,爬了好久才爬出这个深坑。所以今天在此把经验分享出来,希望以后大家不要和我踩到一个坑里。 简单介绍下这个需求的缘由,前段时间因公司业务需要,做了一款即时通讯软件。在这款应用里面有个设置页面,其中有一项“语言切换”功能,就是在使用APP的过程中,动态的去切换APP的语言,具体参照微信设置页面。起先想来是很简单的事情嘛,不就是个简单的资源国际化嘛,strings.xml资源文件一整还不给OK?真正动起手来就真不是这么一回事了,国际化是没问题,但是怎样能更改所有页面的文字资源呢,这是一个问题。下面介绍下网上找的几个方案。 一、API欺骗 烧制到手机中的android.jar包含了Android所需的各种类与方法;而供开发者使用的android.jar只是其中的一部分。API欺骗是指在应用中去模拟未公开的类和方法让应用编译通过并生成APK,然而在应用实际运行中调用的却仍是烧制到手机中真实的android.jar。 二、使用Java反射机制 IActivityManager与ActivityManagerNative都是非公开类,使用Java反射去调用其中的方法。 但是这个弊端是显而易见的,上述两种方法都是去更改系统的语言的类型,功能和你去设置页面去设置语言类型的效果一样。发现对当前系统设置了新的Locale后,不单自己的应用语系改变了,系统所有的应用语系都改变了。这肯定是不合理的。或许你会说,在退出app的时候,大不了再把语言给改回来呗。可是在Android里面,杀死APP的原因多种多样,有内存杀,有用户强杀,有滑动侧滑杀,你又能如何判断APP是何时被Kill的呢。下面介绍下我的解决方案,实现的效果还是不错的。依旧Github代码地址在最下方,有兴趣的同学可以去下载看下。 第一步、使用Android开放的api更改Configuration,同时把语言类型保存下来 第二步、Destroy当前页面,重新绘制才能更改语言类型 如果你的页面不是首页,你调用上述代码只会更新当前页面,压在栈中的Activity依然不会更新界面。比如微信设置语言成功后,会自动跳转到首页,当然首页的内容也是更新后的,它的实现方式也很简单,与我们上面写的大同小异。就是监听设置成功后,destroy所有存在的页面,再跳转到首页。这时你的app就能满足了上面的需求了,可是别急还有第三步。 第三步、只要你的应用不彻底从Dalvik或者ART中彻底移除,上述都没问题。但是如果重新开机,或者强制杀掉应用,再次启动,就恢复到以前的语言类型了。 这会我们就用到第一步中保存的语言的类型了,在所有页面的基类BaseActivity中,每次都调用下语言设置的方法,这样就能把页面给强制设置成业务需求的语言类型了。OK,这个问题就完满解决了,要为你的APP添加这个功能的话,对代码的改动是非常小的。下面附上代码地址:https://github.com/JackCho/SwitchLanguageDemo git地址:https://github.com/JackCho/SwitchLanguageDemo.git 如果觉得对你有所帮助,欢迎大家订阅我的微信公众账号——Android干货分享。下面是微信的二维码,为你提供及时高质的Android干货。

3/18/2015 0:44 | Tag:

东软信息学院的 Android SDK 镜像,比配置代理下载快多了。 配置地址, http://mirrors.neusoft.edu.cn/configurations.we#android 启动 Android SDK Manager ,打开主界面,依次选择「Tools」、「Options…」,弹出『Android SDK Manager – Settings』窗口; 在『Android SDK Manager – Settings』窗口中,在「HTTP Proxy Server」和「HTTP Proxy Port」输入框内填入mirrors.neusoft.edu.cn和80,并且选中「Force https://… sources to be fetched using http://…」复选框。设置完成后单击「Close」按钮关闭『Android SDK Manager – Settings』窗口返回到主界面; 依次选择「Packages」、「Reload」。 http://www.oschina.net/question/1399261_195245

2/4/2015 2:27 | Tag:

cordova invoke native code to support android service http://www.apkbus.com/android-88040-1-1.html   cordova sqlite http://lin-xi.diandian.com/post/2013-12-08/40060383406 http://blog.csdn.net/offbye/article/details/32321791     http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/ http://blog.jobbole.com/45670/ http://www.infoq.com/cn/articles/hybrid-app-development-combat http://weizhifeng.net/a-primer-on-hybrid-apps-for-ios.html http://www.infoq.com/cn/news/2014/12/supersonic-hybrid-apps-dev http://mobile.51cto.com/web-412307_all.htm http://www.zhihu.com/question/20997457 http://mobile.51cto.com/web-412307_all.htm http://mobile.51cto.com/hot-274040.htm http://www.zwmob.com/newsview-86.html http://www.infoq.com/cn/news/2014/12/supersonic-hybrid-apps-dev

2/4/2015 1:29 | Tag:

http://blog.csdn.net/zhongwcool/article/details/41939967 解决Fetching android sdk component information加载过长问题 安装完成后,如果直接启动,Android Studio会去获取 android sdk 组件信息,这个过程相当慢,还经常加载失败,导致Android Studio启动不起开。解决办法就是不去获取android sdk 组件信息。方法如下: 1)进入刚安装的Android Studio目录下的bin目录。找到idea.properties文件,用文本编辑器打开。 2)在idea.properties文件末尾添加一行:disable.android.first.run=true,然后保存文件。 3)关闭Android Studio后重新启动,便可进入界面。 这是由cnblog的@sonyi提供的方案,可用。 其实是如果不做这个修改, Android Studio每次启动都会去检查更新。

1/29/2015 15:55 | Tag:

download factory image from https://developers.google.com/android/nexus/images edit flash-all.sh and remove the -w command reboot to bootloader:   adb reboot bootloader for linux https://wiki.archlinux.org/index.php/android#Detect_the_device if failed http://www.inexus.co/thread-386-1-1.html https://blog.nraboy.com/2014/11/manually-update-nexus-device-android-5-0-lollipop/ nexus中文网原创教程,本文以nexus 5为例编写,其他nexus设备原理一样,只需下载不同的系统底包即可,转贴请注明。 谷歌目前针对nexus 4/6/7/9/10发布了安卓5.0.1系统底包,如果等不急ota的同学可以使用本教程升级! 准备工具:需要保证您的手机解锁了,如果没有解锁的话,需要先解锁,inexus论坛也很多办法,建议您用论坛置顶的帖子(其实bootloader模式里,用fastboot oem unlock即可解锁 ),已经解锁过的同学可以忽略。 以下是具体的步骤:(同学们如果有不明白的地方请单独发贴,不然无法回应) 1.首先下载adb,fastboot: http://pan.baidu.com/s/16AxVH 下载解压,将名称中含有adb和fastboot.exe复制到 c:/windows/system32下 然后再将名称中含有adb的所有文件复制到 c:/windows/system。 … Continue reading

1/20/2015 2:40 | Tag:

http://www.cnblogs.com/mengdd/archive/2013/01/11/2856374.html 一个Fragment的实例总是和包含它的Activity直接相关。 fragment可以通过getActivity() 方法来获得Activity的实例,然后就可以调用一些例如findViewById()之类的方法。 如: View listView = getActivity().findViewById(R.id.list); 但是注意调用getActivity()时,fragment必须和activity关联(attached to an activity),否则将会返回一个null。   相似的,activity也可以获得一个fragment的引用,从而调用fragment中的方法。 获得fragment的引用要用FragmentManager,之后可以调用findFragmentById() 或者 findFragmentByTag(). 比如: ExampleFragment fragment = (ExampleFragment) getFragmentManager().findFragmentById(R.id.example_fragment); 创建事件回调 一些情况下,可能需要fragment和activity共享事件,一个比较好的做法是在fragment里面定义一个回调接口,然后要求宿主activity实现它。 当activity通过这个接口接收到一个回调,它可以同布局中的其他fragment分享这个信息。 例如,一个新闻显示应用在一个activity中有两个fragment,一个fragment A显示文章题目的列表,一个fragment B显示文章。 所以当一个文章被选择的时候,fragment A必须通知activity,然后activity通知fragment B,让它显示这篇文章。 这个情况下,在fragment A中声明一个这样的接口OnArticleSelectedListener: public static class FragmentA extends ListFragment { … … Continue reading

1/18/2015 5:43 | Tag:

  androidjavaactivityonSaveInstanceStateBundle [coolxing按: 转载请注明作者和出处, 如有谬误, 欢迎在评论中指正.] 一般来说, 调用onPause()和onStop()方法后的activity实例仍然存在于内存中, activity的所有信息和状态数据不会消失, 当activity重新回到前台之后, 所有的改变都会得到保留. 但是当系统内存不足时, 调用onPause()和onStop()方法后的activity可能会被系统摧毁, 此时内存中就不会存有该activity的实例对象了. 如果之后这个activity重新回到前台, 之前所作的改变就会消失. 为了避免此种情况的发生, 开发者可以覆写onSaveInstanceState()方法. onSaveInstanceState()方法接受一个Bundle类型的参数, 开发者可以将状态数据存储到这个Bundle对象中, 这样即使activity被系统摧毁, 当用户重新启动这个activity而调用它的onCreate()方法时, 上述的Bundle对象会作为实参传递给onCreate()方法, 开发者可以从Bundle对象中取出保存的数据, 然后利用这些数据将activity恢复到被摧毁之前的状态. Java代码 <span style=”font-size: small;”>public class MainActivity extends Activity { public static final int SECOND_ACTIVITY = 0; private String temp; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 从savedInstanceState中恢复数据, 如果没有数据需要恢复savedInstanceState为null if (savedInstanceState != null) { temp = savedInstanceState.getString(“temp”); System.out.println(“onCreate: temp = ” + temp); } } public void onResume() { super.onResume(); … Continue reading

1/18/2015 3:38 | Tag:

after lock screen the system does not invoke the method on destory   今天遇到用户反映应用总是闪退。 现象:在MainActivity后,只要进入任何主进程相关的二级界面,都会导致应用闪退(注:不是崩溃引起的,只是闪退) 分析:1.看log日志,退出前有抛出异常,但查看该处代码发现异常已经被catch住,异常信息被打印出来而已。 2.怀疑是每个Activity实现时,其父类BaseActivity有干坏事,则重新自定义了一个Activity不继承自父类,发现现象仍存在,该Activity仍闪退。(vinney,thanks) 3.发现每次MainActivity的自定义的exitApp()都被调用了,设置断点,发现是由onDestory()发起的,而onDestory()则是由系统调用的。 4.怀疑每个Activity的onDestory()在从屏幕消失后都会被立即调用,写了个小demo,得到验证。开始怀疑是机子问题。 5.google关键字”三星 Activity 闪退”真相出来了,发一有笑点的帖子http://zhidao.baidu.com/question/493015963.html。至此定位原因。 原因:此三星设备中,有一个“开发者选项→不保留活动(用户离开后立即清除每个活动)”,即会导致进入从MainActivity离开后都会调用MainActivity.onDestory(),导致执行退出操作,闪退(edit by sodino) 恢复:取消掉“不保留活动”的选项即可 有没有即使勾选了”不保留活动”但app内能解决的方法?可以,在MainActivity处的onDestory()不调用退出应用操作。可能重写finish(),当代码明确调用finish()后再执行退出应用操作。但仍会有个缺点即为Activity.onDestory()后,从二级界面按返回键回到MainActivity时,会有一段短暂的黑屏,然后才恢复的情况。 安卓4.0之后的版本,在设置–辅助功能–开发人员工具中,多出很多选项,其中有一项是“不保留活动”(用户离开后即销毁整个活动)的选项,默认是不开启的。 该功能最初我一直以为是退出应用后或者关闭屏幕后关闭所有后台,应该不止我一个这么认为吧,其实不然。 举个例子,大家打开一个应用程序,比如ucweb,进入了一个网页百度,然后点了新闻,进入了百度新闻页面。一般情况下,uc默认这个时候之前的网页即百度首页还是保存在内存中的,只要按一下返回按钮,马上就可以回到原来的页面,加载非常迅速。但是当开启了“不保留活动”功能之后,相当于当你进入百度新闻页面之后,之前的百度首页的页面就直接kill了,这个时候如果返回的话,又要重新加载百度首页了。 上面这个例子不完全准确,只是比较容易理解。想要说明的是,不保留活动其实是离开前一个页面之后,前一个页面就会直接被k掉,如果返回则需要重新加载。 再举个例子,新浪微博,当你在看微博,然后点击了其中一条微博查看详细内容,看完返回,一般情况下这个时候直接回到原来你查看的地方,但是当开启“不保留活动”之后,你返回,系统会重新加载微博首页的页面,这样不仅需要重新加载的时间,而且又会从头开始。 而且目前大部分软件不支持该功能,所以会造成非常多的bug,我在使用过程中发现很多软件因此无法使用,比如zaker,进入首页的图片之后,无法进入下一界面,一直提示出错。还有不少网友反馈勾选了该选项之后,一些游戏以及QQ会出现闪退现象,不能够设置和读取数据。 所以,建议大家不要开启该功能。 http://blog.csdn.net/sodino/article/details/9774779 http://www.nnsjdd.com/thread-1066-1-1.html

1/12/2015 9:00 | Tag:

http://www.appkg.com/2842.html 2013年11月21日 安卓游戏’资讯 7,320 次阅读 暂无评论 对于爱分享的玩家来讲,如果能够游戏过程录制成视频发到视频网站上去那么这无疑是一件非常有乐趣的事情。对于需要表现技术的高端玩家、对于需要分享教程操作的玩家甚至对于移动游戏的从业者来讲自带屏幕录制实在是大大简化了工作难度! 在首次看到Android 4.4(Kitkat)会自带视频录制功能的时候个人还十分激动,等到真相大白的时候不禁大失所望,因为屏幕录制功能根本就没有在手机中开启,而只能通过adb shell命令来完成,操作上面同当初那个完全不成熟的安卓系统操作相似,就如当初截屏都要ADB命令一样。 不过本着好奇的心理还是有必要来玩一下这个屏幕录制功能。 首先你需要安装Android SDK,这是前提条件,下载地址:http://developer.android.com/sdk/index.html,安装并配置完毕,可以将adb.exe的路径也加到环境变量之中; 其次手机开启调试模式,电脑端开始-运行-CMD进入DOS命令窗口 CD 命令进入xxxx/platform-tools目录,因为adb.exe是在这个目录之下,如果前面提到的路径配置好了则可以直接输入: adb shell screenrecord /sdcard/movie.mp4 然后回车,如果显示successfully,此时就会开始视频录制功能了。 默认的录制时间是3分钟,实际上应该是179s就终止了。 每次录制视频的命令都需要手动再输入一遍,由于名称一致因此后一次的会直接覆盖前一次的视频而不做任何提示,因此如果需要保存前面的视频最好重新命名。 默认视频的质量还算可以,码率大概在3300,1280*800分辨率下3分钟视频大小在60多M,另外最重要的一个缺点就是不支持音频录制,也就是说这个自带的录屏功能录出来的视频是没有音轨的无声视频。 下面是用这个功能录制的真实赛车3新版1.50的视频,质量还可以。

1/12/2015 8:48 | Tag:

http://blog.csdn.net/mengweiqi33/article/details/7679467 分类: Android学习笔记2012-06-20 13:41 5291人阅读 评论(0) 收藏 举报 浏览器androidhtmlurlfilescheme 一、启动android默认浏览器   Intent intent= new Intent(); intent.setAction(“android.intent.action.VIEW”); Uri content_url = Uri.parse(“http://www.cnblogs.com”); intent.setData(content_url); startActivity(intent); 这样子,android就可以调用起手机默认的浏览器访问。   二、指定相应的浏览器访问 1、指定android自带的浏览器访问 ( “com.android.browser”:packagename   ;“com.android.browser.BrowserActivity”:启动主activity) Intent intent= new Intent(); intent.setAction(“android.intent.action.VIEW”); Uri content_url = Uri.parse(“http://www.cnblogs.com”); intent.setData(content_url); intent.setClassName(“com.android.browser”,”com.android.browser.BrowserActivity”); … Continue reading

1/12/2015 5:12 | Tag:

create new android studio project copy following files to new project folder ‘libs’ folder ‘res’ folder ‘src’   edit build.gradle remove activity_my.xml remove my.xml remove MyActivity.java   cd project root run gradle build        

12/31/2014 9:01 | Tag:

浏览器控件是每个开发环境都具备的,这为马甲神功提供了用武之地,windows的有webbrowser,android和ios都有webview。只是其引擎不同,相对于微软的webbrowser,android及ios的webview的引擎都是webkit,对Html5提供支持。本篇主要介绍android的webview之强大。 A.       webview组件如何使用 1)             添加权限:AndroidManifest.xml中必须使用许可”android.permission.INTERNET”,否则会出Web page not available错误。 2)             在要Activity中生成一个WebView组件:WebView webView = new WebView(this);或者可以在activity的layout文件里添加webview控件: <WebView android:id=”@+id/wv” android:layout_width=”fill_parent” android:layout_height=”fill_parent” android:text=”@string/hello” /> 3)             设置WebView基本信息: 如果访问的页面中有Javascript,则webview必须设置支持Javascript。 … Continue reading

12/30/2014 9:32 | Tag:

http://mobile.51cto.com/android-386448.htm 越来越多的开发者热衷于使用html5+JavaScript开发移动Web App。不过,HTML5 Web APP的出现能否在未来取代移动应用,就目前来说,还是个未知数。一方面,用户在使用习惯上,不喜欢在浏览器上输入复杂的网址;另一方面,Html5 Web App 存放在服务器端,在每次使用时需要进行数据传递,会造成流量浪费。有些开发者不想接触复杂的JAVA代码,那么,有什么办法,既可以使用HTMl5开发应 用,又可以将其简单封装成APK文件呢? 一、Android SDK中的WebView 1.在要Activity中实例化WebView组件:WebView webView = new WebView(this); 2.调用WebView的loadUrl()方法,设置WevView要显示的网页: 互联网用:webView.loadUrl(“http://www.31358.com”); 本地文件用:webView.loadUrl(“file:///android_asset/XX.html”); 本地文件存放在:assets 文件中 3.调用Activity的setContentView( )方法来显示网页视图 4.用WebView点链接看了很多页以后为了让WebView支持回退功能,需要覆盖覆盖Activity类的onKeyDown()方法,如果不做任何处理,点击系统回退剪键,整个浏览器会调用finish()而结束自身,而不是回退到上一页面 5.需要在AndroidManifest.xml文件中添加权限,否则会出现Web page not available错误。 <uses-permission android:name=”android.permission.INTERNET” /> 缺点:如果是载入的是普通网页,没有什么问题,但如果是html5,封装后,在android2.3以上才能正常访问,android2.2及以下,SDK中的WebView还没完全支持HTML5 下面是具体例子: MainActivity.java package com.android.webview.activity; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.webkit.WebView; public class MainActivity extends Activity { … Continue reading

12/30/2014 9:13 | Tag:

http://blog.csdn.net/caszhao/article/details/6030425 je或jz //相等则跳(机器码是74或84) jne或jnz //不相等则跳(机器码是75或85) 常见的修改就是把对比部分的机器码中74改成75或者84改成85,在反编译的smali文件中,也是类似的。 相等比较符号在smali中的表示 符号 smali语法 Bao力破解修改 == if-eq if-eq改成if-ne != if-ne if-ne 改成 if-eq equals if-eqz if-eqz改成 if-nez !equals if-nez if-nez 改成if-eqz

12/30/2014 9:09 | Tag:

1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装)。 2.签名的步骤 a.创建key b.使用步骤a中产生的key对apk签名 3.具体操作 方法一: 命令行下对apk签名(原理) 创建key,需要用到keytool.exe (位于jdk1.6.0_24\jre\bin目录下),使用产生的key对apk签名用到的是jarsigner.exe (位于jdk1.6.0_24\bin目录下),把上两个软件所在的目录添加到环境变量path后,打开cmd输入 D:\>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore /*说明:-genkey 产生密钥        -alias demo.keystore 别名 demo.keystore        -keyalg RSA 使用RSA算法对签名加密        -validity 40000 有效期限4000天        -keystore demo.keystore */ D:\>jarsigner -verbose -keystore demo.keystore … Continue reading

12/30/2014 6:52 | Tag:

http://blog.csdn.net/caszhao/article/details/6030425   博客分类: java apktoolandroidjava 简介: Android apktool是一个用来处理APK文件的工具,可以对APK进行反编译生成程序的源代码和图片、XML配置、语言资源等文件,也可以添加新的功能到APK文件中。用该工具来汉化Android软件然后重新打包发布是相当简单的。 1、安装 1).首先安装需要JAVA环境,先下载JDK/JRE,点击下载,已经有JAVA环境的可跳过此步 2).到code.google上下载apktool.jar以及相关文件:http://code.google.com/p/android-apktool/downloads/list 点击下载apktool1.4.3.tar.bz2 和 apktool-install-windows-r04-brut1.tar.bz2 3).解压apktool-install-windows-r04-brut1.tar.bz2到任意文件夹,然后解压apktool1.4.3.tar.bz2,把apktool.jar拷贝至apktool-install-windows-r04-brut1.tar.bz2解压所在的文件夹下,此时文件下有aapt.exe、apktool.bat及apktool.jar三个应用。 4).点击开始菜单,运行,输入CMD回车,用cd命令转到刚刚解压的D:\My Documents\Desktop\apktool-install-windows-r04-brut1所在的文件夹,输入apktool,出现如下命令即说明安装成功(以下信息,即apktool使用命令)。 D:\My Documents\Desktop\apktool-install-windows-r04-brut1>apktool Java代码 收藏代码 Apktool v1.4.3 – a tool for reengineering Android apk files Copyright 2010 Ryszard Wi?niewski <brut.alll@gmail.com> Apache License 2.0 (http://www.apache.org/licenses/LICENSE-2.0) … Continue reading

next page
辽ICP备14012896