ADX2 도구로 obb 만들기
입문
Oculus 응용 프로그램에서 극단적인 apk라면 분할해서 상점으로 보내야 합니다
ADX2 데이터는 Unity의 표준 obb(APK 확장 파일)에서 스트림 재생성을 할 수 없습니다.
Android Studio의 jobb 도구로 요약해야 합니다.
이obb를 만들고,Oculus의 실제 컴퓨터를 푸시하는 것은 귀찮기 때문에, 스크립트를 한 번 실행하면 완성할 수 있는 것을 만들어 보았습니다.
이 문장의 대상
환경
Craft 3.45.00
jobb
jobb는 다음과 같습니다.
이걸로 하면 되는데 틀린 것 같아요.
의fat32.
adb
adb도 Android Studio에 있습니다.
Android studio
JDK
등 설치
adb,jobb의 경로 등 환경 변수의 설정 등이 필요할 수 있습니다.
스크립트
subprocess에서 두 개를 실행합니다.
실패할 때 처리가 많지 않으니 고장이 났을 때 수동으로 중단하십시오.
경로와 장치 ID 등을 적절히 덮어쓰십시오.
MDS_MakeObb.py# --Description:[tatmos][Build]adx2フォルダをObbファイルにまとめる
import sys
import os
import cri.atomcraft.debug as acdebug
import subprocess
import cri.atomcraft.view as acview
# まとめるフォルダ
srcPath = "C:/MyDearest/github/MDSoundPreview/Assets/StreamingAssets/adx2/"
# 出力フォルダ
outPath = "C:/MyDearest/"
# 出力するObbファイル名
outputFileName = "ADX2.obb"
# アプリのビルドバージョン
appBuildVersion = 1
# アプリのPackageName
appPackageName = "com.MyDearest.MDSoundPreview"
# 転送先のデバイスID : adb devicesなどで調べる
deviceId = "XXXXXXXXXXXXXX"
if not os.path.exists(srcPath):
acdebug.log("srcPath がありません。")
sys.exit()
# jobb
cmd1 = "jobb.bat"
cmd2 = "-d \"{0}\"".format(srcPath);
cmd3 = "-o \"{0}\"".format(outPath + outputFileName);
cmd4 = "-pn \"{0}\"".format(appPackageName);
cmd5 = "-pv {0}".format(appBuildVersion);
acdebug.log([cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4 + " " + cmd5])
message = subprocess.check_output(cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4 + " " + cmd5)
acdebug.log(message.decode().strip())
message = "続いて転送します"
button_name_list = ["続ける", "キャンセル"]
result = acview.show_dialog(message, button_name_list)
if result [ "data" ][ "button_name" ] == "キャンセル" or result [ "data" ][ "button_index" ] == "-1":
sys.exit()
# push
cmd1 = "adb"
cmd2 = "-s {0}".format(deviceId);
cmd3 = "push {0}".format(outPath + outputFileName);
cmd4 = "/storage/emulated/0/Android/obb/{0}/{1}".format(appPackageName,outputFileName);
acdebug.log([cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4])
message = subprocess.check_output(cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4)
message2 = message.decode().strip().split("\r\n")
for m in message2:
if not str(m).startswith("["):
acdebug.log(m)
로그 숨기기
check_output에서 되돌아오는 메시지에는 진전된 정보가 포함되어 있습니다
출력을 기록하면 ADX2가 무거워지므로 분할과 동시에 필요하지 않은 진전을 표시하지 마십시오.check_output
message2 = message.decode().strip().split("\r\n")
for m in message2:
if not str(m).startswith("["):
acdebug.log(m)
끝내다
adb 명령도 가능, 조금만 적용하면
음성 데이터 교체, 전송, 실행, 실제 기기에서 확인
나는 가능한 한 힘들지 않은 환경을 만들 수 있을 것이라고 생각한다.
Reference
이 문제에 관하여(ADX2 도구로 obb 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tatmos/items/6c129f9a541d7342763d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
jobb는 다음과 같습니다.
이걸로 하면 되는데 틀린 것 같아요.
의fat32.
adb
adb도 Android Studio에 있습니다.
Android studio
JDK
등 설치
adb,jobb의 경로 등 환경 변수의 설정 등이 필요할 수 있습니다.
스크립트
subprocess에서 두 개를 실행합니다.
실패할 때 처리가 많지 않으니 고장이 났을 때 수동으로 중단하십시오.
경로와 장치 ID 등을 적절히 덮어쓰십시오.
MDS_MakeObb.py# --Description:[tatmos][Build]adx2フォルダをObbファイルにまとめる
import sys
import os
import cri.atomcraft.debug as acdebug
import subprocess
import cri.atomcraft.view as acview
# まとめるフォルダ
srcPath = "C:/MyDearest/github/MDSoundPreview/Assets/StreamingAssets/adx2/"
# 出力フォルダ
outPath = "C:/MyDearest/"
# 出力するObbファイル名
outputFileName = "ADX2.obb"
# アプリのビルドバージョン
appBuildVersion = 1
# アプリのPackageName
appPackageName = "com.MyDearest.MDSoundPreview"
# 転送先のデバイスID : adb devicesなどで調べる
deviceId = "XXXXXXXXXXXXXX"
if not os.path.exists(srcPath):
acdebug.log("srcPath がありません。")
sys.exit()
# jobb
cmd1 = "jobb.bat"
cmd2 = "-d \"{0}\"".format(srcPath);
cmd3 = "-o \"{0}\"".format(outPath + outputFileName);
cmd4 = "-pn \"{0}\"".format(appPackageName);
cmd5 = "-pv {0}".format(appBuildVersion);
acdebug.log([cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4 + " " + cmd5])
message = subprocess.check_output(cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4 + " " + cmd5)
acdebug.log(message.decode().strip())
message = "続いて転送します"
button_name_list = ["続ける", "キャンセル"]
result = acview.show_dialog(message, button_name_list)
if result [ "data" ][ "button_name" ] == "キャンセル" or result [ "data" ][ "button_index" ] == "-1":
sys.exit()
# push
cmd1 = "adb"
cmd2 = "-s {0}".format(deviceId);
cmd3 = "push {0}".format(outPath + outputFileName);
cmd4 = "/storage/emulated/0/Android/obb/{0}/{1}".format(appPackageName,outputFileName);
acdebug.log([cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4])
message = subprocess.check_output(cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4)
message2 = message.decode().strip().split("\r\n")
for m in message2:
if not str(m).startswith("["):
acdebug.log(m)
로그 숨기기
check_output에서 되돌아오는 메시지에는 진전된 정보가 포함되어 있습니다
출력을 기록하면 ADX2가 무거워지므로 분할과 동시에 필요하지 않은 진전을 표시하지 마십시오.check_output
message2 = message.decode().strip().split("\r\n")
for m in message2:
if not str(m).startswith("["):
acdebug.log(m)
끝내다
adb 명령도 가능, 조금만 적용하면
음성 데이터 교체, 전송, 실행, 실제 기기에서 확인
나는 가능한 한 힘들지 않은 환경을 만들 수 있을 것이라고 생각한다.
Reference
이 문제에 관하여(ADX2 도구로 obb 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tatmos/items/6c129f9a541d7342763d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
subprocess에서 두 개를 실행합니다.
실패할 때 처리가 많지 않으니 고장이 났을 때 수동으로 중단하십시오.
경로와 장치 ID 등을 적절히 덮어쓰십시오.
MDS_MakeObb.py
# --Description:[tatmos][Build]adx2フォルダをObbファイルにまとめる
import sys
import os
import cri.atomcraft.debug as acdebug
import subprocess
import cri.atomcraft.view as acview
# まとめるフォルダ
srcPath = "C:/MyDearest/github/MDSoundPreview/Assets/StreamingAssets/adx2/"
# 出力フォルダ
outPath = "C:/MyDearest/"
# 出力するObbファイル名
outputFileName = "ADX2.obb"
# アプリのビルドバージョン
appBuildVersion = 1
# アプリのPackageName
appPackageName = "com.MyDearest.MDSoundPreview"
# 転送先のデバイスID : adb devicesなどで調べる
deviceId = "XXXXXXXXXXXXXX"
if not os.path.exists(srcPath):
acdebug.log("srcPath がありません。")
sys.exit()
# jobb
cmd1 = "jobb.bat"
cmd2 = "-d \"{0}\"".format(srcPath);
cmd3 = "-o \"{0}\"".format(outPath + outputFileName);
cmd4 = "-pn \"{0}\"".format(appPackageName);
cmd5 = "-pv {0}".format(appBuildVersion);
acdebug.log([cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4 + " " + cmd5])
message = subprocess.check_output(cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4 + " " + cmd5)
acdebug.log(message.decode().strip())
message = "続いて転送します"
button_name_list = ["続ける", "キャンセル"]
result = acview.show_dialog(message, button_name_list)
if result [ "data" ][ "button_name" ] == "キャンセル" or result [ "data" ][ "button_index" ] == "-1":
sys.exit()
# push
cmd1 = "adb"
cmd2 = "-s {0}".format(deviceId);
cmd3 = "push {0}".format(outPath + outputFileName);
cmd4 = "/storage/emulated/0/Android/obb/{0}/{1}".format(appPackageName,outputFileName);
acdebug.log([cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4])
message = subprocess.check_output(cmd1 + " " + cmd2 + " " + cmd3 + " " + cmd4)
message2 = message.decode().strip().split("\r\n")
for m in message2:
if not str(m).startswith("["):
acdebug.log(m)
로그 숨기기
check_output에서 되돌아오는 메시지에는 진전된 정보가 포함되어 있습니다
출력을 기록하면 ADX2가 무거워지므로 분할과 동시에 필요하지 않은 진전을 표시하지 마십시오.check_output
message2 = message.decode().strip().split("\r\n")
for m in message2:
if not str(m).startswith("["):
acdebug.log(m)
끝내다
adb 명령도 가능, 조금만 적용하면
음성 데이터 교체, 전송, 실행, 실제 기기에서 확인
나는 가능한 한 힘들지 않은 환경을 만들 수 있을 것이라고 생각한다.
Reference
이 문제에 관하여(ADX2 도구로 obb 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tatmos/items/6c129f9a541d7342763d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
check_output
message2 = message.decode().strip().split("\r\n")
for m in message2:
if not str(m).startswith("["):
acdebug.log(m)
adb 명령도 가능, 조금만 적용하면
음성 데이터 교체, 전송, 실행, 실제 기기에서 확인
나는 가능한 한 힘들지 않은 환경을 만들 수 있을 것이라고 생각한다.
Reference
이 문제에 관하여(ADX2 도구로 obb 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tatmos/items/6c129f9a541d7342763d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)