Script to pull from POEditor timeout on Bitrise - android

Currently I have an automatic build pipeline to build android apk on Bitrise, one of the step before build is pulling translated language from POEditor. Previously, the build has run successfully until on around 30 May it starts to fail. The failure is because of a timeout when 'curl' to POEditor API.
The Bitrise stack I used is Android&Docker Ubuntu 14.04, the staff has stated it is hosted on Google Compute Engine. I have another pipeline to build ios app which pull from POEditor also, and it still working without problem until now.
The POEditor API is to export the language (https://api.poeditor.com/v2/projects/export).

As we stated in our private chat there was absolutely no change on the related infrastructure; the last time we changed anything port/network related was about half a year ago and even then we enabled a new port and that's all.
One thing you might want to try is to switch from the Ubuntu 14 stack to the Ubuntu 16 one, although the 14 one did not change for quite a while and should work, but this might worth a try.
You can also try to run curl with the --versbose or other flag to get more info about the issue. If you can provide more debug infos feel free to contact us any time!

Related

Default Android Studio compiler to offline, but also download things that's necessary

I am traveling in China for a few month and the network connectivity is weak due to the great fire wall. I have found enabling Offline work in Gradle setting super helpful. It reduced my compile time from a few minutes to a few seconds when I make a minor change in the build.gradle file.
However, I still need to manually turn it on and off if I introduce a new library to my project. So here comes my question:
Is there a way to default to Offline work and still download new library when needed?
you can use following build command from android studio terminal.
gradlew --offline assembleDebug

Xamarin.Forms - AOT compile not working (for Android)

This is the repository that demonstrates this issue.
This is simple standard project with one page. I created the archive for publishing (release mode).
If I use the "AOT compile" option, I get the error:
"Apk failed to install Error:could not parse error string"
If I disable this option, then the APK works.
To use my test project, update the option AndroidSigningKeyStore in ApkSignerIssue.Android.csproj to point to file test.keystore in the folder test.
I'm on Windows 10 and I'm using Android Api 26. If I try Api 25, it does not work. I've tried using VS 15.5.7 and 15.8.0(preview) with "AOT compile" and neither of those work.
Without this option, XF+Android can not be used; the first load of the app will take 8-10 seconds.
It worked earlier, but now I can not build a package to release an update to my application.
Downgrade to 15.5.7 working for me now.
I do not know why this did not work right away, maybe I rebooted the computer. but now it works.
That's good - I was able to release an update my app.
And this is very sad - this is my fourth Downgrade in three months(starting from 15.6).
Archiving the package does not work normally three months, three months, Karl!
I lost a lot of time.

Android Studio 2.2.3 Instant Run is not an Option

I have a new install of Android Studio and I'm starting my first project. I was looking for ways to speed up my deploy/test development cycle when I read that I already should have the Instant Run feature enabled.
I double checked a few settings:
Tools->Android->Enable ADB Integration is checked
File->Settings->Build, Execution, Deployment->Instant Run Enable Instant Run... is checked, along with Restart activity on code changes and Show Toasts in the running app...
My emulator is a Nexus 5, API 24
The Android gradle plugin is defined as: classpath 'com.android.tools.build:gradle:2.2.3'
The project minSdkVersion is 16 and targetSdkVersion is 25
And yet, the Instant Run icons do not appear on my Run configurations and redeploying involves restarting the whole app and takes about a minute. Some possibilities for the error:
I read that DDMS must be disabled for Instant Run to work in another question. I don't know if that's true since I don't see it mentioned in the official documentation, but if I go to the Android Device Monitor I see a DDMS button that cannot be uncheked.
Anticipating a future integration, I enabled this project to allow for C++ code to be integrated. I'm not sure if that plays a part.
Check if minSdkVersion is set to at least 15 and Android plugin for Gradle version at least to 2.0.0.
You can check all the details here
https://developer.android.com/studio/run/index.html#instant-run
I was stopped on two different fronts.
I anticipated using a C++ library in the future for this project and created with C support setup. Use of this type of native library will prevent Instant Run from working.
I wanted to take advantage of the latest Java 8 features, in this case Lambda expressions and Streams. Unfortunately this requires use of the jacktoolchain option which will prevent Instant Run from working. In general, I found these features to be buggy anyways so I opted to return Java 1.7 (insert sad-face here) and gain the benefit of being able to do rapid-deployments.
Because the new features of Java 8 are so powerful, I hope they are made available to developers sooner rather than later. One option that I have not explored is using Zero Turnaround's hot swap system with Java 8 and I will look into that.
For those that are coming here to diagnose Instant Run problems, know that checking the "Show Instant Run status notifications" in Settings -> Build, Execution, Deployment -> Instant Run might provide valuable clues as to problems with this feature (Android Studio 2.2)

Bash on Ubuntu on Windows, Compile AOSP

I am attempting to compile AOSP code using the new WSL (Windows Subsystem for Linux) aka Bash on Ubuntu on Windows. I have successfully setup my build environment and sync'd AOSP code.
I am unable to get "make" to complete a build for even just a single app.
Attached is a strace file. Make seems to hang when reading the file "build/core/clang/TARGET_arm.mk" (this file is initialized on line 1443 of the trace), although this file is successfully read several times prior to the hang.
Any ideas about what is causing make to hang? How can I dig deeper to find out what is causing the hang?
Ehm, yeah, that was the only thing I've wanted to do with the bash since 30th of March when it was announced. I tried it out by myself and I also read an article at xda-developers four months ago that it currently isn't possible to successfully compile Android using this subsystem due to some missing dependencies. There's currently no solution to do that. We have to hope for an update which gives us this awesome possibility. Even if it'll work some day you will have to expect twice the build time you have on a normal Ubuntu setup. Anyway, the bash development is progressing so I'm full of hope it'll work in some months...

Is the Terminal IDE app for android compatible with Lollipop?

I just ordered a Nexus 9 and will be using it to program. Has anyone tried to run Terminal IDE on Nexus 9 or any other devices using Android 5.0 Lollipop?
The "links" browser included with Terminal IDE ran fine on my Nexus 5 under KitKat, but it crashes with the PIE error mentioned under Lollipop. Other than that, Terminal IDE has performed flawlessly for me, for about a year now. Sorry--forgot to add: Terminal IDE under Lollipop is "stopped" if started with the Android keyboard, or Android keyboard option is toggled. It will resume running if the Terminal IDE keyboard option is toggled.
7175 recompiled all the Terminal IDE binaries statically, so they don't give the PIE error on Android 5+. http://forum.xda-developers.com/showpost.php?p=57292384&postcount=68 (dec 2014)
7175 recommends downloading the apk from the following dropbox, then unzipping (an apk is a zip) and copying across just the binaries you need (instead of sideloading the whole apk).
https://www.dropbox.com/s/h2d23ecbrt2akeu/terminalide-2.02-binary-mod-signed.apk?dl=0
I downloaded this, and its vim worked on my old 4.2.2 Android phone - but I haven't actually tried it on an Android 5+ phone! (I don't have one; I'm researching my upgrade path).
At lease one stackoverflow user uses it: Rejecting re-init on previously failed class error when loading a Class with dalvikvm
A question within an answer: Anyone know how to confirm these binaries are safe? Especially ssh - downloading a "secure" shell binary from an anonymous user defeats the purpose!
The background of the post seems 100% legit, and has 467 "thanks" (wait, that's for all 7175's posts; this particular one only got 2 "thanks"...) - presumably people who downloaded it, and found no problem. But the site seems dodgey (http://forum.xda-developers.com), with lots of ads and security warnings. Maybe they are recent, after these older posts, and xda used to be good?
Terminal IDE appeals to people who don't want to root their phones - who probably don't want to sideload apps, or download anonymous binaries off the internet. I think the Play store does some rudimentary verification, and the more people who use it, the more likely problems are found. So it would be reassuring if spartacusrex could release this on the Play store as an upgrade - or, 7175 release a new fork.... or someone else release one. Forking is one of the strengths of open source!
BTW: I feel really bad doubting 7175's kind and great work, but sadly, security is a real issue. :(
No, but termux seems like a good Terminal IDE replacement for Lollipop - and under active development. Has vim, ssh, git, gcc etc and a version of apt-get.
[It only works in Android 5+, so I haven't tried it yet myself.]
Edit: It looks like it's not working on all new devices, maybe a target SDK version incompatibility? Terminal IDE should work at least on some other devices since it uses statically compiled binaries to run different parts of it. Statically compiled binaries are PIE(position independent executable) safe which is a requirement in lollipop. I've been running it on a lollipop build with my Galaxy Nexus no problem.
EDIT2: Also there are a few binaries that are dynamically linked and are not PIE, so those won't work.
You have lot of options now:
* Termux
* GnuRoot apps
* UserLAnd
* KBox
Of course, it should be possible to build a great filesystem yourself with fakechroot, fakeroot or proot. Or a non-root package manager.
I remember seeing a project named like 'Gentoo prefix for Android non-root' on Sourceforge. I don't know if it is still at alpha stage...

Categories

Resources