New issue
Advanced search Search tips

Issue 847385 link

Starred by 1 user

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

service intent must be explicit intent { act=android.support.customtabs.action.CustomTabsService }

Reported by develo...@therightdoctors.com, May 29 2018

Issue description

Application Version (from "Chrome Settings > About Chrome"): 
Android Build Number (from "Android Settings > About Phone/Tablet"): 
Device: 

Steps to reproduce: build and run

Observed behavior:  application crashing.

Expected behavior: the application should run.

Frequency: 
<number of times you were able to reproduce> 10 times 

Additional comments: trusted web activity not working 

 
TWA issue.txt
2.8 KB View Download
Components: UI>Browser>Mobile>CustomTabs
Labels: Needs-triage-Mobile
Cc: pnangunoori@chromium.org
Labels: Triaged-Mobile
developer@ -- Thanks for reporting this issue. Could you please share any sample file to install and reproduce the issue.

Also, please share your device details including OS version and Chrome version.

Thanks in advance!
*Thanks for replay *
Application details :

*Problem:-* Android application,  Trusted Web Activity Not Launching My Web
Application

Environment details:-
computer OS: Windows 7,  64 bit
Android OS : v27 android app support
Device:   Geneymotion (google nexus 6, and custom phones etc phones )
Chome Version: Chromes beta version, downloaded

*What we are Trying to do : -*

Actually, we want to integrate our website in our android application
using *Trusted
Web Activity *feature of Android which has launched recently.

*What we have Implemented:-*

I have downloaded and  trying to Run Demo application,( *svgomg *)  which
has provided by GitHub, as Reference for Trusted Activity, but it's giving the
exception,  exception details and files have attached, I have marked the
line in black clour where exception raising, if this Demo application works
fine, then we will replace with our Digital Asset Links
<https://developers.google.com/digital-asset-links/v1/getting-started> file

*Application Link*: https://github.com/GoogleChrome/custom-tabs-client
Exception::
Process: org.chromium.twa.svgomg, PID: 1839
    java.lang.RuntimeException: Unable to start activity
ComponentInfo{org.chromium.twa.svgomg/org.chromium.twa.svgomg.TwaLauncherActivity}:
java.lang.IllegalArgumentException: Service Intent must
be explicit: Intent { act=android.support.customtabs.action.CustomTabsService
}
        at android.app.ActivityThread.performLaunchActivity(ActivityThr
ead.java:2646)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThre
ad.java:2707)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.ja
va:1460)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6077)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(Z
ygoteInit.java:865)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
     Caused by: java.lang.IllegalArgumentException: Service Intent must be
explicit: Intent { act=android.support.customtabs.action.CustomTabsService }
        at android.app.ContextImpl.validateServiceIntent(ContextImpl.ja
va:1373)
        at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1482)
        at android.app.ContextImpl.bindService(ContextImpl.java:1450)
        at android.content.ContextWrapper.bindService(ContextWrapper.ja
va:636)
        at android.support.customtabs.CustomTabsClient.bindCustomTabsSe
rvice(CustomTabsClient.java:71)
        at org.chromium.twa.svgomg.TwaSessionHelper.bindService(TwaSess
ionHelper.java:183)
        at org.chromium.twa.svgomg.TwaLauncherActivity.onCreate(TwaLaun
cherActivity.java:36)
        at android.app.Activity.performCreate(Activity.java:6664)
        at android.app.Instrumentation.ca
<http://android.app.instrumentation.ca/>llActivityOn
Create(Instrumentation.java:1118)
        at android.app.ActivityThread.performLaunchActivity(ActivityThr
ead.java:2599)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThre
ad.java:2707)
        at android.app.ActivityThread.-wrap12(ActivityThread.java)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.ja
va:1460)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6077)
        at java.lang.reflect.Method.invoke(Native Method)
Labels: Pri-2 Type-Bug
Owner: peconn@chromium.org
Status: Assigned (was: Unconfirmed)
Ah, the code in TwaSessionHelper searches for Chrome Canary, and the error you get happens if Chrome Canary isn't installed. Peter, we should probably extend the list to include at least Dev, and also think about better error handling for this case: CustomTabsClient.bindCustomTabsService() should complain right away if it gets a null package name, and maybe TwaSessionHelper should directly handle this case in some other way.

developer@therightdoctors.com, for now you should be able to work around this by installing Chrome Canary from the Play Store (https://play.google.com/store/apps/details?id=com.chrome.canary). Thanks!

Comment 5 by peconn@chromium.org, Jun 13 2018

Status: Started (was: Assigned)
Project Member

Comment 6 by bugdroid1@chromium.org, Jun 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/custom-tabs-client/+/dde0cb7b054b212d7f2afad9606de23d00ed0c3b

commit dde0cb7b054b212d7f2afad9606de23d00ed0c3b
Author: Peter E Conn <peconn@chromium.org>
Date: Thu Jun 14 10:01:53 2018

🤝 Fail explicitly if user doesn't have supporting version of Chrome.

Bug: 847385
Change-Id: If7ab6aebbc3389421417aa9961d2369aaf512c1a
Reviewed-on: https://chromium-review.googlesource.com/1098916
Reviewed-by: Bernhard Bauer <bauerb@chromium.org>
Commit-Queue: Peter Conn <peconn@chromium.org>

[modify] https://crrev.com/dde0cb7b054b212d7f2afad9606de23d00ed0c3b/svgomg/src/main/java/org/chromium/twa/svgomg/TwaSessionHelper.java

Thanks,
for the solution, it is working now perfect...
HI , we are developing angular 6 application, PWA supported  it was
building and working perfectly before, but suddenly started giving an error,
 I searched and tried to resolve for that , and i got know it is related to
the service worker , but still, i did not find any proper solution. please
suggest any solution, or give any respected people contact.
thanks

*Error : *

Unexpected token / in JSON at position 0
SyntaxError: Unexpected token / in JSON at position 0
    at JSON.parse (<anonymous>)
    at MapSubscriber.host.exists.pipe.operators_1.map.content [as project]
(F:\dpm_doctor_angular5\node_modules\@angular-devkit\build-angular\src\angular-cli-files\utilities\service-worker\index.js:90:41)
    at MapSubscriber._next
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\operators\map.js:86:35)
    at MapSubscriber.Subscriber.next
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\Subscriber.js:103:18)
    at SwitchMapSubscriber.notifyNext
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\operators\switchMap.js:122:26)
    at InnerSubscriber._next
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\InnerSubscriber.js:30:21)
    at InnerSubscriber.Subscriber.next
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\Subscriber.js:103:18)
    at Observable.rxjs_1.Observable.obs [as _subscribe]
(F:\dpm_doctor_angular5\node_modules\@angular\cli\node_modules\@angular-devkit\core\node\host.js:172:21)
    at Observable.subscribe
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\Observable.js:162:69)
    at
F:\dpm_doctor_angular5\node_modules\rxjs\internal\util\subscribeTo.js:22:31
    at Object.subscribeToResult
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\util\subscribeToResult.js:7:45)
    at SwitchMapSubscriber._innerSub
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\operators\switchMap.js:103:63)
    at SwitchMapSubscriber._next
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\operators\switchMap.js:96:14)
    at SwitchMapSubscriber.Subscriber.next
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\Subscriber.js:103:18)
    at Observable.rxjs_1.Observable.obs [as _subscribe]
(F:\dpm_doctor_angular5\node_modules\@angular\cli\node_modules\@angular-devkit\core\node\host.js:238:21)
    at Observable._trySubscribe
(F:\dpm_doctor_angular5\node_modules\rxjs\internal\Observable.js:177:25)

Comment 9 by peconn@chromium.org, Jun 18 2018

I don't think it's in the scope of this bug, but if you could point me in the direction of your code I could give it a brief look?

Sign in to add a comment