I have an android app for which I wrote tests to take screenshots (note: I do not use the screengrab of fastlane). I then extract the files from the phone into a temp folder via adb. Now I want to upload those via a fastlane supply command (and nothing else should be uploaded). The task executes successfully but I can't see my screenshots when I check the Google Play Console, so I suspect that my directory structure is wrong.
I've tried various things but by comparing it to a screenshots of their setup doc I assume it has to be something like fastlane/metadata/en-US/screenshots
Or are there any requirements for the file names? Thanks in advance.
The easiest way to get the proper directory structure is to run fastlane supply init as described here.
If you want to have these metadata (which includes the screenshots) somewhere else, you can use the metadata_path parameter to change that.
And if you want to limit the upload to just screenshots, use the several skip_upload_ parameters that are available to turn off things.
I found the required structure here
So it's fastlane/metadata/android/en-US/images/phoneScreenshots.
Related
I want protect some files inside my project source code so if I sent source code to anyone he can only read the specific files and the protected ones can't read it without something like password or something else
I need to send all the project source code to someone and he can edit it and build the application normally but prevent him from access or read specific
I am not sure if there is something do that so if someone know is that possible please answer me
You can't. This comes up sometimes with keys and other sensitive files. What we do in cases like these is to have separate development/test/production keys or files and the developer has only access to a repository with the developer keys or files. Then on merge we merge in a way which means the final build will contain the production files the developer has no access to.
If you want to defend source code parts you can use obfuscation. This will still make the build work but it only makes the code harder to understand, not that it is unavailable. Note that if the developer wants to build the project locally it needs to access all the files the build will need, and that means read access.
i just exported my game to use Play Asset delivery following this guide:
https://docs.unity3d.com/2021.1/Documentation/Manual/play-asset-delivery.html
in short
build app bundle enabled
split application binary also checked.
The exported aab size is 311mb and when uploading to google play it says:
base ----install_time ---30.1mb
UnityDataAssetPack ----install time ---264mb
But then when i download the app in any device, the file size is 846mb, more than double the expected size. Also it tries to download all at once, i thought that the dataassetpack was downloaded after the base one.
i'm using Unity 2021.1.16f1
Do you know any cause for this to happen, and how to fix it?
thank you very much!
You are comparing a "download size" to a "size on disk":
The size you see in the Play Console corresponds to the download size, which is compressed.
On the device, you see the size on disk where the data is stored uncompressed so it can be directly rendered without having to keep two copies of the same data (one compressed and one uncompressed), so that explains the discrepancy.
It seems that you have configured the modules to be install-time so they will be installed as part of the initial install. If you want them to be installed while the user is starting the game, you should configure them to be fast-follow. If you want to manually download them using the Play Core API, you should configure them to be on-demand. This is all explained in the page you linked in the Managing asset packs at runtime section.
That page also links to the Google documentation on the topic, which has a dedicated section for Unity -- which would be too long to copy here, so have a read and come back if you have more specific questions.
If you're only using Unity marking the AAB output type in the build settings, and not using Google's API to do your stuff via script, then it's correct. Unity has a bug when assembling bundles and will simply (at least) double the size of your app. Things will be doubled in your AAB, you'll see the stuff you had in streaming assets in split apks and also inside the base.apk. Unity's way is not reliable, it's quite wrong and Google's plain way for Unity also is not perfect, it will not work for every single project. I was able to get the hang of it, but in the end I wrote our own tool to create the asset packs, created our runtime implementation to use the API and also our build procedures to be called by our custom build class.
My suggestion is, squeeze the docs here https://developer.android.com/guide/playcore/asset-delivery/integrate-unity?language=api and build your custom solution.
How do I use the ADT Translation Manager (http://developer.android.com/sdk/installing/installing-adt.html#tmgr)? After I install it, there's a menu option to Upload String for Translation, but that tells me I don't have a translation project yet.
When I go to the Play Store to create a project, it requires me to upload files to get started, and I would have to finish the flow and pay in order for it to create the project.
How do I use the plugin to upload the files? I have a rather large project, and it would be an enormous pain to upload the files one at a time through the web tool.
I'm not familiar with that, but I manage my translation by my own.
transai - https://github.com/Jintin/transai
It's a command line tool I wrote to manage my Android & iOS text.
It can generate csv files from your strings.xml, and you can do translate according the csv file.
After you finish, you can transform it back to strings.xml.
It more readable for now IT man to help me do translate this way.
You can give it a try.
If you have any further question, you can leave issue to me.
Thank you.
While the compilation of Android source we can see an image file named persist.img being created. What is it and for what is it used?
persist.img is "persist" which contains data which shouldn't be changed after the device shipped, for example: calibration data of chips(wifi, bt, camera, etc.), certificates and other security related files. For sure even it's "persist" you still can replace it via fastboot, or change things if the devices is rooted, take it for your own risks
It's part of the Android build along with system.img, userdata.img, tombstones.img, recovery.img, etc.
You would alter it if you wanted to modify the build.
I want to create a web page that has two links. One that downloads the agent itself (which is pretty easy, just linking to the APK file with the appropriate MIME types set), and the other to start the install process for the APK downloaded in step one.
I know they can just pull down the bar and click on it, but that can be confusing for users (especially in the overall process we are trying to create). Is there a special URI I can use to start the installation, sort of like the market link of "market://"?
Also, is there a way to get meta-data surrounding where the APK was actually installed from? For example, if the link for the APK is "http://company.com/setting=123", that I can pull in the "setting=123" from the URL? I suspect not, but I figured it couldn't hurt to ask.
You can add url interceptors to your app like it's mentioned here but AFAIK there is no way to do what you are asking.
check open2go.com
it may help you.
example here
http://open2go.com/http://m.getjar.com/mobile/49757/angry-birds-seasons/
open2go.com/ + url
market: schema works to.