I've to use external files because I need to create a page as a web page with StageWebView, and I need these files : 1 HTML file, 2 PNG files, 1 Javascript file.
There is a problem when I want to use these files, I can't access them because I think they are omitted when APK package is installed. However, I can see them into the APK file after I have created it (I can open it as a traditionnal archive).
Unfortunely, after the installation, there is not my files at the expected place : I look at my OS file system, using the file explorer entry into the Android Device Monitor of Android SDK, the tool located at folder AndroidSDK_folder\tools\monitor.bat.
I've writed this command line to package the APK, I don't think to do any errors here, it's very simple...
adt -package -target apk-emulator -storetype pkcs12 -keystore "my-Certificate.p12" -storepass password "my-APK.apk" "src\my-Descriptor-app.xml" "my-SWF.swf" -C src\assets -e src\assets\1.html -e src\assets\image1.png image1.png -e src\assets\image2.png image2.png -e src\assets\my-JS.js my-JS.js
My files are not "embeded" in the code, it seems to be the reason of losing files at the installation step : Is it true ?
Related
I get this error when I submit App to AppStore:
I searched the net and found this article: https://jmillerdev.com/symbolicating-ios-crash-files-xamarin-ios/
I tried to follow the step-by-step instructions as follows:
I downloaded the crashlog.txt files and changed the extension to .crash, moved it to the folder CrashTop
I found the .app file by changing MyApp.ipa to MyApp.zip and extracting it. It's in the folder PayLoad. I copied the file MyApp.iOS to the folder CrashTop
In Xcode/Window/Organizer. Archives Show in Finder opens showing the package contents. I found the dSYMs folder and copied the .dSYM file to the folder CrashTop
Next i Open Terminal and run this command:
alias symbolicate="/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash -v"
and
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
Run Symbolicate
Open Terminal again and cd to the directory folder CrashTop and run the command
symbolicate -o "symbolicatedCrash.txt" "crashlog-DCE8F822-47EB-42F9-A737-5D137FD827FE.crash" "MyApp.iOS.app"
But what I get back is: command not found: symbolicate
It's been 10 days. I've tried searching all over the internet. But it doesn't solve the problem. I also used Microsoft.AppCenter.Crashes to catch the error. However, it shows no errors. On xcode (13.3.1) simulator it works fine.
Please solution to solve this problem.
Ask for any help from everyone.
Update
Copy all files to CrashTop folder.
Run command:
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
and
./symbolicatecrash -v crashlog-DCE8F822-47EB-42F9-A737-5D137FD827FE.crash MyApp.iOS.app.dSYM
-> I get the error: zsh: no such file or directory: ./symbolicatecrash
Do not set alias .
You can copy symbolicatecrash file and paste it to the CrashTop folder .
and run the command
./symbolicatecrash -v MyApp-Crash-log.crash MyApp.dSYM
I am creating a .deb package that would run a shell script as preinst.
The shell script needs some input files, which would be available at where I have the .deb package, as below.
Package_located_directory $ >
mydebpackage.deb
inputfile1
inputfile2
I would just transfer all the files to the different machine at any location and install it with dpkg -i mydebpackage.deb
I tried using pwd in the preinst to get the current deb file located directory.
So, I can get the path of the inputfiles from the preinst script.
But if I run pwd from preinst , it is giving me / instead of the package located directory.
Also I tried passing pwd from the PIPE to achieve this, as below,
pwd | dpkg -i mydebpackage.deb
But I do not want to depend on the user input for the path.
Please guide me for getting the current deb package located directory path from inside of preinst script.
it's better to use postinst and modify the file on your system.
for example : Modify the file /etc/test/test.txt in postinst file
Is it possible to copy Atom from one Mac to another, including all installed packages, settings etc?
There are several ways to synchronize your settings and packages between Atom installations:
Git: Create a public or private Git repo and store the contents of your local ~/.atom folder in there. Ignore the following files/directories in a .gitignore file:
storage
compile-cache
dev
.npm
.node-gyp
Use a package like sync-settings. This will store your configuration in a GitHub Gist.
Dropbox (or similar): Move your ~/.atom folder to your Dropbox folder and then symlink it from there to its original location. This has the downside of syncing everything in ~/.atom, even the things you could ignore.
Use stars to select your favorite packages. On the Atom web site, create an account and mark your favorite packages with stars. Then use apm stars --install to install all starred packages on any machine. Downside: This only works for packages, not for settings.
More details:
https://discuss.atom.io/t/syncing-settings-packages-between-machines/1385
As a user who uses a dotfile management system such as RCM, I prefer independent config files.
For now, Atom doesn't officially provide a packages.cson file to manage plugins, but as the post Syncing settings & packages between machines mentioned, there is a plugin called package-sync that will generate a packages.cson file for us.
So with the help of package-sync, now I can just sync those mininal config files to have my Atom settings and packages consistent across multiple machines.
This is how to do it (Use ubuntu as an example):
Install Atom, and install package-sync through Edit-->Preferences-->Install as the screen shot shows:
Open your command pallete and type: Create Package List and there will be a packages.cson file under your ~/.atom folder.
Edit the gitignore file:
$ gedit ~/.atom/.gitignore
Make sure the content is:
blob-store
compile-cache
dev
storage
.node-gyp
.npm
.apm
packages/
atom-shell/
This is a screenshot of the .gitignore file:
This makes sure the content downloaded by Atom from the Internet will not get synced to your dotfiles repo.
Move the .atom folder to the dotfile repo:
$ mv ~/.atom ~/dotfiles/tag-atom/atom
Relink the folder:
$ ln -s ~/dotfiles/tag-atom/atom ~/.atom
Or if you have rcm installed:
$ rcup
Now go to another machine, and install Atom and package sync. Update your dotfiles repo, and then Open your Atom command pallete and type: sync
Now your Atom settings will get synced and integrated with the RCM dotilfe management system.
This is the files in my ~/.atom folder that get synced:
I recently built a package that syncs automatically your Atom settings and packages across multiple computers. A little bit like the bookmark synchronization mechanism in Google Chrome. It's called atom-package-sync. Maybe it could fit your needs.
You can sync your packages via package-list.txt file and a simple shell script.
Create the package-list.txt file
apm list --installed --bare > package-list.txt
Install missing packages on another host
BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
INSTALLEd_PKGS=$(apm list --installed --bare)
for PKG in $(cut -f1 -d# $BASEDIR/package-list.txt); do
grep -q $PKG <<< $INSTALLEd_PKGS || apm install $PKG
done
The .atom folder contains the packages folder, which can be rather huge. Unfortunately OneDrive doesn't allow you to exclude folders, so I went with a git option.
I excluded the packages from git and instead I committed a text file containing my packages (my-packages.txt).
To re-install packages I need to run: apm install --packages-file my-packages.txt.
To generate the my-packages.txt, I need something like this on a Bash shell: ls packages | xargs -n 1 echo | cut -d/ -f1 > my-packages.txt
I sync my Atom settings between Windows, macOS, and Linux machines using Resilio Sync Home. It is free and the files are not saved on the "cloud" (like Dropbox or Gists), but it requires that, at least, two machines are online in order to sync the current settings.
I do not want to sync caches, installation specific settings, et al., I update the .sync/IgnoreList file that is created in the synced directory (i.e., the ~/.atom directory). Unfortunately, you will have to update this on each machine that you sync (ironically, the IgnoreList file is not synced). By default, the file specifies various temporary files to be omitted from syncing, so you'll need to add the following:
## Atom-specific
/packages/node-debugger/debugger.log
\packages\node-debugger\debugger.log
/.apm
\.apm
/.node-gyp
\.node-gyp
/.npm
\.npm
/blob-store
\blob-store
/compile-cache
\compile-cache
/dev
\dev
/recovery
\recovery
/split-diff
\split-diff
/storage
\storage
Some of the omitted directories are package-specific (e.g., split-diff). Because Windows has different path delimiters than other platforms, I need to specify both(!!)
Install Resilio Sync Home on your first machine
Add the .atom directory to Resilio to be synced.
Update its IgnoreList file, as shown above. Save this file for the other machines you want to sync with.
Send a Resilio "Read & Write" link of that folder to the other machines you want to sync with or copy the "Read & Write" key to be used on the other machines. To do this, in Resilio's folder view, click on the .atom folder's menu (vertical dots on the right edge) and select "Copy Read & Write key". Save it for later.
Then on your other machines,
Install Resilio Sync Home
Create .atom/.sync
Copy the IgnoreList from your first machine to that directory
Add the .atom directory to be synced with the other machine. You should add the folder using "Enter key or link," then enter the key you copyed, above.
Wait until syncing is done before opening Atom. The first time will may take a few minutes.
Now I don't need to go around installing/removing packages on every machine, separately!
FYI: Changes to files and directories are saved in .sync/Archive, for some period of time, if you should need to recover them.
Here is my problem:
I'm building an AIR package, using the mxmlc and adt command line tools.
I run the following command in a /bin/stagging directory
mxmlc +configname=air -compiler.library-path+=..\..\my_project\libs\,
..\..\Modeles\libs,..\..\Service\libs,..\..\sflexlib\libs
-define+=CONFIG::appMode,"'staging'" ..\..\my_project\src\my_project.mxml
-o my_project.swf
So I create a file called my_project.swf including all the libs I need and the mxml application is the my_project.mxml file.
A my_project.swf file is created but I cannot test it at that moment because it is an AIR application. So I launch this command:
adt -package -storetype pkcs12 -keystore "..\..\certificat.p12"
-storepass "mypass" my_project.air my_project-app.xml my_project.swf
-C ..\..\my_project\src\assets\ .
If I understood the adt command, this should create an .air package described by the my_project-app.xml file and including the my_project.swf file and assets directory. I install the app and launch it but no pictures are displayed... I look in the installation folder and there is an assets folder containing all the pictures :(
If I launch the app directly via the FlashBuilder IDE, the pictures are well displayed.
Has anybody a solution to that? As said, the pictures are correctly extracted from the package and installed but not displayed... The paths are correct too =(
Thank you in advance
I found the solution! The halo theme was not included in the compilation line!
So I added it and launched that command:
mxmlc +configname=air -compiler.library-path+=..\..\my_project\libs\,
..\..\Modeles\libs,..\..\Service\libs,..\..\sflexlib\libs
-define+=CONFIG::appMode,"'staging'" -theme+="%FLEX45_FRAMEWORK%"\themes\Halo\halo.swc
..\..\my_project\src\my_project.mxml -o my_project.swf
%FLEX45_FRAMEWORK% is the FLEX_4.5_PATH\frameworks directory
I found the solution when I got an error by changing Embed to url() in the css file. Before that it was only a warning! =)
Thank you guys!
I get the following error
302: Root content index.html file missing from package
adt -package -storetype pkcs12 -keystore Mycert.pfx Display/build/display.air Display/source/application.xml Display/source/index.html Display/source/icons Display/source/js Display/source/sounds
my application.xml is fine
<initialWindow>
<content>index.html</content>
<visible>true</visible>
<width>160</width>
<height>120</height>
</initialWindow>
any ideas?
302: Root content file missing from package - The SWF or HTML file referenced in the element of the application descriptor must be added to the package by including it in the files listed on the ADT command line.
Also make sure spelling is correct in your application.xml
I know it's too late for this, but one never know who care, and I recently has the same issue, and at last, I figure it out that in the command line, my last parameter, who get the SWF file, has a folder, so, remove it and I just left the SWF name, and thereafter everything it's ok.
My complete command was:
adt -package -target ipa-debug -keystore path/to/key.p12 -storetype pkcs12 -storepass YourSecretPass -provisioning-profile path/to/file.mobileprovision myInstaller.ipa src/MyProject-app.xml MyProject.swf
...and course, the .SWF file must be in the project root, same place where I write de adt command.
I'm having the same problem right now. I found this thread on Adobe's help forum that discusses this issue:
http://forums.adobe.com/thread/91611
Basically it's saying to put -C before the filenames in the adt command because
when you use -C, it will put everything in the specified directory into the root of the application folder