Status Update
Comments
re...@gmail.com <re...@gmail.com> #2
Edit:
- Spurious line "65 / ~350" after the first paragraph
- Spurious line "65 / ~350" after the first paragraph
al...@gmail.com <al...@gmail.com> #4
Could you perhaps use REGEX to parse the json string? Something like this should work (with some modifications for your use case):
WITH
yourTable AS (
SELECT
'{"bar": ["vimota", ""]}' AS json
UNION ALL
SELECT
'{"bar": [, "Brazil"]}' )
SELECT
ARRAY(
SELECT
REGEXP_EXTRACT(num, r'"(.*)"')
FROM
UNNEST(SPLIT(REGEXP_EXTRACT(JSON_EXTRACT(json,
'$.bar'), r'\[(.*)\]'))) AS num
WHERE
REGEXP_EXTRACT(num, r'"(.*)"') IS NOT NULL)
FROM
yourTable;
WITH
yourTable AS (
SELECT
'{"bar": ["vimota", ""]}' AS json
UNION ALL
SELECT
'{"bar": [, "Brazil"]}' )
SELECT
ARRAY(
SELECT
REGEXP_EXTRACT(num, r'"(.*)"')
FROM
UNNEST(SPLIT(REGEXP_EXTRACT(JSON_EXTRACT(json,
'$.bar'), r'\[(.*)\]'))) AS num
WHERE
REGEXP_EXTRACT(num, r'"(.*)"') IS NOT NULL)
FROM
yourTable;
al...@gmail.com <al...@gmail.com> #5
Nope, many of our json arrays contain json string values with user-input chars like " which would break a regex-based approach to parsing the json, since we'd have to distinguish " from \" from \\" from \\\", etc.
[Deleted User] <[Deleted User]> #6
Thanks for the feedback! We'll take this suggestion into account as we plan JSON-related functionality, and I'll update here if and when there is more to share.
Description
PlacePicker.IntentBuilder builder = new PlacePicker.IntentBuilder();
Intent intent = builder.build(getActivity());
startActivityForResult(intent, PLACE_PICKER_REQUEST);
//API Level 23
//Device: Xiaomi Redmi 4
Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'void com.google.maps.api.android.lib6.impl.bq.o()' on a null object reference
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.maps.api.android.lib6.impl.da.b(:com.google.android.gms.DynamiteModulesB:96)
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.android.gms.maps.internal.z.onTransact(:com.google.android.gms.DynamiteModulesB:73)
06-01 15:34:40.727 506 506 E AndroidRuntime: at android.os.Binder.transact(Binder.java:387)
06-01 15:34:40.727 506 506 E AndroidRuntime: at url.b(:com.google.android.gms:233)
06-01 15:34:40.727 506 506 E AndroidRuntime: at upa.a(:com.google.android.gms:127)
06-01 15:34:40.727 506 506 E AndroidRuntime: at omy.b(:com.google.android.gms:340)
06-01 15:34:40.727 506 506 E AndroidRuntime: at omu.a(:com.google.android.gms:143)
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.android.gms.maps.MapView.a(:com.google.android.gms:7332)
06-01 15:34:40.727 506 506 E AndroidRuntime: at amzd.onResume(:com.google.android.gms:92)
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.android.chimera.FragmentProxy.onResume(:com.google.android.gms:433)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.a(:com.google.android.gms:12120)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.a(:com.google.android.gms:1286)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.a(:com.google.android.gms:1268)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.p(:com.google.android.gms:2153)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.a(:com.google.android.gms:12126)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.a(:com.google.android.gms:1286)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.a(:com.google.android.gms:1268)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gm.p(:com.google.android.gms:2153)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gc.e(:com.google.android.gms:11223)
06-01 15:34:40.727 506 506 E AndroidRuntime: at bxe.superOnResumeFragments(:com.google.android.gms:2406)
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.android.chimera.Activity.onResumeFragments(:com.google.android.gms:384)
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.android.chimera.Activity.publicOnResumeFragments(:com.google.android.gms:389)
06-01 15:34:40.727 506 506 E AndroidRuntime: at bxe.e(:com.google.android.gms:469)
06-01 15:34:40.727 506 506 E AndroidRuntime: at gc.onPostResume(:com.google.android.gms:511)
06-01 15:34:40.727 506 506 E AndroidRuntime: at bxe.superOnPostResume(:com.google.android.gms:2401)
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.android.chimera.Activity.onPostResume(:com.google.android.gms:375)
06-01 15:34:40.727 506 506 E AndroidRuntime: at bxc.onPostResume(:com.google.android.gms:183)
06-01 15:34:40.727 506 506 E AndroidRuntime: at com.google.android.chimera.Activity.publicOnPostResume(:com.google.android.gms:380)
06-01 15:34:40.727 506 506 E AndroidRuntime: at bxe.onPostResume(:com.google.android.gms:460)
06-01 15:34:40.727 506 506 E AndroidRuntime: at android.app.Activity.performResume(Activity.java:6403)
06-01 15:34:40.727 506 506 E AndroidRuntime: at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3099)