I am working on a desktop app using Google Drive SDK through OAuth2 authentication, and would like to share Google Drive files from my desktop app. I have studied the "Share" feature in Google's official Google Drive desktop version, and found that it just simply loads the following url in an embedded webbrowser: https://drive.google.com/sharing/share?shareUiType=default&authuser=0&foreignService=googledrivesync&access_token=(Oauth2AccessToken)&subapp=10&shareProtocolVersion=2&gaiaService=wise&theme=2&client=desktop&command=settings&hl=en_US&popupWindowsEnabled=false&id=(theFileId) .
After loading the url, the sharing web page will show up in the embedded IE browser. In Google Drive, no matter you have signed in Google or not in IE, the share function always works.
I employed the same url in my embedded webbrowser, and the sharing page shows up just as expected, but the actually sharing function only works when your have signed in Google in IE already. If your account is not in a Google signed-in status in IE, the sharing will not succeed. There is no problem for displaying the sharing page, but error message "The server encountered an error. Please try again later." will be given when "Share" button is clicked.
I have spent several days on this problem, using Fiddler to monitor the HTTP package, trying Firefox and Chrome instead of IE, modifing different setting in Google developer console... but still have no clue how Google Drive can successfully share files in its embedded IE browser without having to sign in first.
NOTE: this is not an IE problem, same problem happends in Firefox and Chrome too.
Any tip or trick is appreciated.
Related
I have a SharePoint list that I would like to share with external users, some might not have a Microsoft 365 account. I have created the link so anyone have access to the list. The link works great in a browser on a laptop when I open in a private browser.
I then generate a QR code for this link. When I scan the QR code on an iOS mobile device it force open in the Microsoft Lists app. It then says "Permission Required - You don't have permission to view this list".
I then tried to open the link in a browser on an iOS mobile device and that worked fine.
So the question is. How do I force the link to open in a browser instead of the Microsoft Lists app?
I have tried to append "web=1" to the link but that doesn't change anything.
If you’re using an iPhone, there are a few different ways to open links in your browser of choice instead of in the default app. One way is to long press on the link (this works in most apps), which will bring up a menu with the option to “Open in Safari.” You can also change your default browser settings so that all links automatically open in Safari or another browser.
We pass an image from our app to Instagram using their standard iPhone URL scheme. It was working fine in iOS11, but in iOS12 it briefly goes to an Instagram login page (even though we're logged in) and then opens the Instagram Library with our image and tapping next to the Share screen places the image on a share page with many options unavailable. For example if you type a # hashtag it does no lookup. Tapping share does nothing.
Any ideas?
The redirect to the login page is a bug with the Instagram app, you have to wait for an update. You can do nothing, even their apps like Boomerang are broken when currently sharing to Instagram.
Yes, I tried so many repost application to be sure about the problem, unfortunately, it seems a bug of the iOS version of Instagram. In our application's Android version, we can trigger the Instagram.
I am trying to build a simple web application, which capture users photo and sent it my custom server there by connected to some other business use-case. My web page uses HTML's file input control to launch native camera or gallery pick up option.
var input = document.createElement('input');
input.setAttribute('accept', 'image/*');
input.setAttribute('capture', 'camera');
input.setAttribute('type', 'file');
input.click();
This web app, I placed in local webserver with a name "PhotoLocker" and testing with url like
https://localhost(ipaddress to access via mobile browser)/PhotoLocker/index.html
This link is working fine both on desktop and mobile chrome browsers and am able to debug any issues. Where as same link, I try to access from WeChat browser (just opening above link from chat window), it is not at all opening my application in WeChat in app browser.
After googling, I found that https URL scheme is not supported by WeChat. is it True? When I paste the same app url as weixin://ipaddress/PhotoLocker/index.html, I am able to see my web app home page but it is not working as expected.
My Question is - how to debug my webpage opened in WeChat browser? Do I need a official WeChat Dev account even to develop and test sample apps?
Additional Info :
I am able to debug webpage from WeChat web devloper tool as mentioned in below link. But, unable to debug mobile wechat page in this tool. It is always opening chrome dev tools.
https://mp.weixin.qq.com/wiki?action=doc&id=mp1455784140&t=0.06697335132505233#1
I am a frontend developer in China, Chinese. Forgive my English for any mistake, misunderstanding I could make. Some links (dev docs mostly) below contain sites complete in Chinese, because I can not find corresponding English ones for now.
how to debug my webpage opened in WeChat browser?
Tencent provide an IDE for developing regular web interface and WeChat-mini-program, with which developer can directly interact with:
JSSDK (basically a special weixin
Object lives only in in-WeChat-browser);
API provided in WeChat-mini-program.
If you download that IDE:
First it will ask you is to use you WeChat to scan the QRCode, then confirm login with your WeChat account;
Next it will show up two square button (image below), left one is for WeChat-mini-program, the right one is for you to testing regular web page.
Click the right blue one, then you can find your way out, it's just something built top on project Blink.
As you can see the part of debugging regular webpage in WeChat IDE is no more than a simulator (in the WeChat-mini-program part, developer can write code directly in it), and in my experience it does have bugs, you will still need to test code in real machine.
For that Tencent provide another tool called vConsole, tutorials here, with it you can do following things directly in in-WeChat-browsers:
View console logs;
View network requests;
View document elements;
View Cookies and localStorages;
Execute JS command manually
and so on
Do I need a official WeChat Dev account even to develop and test sample apps?
Depends.
You may know the Official Account inside WeChat, with webpages directly opened in any context inside in-WeChat-browser, it will have the ability to interact the weixin Object, or have some API like login with WeChat, pay with WeChat Pay:
API like close current in-WeChat-browser, hide-share-button will not required anything special, you don't need to register any Official Account;
But if you want yo do the Pay, Login thing, you need an Official Account and pay for the ability every year (not sure about this outside China).
The localhost problem you faced
I don't have my working machine with me now so I can not test. Regularly I can proxy localhost with Charles then debugging in WeChat, but never do the https, I will try it later.
All the information got regarding how to debug webpage opened in wechat browser redirects to how to see log or ajax/netwrok calls analysis.
Even with WeChat web devloper tool as mentioned in below link, I am unable to debug mobile wechat page in this tool. It is always opening chrome dev tools.
https://mp.weixin.qq.com/wiki?action=doc&id=mp1455784140&t=0.06697335132505233#1.
Hence further analyzed remote mobile webpage debugging and found that there is no way to put break points, watch, expressions and all just like in chrome dev tools is not possible.
As a work around - you are able to debug code, when you simulate page in dev tools but no way to debug webpage in mobile device.
Same webpage when tried to do remote debugging as per WeChat web devloper tool documentation. here we can only see console logs and network calls.
After yet another reboot of my macbook, chrome stopped loading my webapp.
It returns literally nothing in browser window and the only thing i managed to find is that requests in chrome's timeline has status "cancelled".
If I'm trying to get there from another website (by changin url and hitting "return" button), it also does nothing, it doesn't even try to reload page.
Other browsers load it fine atm.
I've received this report from a user about couple of weeks ago, but now i've got it myself, so I assume the problem is in my server.
Recently, i've found that my android phone also can't access the website from chrome browser. The behaviour is the same. However, android default browser has access.
What could that be? Where should i look?
I'd provide more information, but there is no error codes or messages of any kind, so i have no idea what information could help in this question.
Also, i have a chrom browser extension (similar to Pocket), which also is unable to access server. The notable difference is that extension uses Socket.io only.
There were no recent code changes on server side except letsencrypt certificate renewal.
I've tried this:
server restart
different ip/locations (vpn and public access points)
chrome data cleanup / chrome version degrade / chrome reinstallation / chrome canary installation
tried to open server address directly - no difference
I'm really confused. I want to make a Chrome Extension that can update a user's Google Calendar, what kind of program should I register under Google API?
Is it Web App? But I don't plan to have a server to host anything because Chrome Extensions are in the browser itself.
I really don't think it's a service account, but if it is, somebody enlighten me!
So that leaves installed applications?
Well, Google Extensions and Google API are very different in nature, and they don't have a special way to comunicate themselves.
Chrome Extensions are javascript code running in the browser allowed by a Chrome user, with more rights than a normal page; while Google API is accessed by server code, just as Google Apps Scripts (javascript code running in a Google server with some Google user's right).