效果
我最后做了一个软件,
不需要root,只需要把apk安装上就行了.可以让任意应用在任何地方下载下来直接安装,比如uc浏览器下载下来可以直接安装,比如蚂蚁市场下载直接安装.
前不久去姐夫家里玩,看个电视只有广电tv还只能试播30秒,这谁受得了,没法下载电视家这样的第三方应用,用adb安装了蚂蚁市场,可是奈何下载的软件还是用不了。
adb的开启
进入关于界面上上下下左右左右 进入 高级设置-其他 开启adb.
就可以通过adb安装蚂蚁市场
蚂蚁市场下载的软件无法安装,破解方法2个,
方法1
root可以用360root,通过adb替换文件
rm /sdcard/SaveSet.xml
adb push D:\tool\SaveSet.xml /sdcard/
adb shell
su
cp /sdcard/SaveSet.xml /data/data/com.tianci.appstore/shared_prefs/
chmod 444 /data/data/com.tianci.appstore/shared_prefs/SaveSet.xml
重启使其生效。
adb shell am force-stop com.android.packageinstaller
adb shell am force-stop com.tianci.appstore
在PackageInstallerActivity中
Log.i(TAG, "pkg:" + this.str_from_pkg + " pkgName:" + this.str_from_appName);
获得日志发现为android.所以添加android为白名单。
经过调试发现,其他应用识别为android.所以添加android为白名单,但是有时候识别的不是android,有时候安装打开比如安装器右边会显示蚂蚁市场,只需要把蚂蚁市场添加进去就行了。
方法2
创建应用包名设置为 com.coocaa.guard 通过这个应用来填写白名单应用来写入配置SaveSet.xml
.coocaa.guard";
private static final String PREFERENCE_PACKAGE_BK = "com.tianci.appstore
破解原理已经说了,需要白嫖获得应用的发个红包给我就行。
其它方法
其它方法比如伪造一个installer.apk但是遇到了很棘手的问题,通过直接修改apk跳过白名单检测无法成功,安装没反应,第二个方法是手机端执行 root shell命令,但是在酷开上的360root无法工作,只能在电脑终端正常工作,这个也行不通。
还有一个方法也是伪造一个安装器,然后接受到apk自动拷贝,我之前说过了,shell命令用不了。。所以我搞了好几天的研究,只能用这方法实现。
桌面的破解
为了解决老年用户的问题,不得不去研究怎么开机自动打开 电视,或者自动运行某些软件。一开机就那么多复杂的选项,老年人根本不会用。
破解桌面不是说你弄一个桌面应用设置axml里面的属性就行了,只只能把原来的apk卸载,并仿造它创建一个activity.com.coocaa.homepage.vast.HomePageActivity
然后把它弄为系统应用,否则会出现一些奇怪的问题,比如开机后还是不启动啊,看不到桌面啊,如果没有root那么连卸载系统应用都谈不上,就无法弹现在这个了。
卸载movieplatform的方法就是进入/system/vendor/app
找到一个叫Sky什么电影的apk,实际上appstore 和movieplatform的关系让我搞混淆了,我把系统的appstore.apk卸载了发现打不开一个叫应用圈的东西了,而系统启动则默认启动的是movieplatform.apk当然还有其他破解方法,那就是找到启动movieplatform的apk对他进行修改。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" android:compileSdkVersion="30" android:compileSdkVersionCodename="11" package="com.tianci.movieplatform" platformBuildVersionCode="30" platformBuildVersionName="11">
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="30"/>
<application android:theme="@style/AppTheme" android:label="@string/app_name" android:icon="@mipmap/ic_launcher" android:debuggable="true" android:testOnly="true" android:allowBackup="true" android:supportsRtl="true" android:roundIcon="@mipmap/ic_launcher_round" android:appComponentFactory="androidx.core.app.CoreComponentFactory">
<activity android:label="@string/app_name" android:name="com.coocaa.homepage.vast.HomePageActivity" android:excludeFromRecents="true" android:launchMode="singleTask" android:configChanges="locale|touchscreen|keyboard|keyboardHidden|navigation|orientation|screenLayout|uiMode|screenSize|layoutDirection">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<action android:name="coocaa.intent.action.HOME"/>
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.HOME.CC"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<activity android:name="com.coocaa.homepage.vast.ChooseAppActivity" android:screenOrientation="landscape"/>
</application>
</manifest>
image.png
最后 东西是有现成的,我已经弄好了,能不能找到靠你们自己了,实在不行给个红包我发给你,我弄这个东西在姐夫家待了一个星期才搞到满意的体验,当然我还研究了破解桌面的,桌面的需要root,这个比较简单安装就行了.
网友评论