slack-digest/2020-09-23.md
Wed, 23 Sep 2020 08:25:00 GMT
Join the conversation at slack.cordova.io
Tue, 22 Sep 2020 11:51:53 GMT
@aquinn says
old but here it is: https://stackoverflow.com/questions/64008985/angularjs-custom-directive-for-form-validation-for-date-inputs
Tue, 22 Sep 2020 12:03:31 GMT
@pratiksha.bhavsar0895 says
Can we do it like this way : as soon as effectivedate is selected in expirydate selection disable the date which are less than or equal to effectivedate ? I mean you can just limit the expiry date. And at the beginning you can just disable the expiry date input ?
Tue, 22 Sep 2020 12:04:08 GMT
@pratiksha.bhavsar0895 says
I remember i have tried something like this in some previous project with respective to start & end date.
Tue, 22 Sep 2020 12:12:08 GMT
@yuanzuo says
I am not sure if this is android studio version issue. I tried command line cordova android build, got this error: >cordova build android Checking Java JDK and Android SDK versions ANDROID_SDK_ROOT=undefined (recommended setting) ANDROID_HOME=C:\Users\yzuo\AppData\Local\Android\Sdk (DEPRECATED) Using Android SDK: C:\Users\yzuo\AppData\Local\Android\Sdk Subproject Path: CordovaLib Subproject Path: app Downloading https://services.gradle.org/distributions/gradle-6.5-all.zip
Exception in thread "main" http://javax.net|javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Tue, 22 Sep 2020 22:23:39 GMT
@owenocq says
I've got a white flash on startup before the WebView appears on ipad.
I've tried
<preference name="BackgroundColor" value="#00000000"/>and<preference name="BackgroundColor" value="black"/>in my config.xmlAnd I think my LaunchStoryboard is set up with all images, and the CDVLaunchScreen is selected in the general xcode project settings.
I've previous a long time agao used an older version of CDVsplashscreen to fix the issue but the old version of that plugin and the current version don't appear to be working for me.
I'm using Cordova 5.1.1 (can't use 6.1.1 because scaling is handled differently on iPad 12.9")
Is there way to make the white flash black? Or a way to extend the time LaunchStoryboard Images.xcassets stay on screen to give time for WebView to load?
Wed, 23 Sep 2020 00:48:55 GMT
@ebrommers says
I’ve been investigating Ionic Appflow as a replacement for PhoneGap Build in our CM process. Am I doing things wrong, or can we not build for iOS / Android without upgrading to a paid account? The only target platform I’m seeing that allows me to build is “Web”.
Wed, 23 Sep 2020 00:52:45 GMT
@norman137 says
Wed, 23 Sep 2020 00:53:36 GMT
@norman137 says
Not really familiar with ionic, some others here can probably provide more insight, but looks like to compile native app binaries using appflow, it requires a paid account.
Wed, 23 Sep 2020 00:54:20 GMT
@ebrommers says
Awesome — thanks. Looks like I’ll be running from the CLI (Open Source, empty wallet) 😂
Wed, 23 Sep 2020 07:44:47 GMT
@jcesarmobile says
There was this coupon code for 1 month free, not sure if still valid
Wed, 23 Sep 2020 07:44:50 GMT
@jcesarmobile says
BUILDWITHUS
Wed, 23 Sep 2020 00:52:56 GMT
@dpogue says
oooh, so close and yet so far https://github.com/WebKit/webkit/commit/9135bf5eb1e1a98c54b7eca755fa8419f5a42ab5
Tue, 22 Sep 2020 21:46:30 GMT
@ucheozoemena says
Hi folks, question regarding a custom plugin I'm working on.
I have a plugin for getting media from the device gallery, and I have a
LinearLayoutthat contains aTextViewfor showing the duration of videos in the gallery. However, I'm seeing some unusual behavior where the duration gets applied incorrectly to an image if the image is shown in a grid square that previously contained a video thumbnail. TheLinearLayouthas visibility set toGONEby default, and it's changed toVISIBLEif it's a video thumbnail. This is the relevant snippet of code://<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="<http://schemas.android.com/apk/res/android>" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#DDDDDD" android:layout_margin="2dp"> <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="centerCrop" android:id="@+id/vImage"/> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:background="#80000000" android:orientation="vertical" android:id="@+id/vidDurationContainer" android:visibility="gone" > <TextView android:id="@+id/vidDuration" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="left" android:paddingLeft="10dip" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Image" android:textColor="#FFFFFF" android:textIsSelectable="false" android:textSize="20sp" /> </LinearLayout> <CheckBox android:id="@+id/checkBox" android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="visible" android:button="@android:color/transparent" android:background="@drawable/cameraroll_item_selection" /> </FrameLayout>``` ```// Gallery.java file ... public PictureView(...) { LayoutInflater.from(getContext()).inflate(getResourceId(getContext(), "layout", "view"), this); vImage = (ImageView)findViewById(getResourceId(getContext(), "id", "vImage")); checkBox = (CheckBox)findViewById(getResourceId(getContext(), "id", "checkBox")); vidDurationContainer = (LinearLayout)findViewById(getResourceId(getContext(), "id", "vidDurationContainer")); vidDuration = (TextView)findViewById(getResourceId(getContext(), "id", "vidDuration")); } public void load(...) { ... vImage.setImageResource(0); vImage.setVisibility(INVISIBLE); loader.loadPicture(...); } @Override public void onLoad(PictureInfo picture) { if (this.pictureInfo != picture) { return; } new Handler(Looper.getMainLooper()).post(new Runnable() { @Override public void run() { vImage.setImageBitmap(pictureInfo.thumbnail); vImage.setVisibility(VISIBLE); if (pictureInfo.isVideo) { vidDurationContainer.setVisibility(VISIBLE); vidDuration.setText(String.valueOf(pictureInfo.duration)); } else { vidDurationContainer.setVisibility(GONE); } } }); } @Override public void loadPicture(final PictureInfo pictureInfo, ...) { ... executor.execute(new Runnable() { @Override public void run() { ... synchronized (pictureCache) { Bitmap cachedBitmap = pictureCache.get(pictureInfo.uri); if (cachedBitmap != null) { pictureInfo.thumbnail = cachedBitmap; callback.onLoad(pictureInfo); return; } } ... if (pictureInfo.thumbnail != null) { callback.onLoad(pictureInfo); synchronized (pictureCache) { pictureCache.put(pictureInfo.uri, pictureInfo.thumbnail); } } } }); } ...``` I've removed most of the other code (indicated by `...`) to try to highlight what I think are the most relevant bits. This is what the problem looks like: - when I open the gallery: the first 3 thumbnails that show "7.0" duration are video thumbnails, the fourth is an image. This is the correct behavior - I then scroll down the gallery such that that particular row is no longer visible, then I scroll back up to this row, and the "7.0" is no longer showing How can I fix this? The expected behavior is that the duration is always shown for video thumbnails and not shown for images. Clearly something is wrong with the logic to show/hide the duration. Any help will be greatly appreciated, thanks!
Wed, 23 Sep 2020 07:59:15 GMT
@pratiksha.bhavsar0895 says
Hi team did anyone here faced issue with filetransfer plugin when server is pointing to https://stagingDomain1..... (https) I got following error in android: W/FileTransfer: Error getting HTTP status code from connection. http://javax.net|javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. at http://com.android.org|com.android.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(ConscryptFileDescriptorSocket.java:219) at http://com.android.okhttp.internal.io|com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:192) at http://com.android.okhttp.internal.io|com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:149) at http://com.android.okhttp.internal.io|com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:112) at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184) at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126) at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95) at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281) at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:461) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:127) at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:89) at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(Unknown Source:0) at org.apache.cordova.filetransfer.FileTransfer$1.run(FileTransfer.java:425) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764) While the api & file transfer plugin worked properly when switch to our other staging domain with : http://stagingDomain2.... (http). For IOS worked properly on http as well as https domain. Thanks & Kind Regards, Pratiksha