146 lines
6.0 KiB
Batchfile
146 lines
6.0 KiB
Batchfile
@echo off
|
|
|
|
echo This requires both JAVA 17 installed
|
|
echo and ADB setup, and your device to be plugged into the PC !!!
|
|
echo you must have the appropriate ADB drivers for your device already and all that.
|
|
|
|
set PATH=%PATH%;%CD%\res;
|
|
|
|
echo press any key to install
|
|
|
|
set /P EXISTING_INSTALL=Do you already have existing data in the PSM App installed? [Y/N]
|
|
|
|
set BUSYBOX_LOCATION=/data/local/tmp/busybox
|
|
set PSM_DATA_FOLDER=/data/data/com.playstation.psstore
|
|
|
|
echo backing up existing psm data ...
|
|
|
|
REM copy busybox over
|
|
adb push res\busybox /data/local/tmp/busybox
|
|
adb shell "chmod 777 /data/local/tmp/busybox"
|
|
|
|
if /i "%EXISTING_INSTALL%" == "N" Goto :installPSM
|
|
|
|
adb shell "su -c '%BUSYBOX_LOCATION% tar c %PSM_DATA_FOLDER% -v -f /data/local/tmp/psm_backup.tar'"
|
|
adb pull /data/local/tmp/psm_backup.tar
|
|
adb shell "su -c '%BUSYBOX_LOCATION% rm /data/local/tmp/psm_backup.tar'"
|
|
|
|
goto :InstallLIBRARY
|
|
:installPSM
|
|
|
|
REM everything breaks if its on external.
|
|
adb shell pm setInstallLocation 1
|
|
|
|
REM ok now we can do stuff ..
|
|
echo installing PSM
|
|
adb install res/Psm1.7.0.apk
|
|
|
|
REM Install android id application
|
|
echo installing android_id.apk
|
|
adb install res/android_id.apk
|
|
|
|
adb shell "am start -n pink.yuv.android_id/.MainActivity"
|
|
|
|
if "%EXISTING_INSTALL%" == "N" Goto :InstallFAKEPSN
|
|
goto InstallLIBRARY
|
|
|
|
:InstallFAKEPSN
|
|
|
|
echo Make sure you enter these PERFECTLY or it wont work !!!
|
|
set /P ANDROID_ID=Enter "android_id" :
|
|
set /P PSM_UID=Enter "psstore_uid" :
|
|
|
|
set PSN_EMAIL=nopsmdrm@transrights.lgbt
|
|
set PSN_PASSWORD=password123
|
|
set PSN_ACCOUNT_ID=0123456789ABCDEF
|
|
|
|
echo uninstalling android_id.apk
|
|
adb uninstall pink.yuv.android_id
|
|
|
|
REM generate credentials cache
|
|
echo generating fake psn account cache ...
|
|
|
|
java -jar res\psm.jar %ANDROID_ID% %PSM_UID% %PSN_EMAIL% %PSN_PASSWORD% %PSN_ACCOUNT_ID%
|
|
|
|
REM prepare xperia part
|
|
|
|
echo creating data folders ...
|
|
adb shell "su -c '%BUSYBOX_LOCATION% mkdir %PSM_DATA_FOLDER%/shared_prefs'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 771 %PSM_DATA_FOLDER%/shared_prefs'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/shared_prefs'"
|
|
|
|
adb shell "su -c '%BUSYBOX_LOCATION% mkdir %PSM_DATA_FOLDER%/files'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 771 %PSM_DATA_FOLDER%/files'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/files'"
|
|
|
|
adb shell "su -c '%BUSYBOX_LOCATION% mkdir %PSM_DATA_FOLDER%/files/kdc'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 771 %PSM_DATA_FOLDER%/files/kdc'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/files/kdc'"
|
|
|
|
|
|
adb shell "su -c '%BUSYBOX_LOCATION% mkdir %PSM_DATA_FOLDER%/databases'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 771 %PSM_DATA_FOLDER%/databases'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/databases'"
|
|
|
|
|
|
echo transferring cache data ...
|
|
|
|
adb push shared_prefs\com.playstation.psstore_preferences.xml /data/local/tmp/pref.xml
|
|
adb shell "su -c '%BUSYBOX_LOCATION% cp /data/local/tmp/pref.xml %PSM_DATA_FOLDER%/shared_prefs/com.playstation.psstore_preferences.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 660 %PSM_DATA_FOLDER%/shared_prefs/com.playstation.psstore_preferences.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/shared_prefs/com.playstation.psstore_preferences.xml'"
|
|
|
|
adb push shared_prefs\LocalLibrary.xml /data/local/tmp/pref.xml
|
|
adb shell "su -c '%BUSYBOX_LOCATION% cp /data/local/tmp/pref.xml %PSM_DATA_FOLDER%/shared_prefs/LocalLibrary.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 660 %PSM_DATA_FOLDER%/shared_prefs/LocalLibrary.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/shared_prefs/LocalLibrary.xml'"
|
|
|
|
adb push shared_prefs\RunningContentInfo.xml /data/local/tmp/pref.xml
|
|
adb shell "su -c '%BUSYBOX_LOCATION% cp /data/local/tmp/pref.xml %PSM_DATA_FOLDER%/shared_prefs/RunningContentInfo.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 660 %PSM_DATA_FOLDER%/shared_prefs/RunningContentInfo.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/shared_prefs/RunningContentInfo.xml'"
|
|
|
|
adb push shared_prefs\SigninInfo.xml /data/local/tmp/pref.xml
|
|
adb shell "su -c '%BUSYBOX_LOCATION% cp /data/local/tmp/pref.xml %PSM_DATA_FOLDER%/shared_prefs/SigninInfo.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 660 %PSM_DATA_FOLDER%/shared_prefs/SigninInfo.xml'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/shared_prefs/SigninInfo.xml'"
|
|
|
|
adb shell "%BUSYBOX_LOCATION% rm /data/local/tmp/pref.xml"
|
|
|
|
:InstallLIBRARY
|
|
|
|
REM library.db
|
|
echo copying library.db ...
|
|
adb push res\library.db /data/local/tmp/library.db
|
|
adb shell "su -c '%BUSYBOX_LOCATION% cp /data/local/tmp/library.db %PSM_DATA_FOLDER%/databases/library.db'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 660 %PSM_DATA_FOLDER%/databases/library.db'"
|
|
if "%EXISTING_INSTALL%" == "N" Goto :chownDB
|
|
goto delLIBRARY
|
|
:chownDB
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown %PSM_UID%:%PSM_UID% %PSM_DATA_FOLDER%/databases/library.db'"
|
|
:delLIBRARY
|
|
adb shell "%BUSYBOX_LOCATION% rm /data/local/tmp/library.db"
|
|
|
|
|
|
REM install nopsmdrm ...
|
|
|
|
echo installing libpsmdrm ...
|
|
adb push res\libpsmkdc_jni.so /data/local/tmp/libpsmkdc_jni.so
|
|
adb shell "su -c '%BUSYBOX_LOCATION% cp /data/local/tmp/libpsmkdc_jni.so %PSM_DATA_FOLDER%/lib/libpsmkdc_jni.so'"
|
|
adb shell "%BUSYBOX_LOCATION% rm /data/local/tmp/libpsmkdc_jni.so"
|
|
|
|
adb push res\libdefault.so /data/local/tmp/libdefault.so
|
|
adb shell "su -c '%BUSYBOX_LOCATION% mv %PSM_DATA_FOLDER%/lib/libdefault.so %PSM_DATA_FOLDER%/lib/libdefault_real.so'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% cp /data/local/tmp/libdefault.so %PSM_DATA_FOLDER%/lib/libdefault.so'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chmod 755 %PSM_DATA_FOLDER%/lib/libdefault.so'"
|
|
adb shell "su -c '%BUSYBOX_LOCATION% chown system:system %PSM_DATA_FOLDER%/lib/libdefault.so'"
|
|
adb shell "%BUSYBOX_LOCATION% rm /data/local/tmp/libdefault.so"
|
|
|
|
echo cleaning up busybox.
|
|
adb shell "%BUSYBOX_LOCATION% rm %BUSYBOX_LOCATION%"
|
|
|
|
echo done.
|
|
|
|
echo Your PSM app should be patched!
|
|
echo (remember you need to have wifi off to play anything!)
|
|
pause>nul |