appfoundry / fastlane-android-example Goto Github PK
View Code? Open in Web Editor NEWSample project for our Fastlane Android scripts
License: MIT License
Sample project for our Fastlane Android scripts
License: MIT License
Hello guys! I'm getting the following error with zipalign. When running fastlane action zipalign it shows me the correct data and that can be located but when I run my fastlane to compile, this is what I get:
```| ๐ฅ | zipalign | 0 |
+------+-------------------------------------+-------------+
[13:32:34]: fastlane finished with errors
[13:32:34]: Error accessing file, this might be due to fastlane's directory handling
[13:32:34]: Check out https://docs.fastlane.tools/advanced/#directory-behavior for more details
/usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.25.0/fastlane/lib/fastlane/helper/sh_helper.rb:36:in `popen': No such file or directory - zipalign (Errno::ENOENT) ```
My Fastlane file and actions folder looks exactly the same as yours.
My bash.profile also looks good getting access to the zipalign binary from google apis:
export ANDROID_HOME=/Users/{user}/Library/Android/sdk/
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH
export ANDROID_BUILD_TOOLS=$ANDROID_HOME/build-tools/22.0.1/:$PATH
Hi,I have set up for splits apks, which generates 4 platforms("armeabi", "armeabi-v7a", "x86", "x86_64") apks. I am not able to zipalign for all these apks.
I think, this Line on Fastfile only zipalign the last apk of the all abi apks.
zipalign(apk_path: "#{lane_context[SharedValues::SIGNED_APK_PATH]}")
How to make it zipalign for all apks from GRADLE_ALL_APK_OUTPUT_PATHS?
Would you mind tossing a license in here so people can use these extensions without worrying about copyright issues?
This change:
820684a#diff-21741517e25e3a1b5aed849e3996f265
was added to support whitespaces in alias'.
We had a lot of frustration running Fastlane commands on windows using this, and you will end up with and error coming out of jarsigner, jarsigner: Certificate chain not found for: 'distribution'. 'distribution' must reference a valid KeyStore key entry containing a private key and corresponding public key certificate chain.
, where 'distribution'
is the literal being passed into that command.
You can repro this in the windows command shell with a jarsigner command like jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore keystores\distribution.jks platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk 'distribution' -keypass Password -storepass Password -tsa http://timestamp.comodoca.com/rfc316 -signedjar platforms/android/app/build/outputs/apk/release/app-release.apk
. You will get the same output.
Putting this here for anyone else running into this issue, that we got around this by removing the single quotes around alias.
13:45:40]: fastlane finished with errors
[!] Couldn't find '*release-unsigned.apk' file at path 'app/build/outputs/apk/'
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
I'm getting the following issue when using zipaling command:
zipalign(apk_path: "#{lane_context[SharedValues::SIGNED_APK_PATH]}")
--------------------------------ERROR------------------------------------
Found no similar issues. To create a new issue, please visit: https://github.com/fastlane/fastlane/issues/new Run
fastlane envto append the fastlane environment to your issue /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/helper/sh_helper.rb:36:in
popen': [!] No such file or directory - zipalign (Errno::ENOENT)
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/helper/sh_helper.rb:36:in sh_control_output' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/helper/sh_helper.rb:10:in
sh'
from /Users/mariano/Documents/Android_Projects/AppFree/fastlane/actions/zipalign.rb:23:in run' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:243:in
block (2 levels) in execute_action'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/actions/actions_helper.rb:50:in execute_action' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:221:in
block in execute_action'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:217:in chdir' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:217:in
execute_action'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:139:in trigger_action_by_name' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/fast_file.rb:146:in
method_missing'
from Fastfile:42:in block in parsing_binding' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/lane.rb:33:in
call'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:49:in block in execute' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:45:in
chdir'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/runner.rb:45:in execute' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/lane_manager.rb:52:in
cruise_lane'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/command_line_handler.rb:30:in handle' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/commands_generator.rb:105:in
block (2 levels) in run'
from /usr/local/lib/ruby/gems/2.3.0/gems/commander-4.4.1/lib/commander/command.rb:178:in call' from /usr/local/lib/ruby/gems/2.3.0/gems/commander-4.4.1/lib/commander/command.rb:153:in
run'
from /usr/local/lib/ruby/gems/2.3.0/gems/commander-4.4.1/lib/commander/runner.rb:444:in run_active_command' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:38:in
run!'
from /usr/local/lib/ruby/gems/2.3.0/gems/commander-4.4.1/lib/commander/delegates.rb:15:in run!' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/commands_generator.rb:302:in
run'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/commands_generator.rb:42:in start' from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/fastlane/lib/fastlane/cli_tools_distributor.rb:65:in
take_off'
from /usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.19.1/bin/fastlane:15:in <top (required)>' from /usr/local/bin/fastlane:22:in
load'
from /usr/local/bin/fastlane:22:in <main>'
Have you consider submitting your actions to the Fastlane main repository?
This way, they will be listed when fastlane search_plugins is executed, and they would be easily installable via:
fastlane add_plugin sign_apk
fastlane add_plugin zipalign
It's really easy to publish your actions, check this out:
https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Plugins.md#publishing-your-plugin
Hi,
With Fastlane 2.62, the command sign_apk works fine.
If I upgrade Fastlane to 2.68.2, I have an error :
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1: command not found
What is the solution ?
These two actions would make excellent candidates for a "Sign your Android App" Fastlane plugin.
Creating Fastlane plugins is pretty easy, especially if you already have the actions ready and tested:
https://docs.fastlane.tools/plugins/create-plugin/
Would you be interested in having your actions converted into a Fastlane plugin?
Unknown method 'user_error', supported [:select, :message, :verbose, :error, :password, :input, :important, :command, :deprecated, :command_output, :user_error!, :interactive?, :crash!, :confirm, :header, :success, :not_implemented, :shell_error!, :build_failure!, :test_failure!, :abort_with_message!]
Zipalign is giving me this error:
/Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/helper/sh_helper.rb:36:in `popen': [!] No such file or directory - zipalign (Errno::ENOENT)
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/helper/sh_helper.rb:36:in `sh_control_output'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/helper/sh_helper.rb:10:in `sh'
from /Users/admin/Projects/fno/fanx-android/fastlane/actions/zipalign.rb:23:in `run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:227:in `block (2 levels) in execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/actions/actions_helper.rb:50:in `execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:212:in `block in execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:211:in `chdir'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:211:in `execute_action'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:133:in `trigger_action_by_name'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/fast_file.rb:146:in `method_missing'
from Fastfile:32:in `block in parsing_binding'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/lane.rb:33:in `call'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/lane.rb:33:in `call'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:49:in `block in execute'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:45:in `chdir'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/runner.rb:45:in `execute'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/lane_manager.rb:52:in `cruise_lane'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/command_line_handler.rb:30:in `handle'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/commands_generator.rb:96:in `block (2 levels) in run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-4.4.2/lib/commander/command.rb:178:in `call'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-4.4.2/lib/commander/command.rb:178:in `call'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-4.4.2/lib/commander/command.rb:153:in `run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-4.4.2/lib/commander/runner.rb:446:in `run_active_command'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:38:in `run!'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-4.4.2/lib/commander/delegates.rb:15:in `run!'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/commands_generator.rb:293:in `run'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/commands_generator.rb:36:in `start'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/fastlane/lib/fastlane/cli_tools_distributor.rb:59:in `take_off'
from /Users/admin/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.1.3/bin/fastlane:5:in `<top (required)>'
from /Users/admin/.fastlane/bin/bundle/bin/fastlane:22:in `load'
from /Users/admin/.fastlane/bin/bundle/bin/fastlane:22
any idea of what the problem is?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.