When user is using an android app and on one page he doesn't get any response but loading progress bar is visible then how developer can be notified for this issue? Is there any tool or any other way to implement this type of functionality in the app.
Implement the firebase crash analysis in your Project . Firebase itself give you the Trackpath via email.
Here you will get the method , line number, exception type everything in the email .
Related
I have a weird behavior in my app. I have the google_maps_flutter plugin with the flutter_typeahead plugin which is used as an autocomplete address search.
When the user login in the app, the app only stores the user data in the internal database and the map is loaded, the app gets the current user location and set the map in such location, and then the user can use the autocomplete address search to type any address and load the results coming from Google Api Directions.
The strange thing here is, when I tap in the autocomplete, the page or the map is redrawn/reloaded and I can't do anything as you can see in this link:
App after just login.
But the most weird is, if I just exit from the app (no logout) with SystemNavigator.pop(animated: true);, and after that I open again the app, this behavior is gone and the app works, like this video: App reopened.
I don't have a clue why, and I can't post the code here, first, because it's a production app and second, because the minimal code is so extense to publish it here.
It's a little similar to my Github issue: https://github.com/flutter/flutter/issues/78638 but here, although I'm getting in realtime the user location, the map isn't moving because I'm in the same place al the time.
EDIT: In the dispose method for the StatefulWidget I set a debug print to check when this is disposed and when I tap on the typeahead plugin, I see the StatefulWidget (where is the map and the typeahead) is disposed, when I just login, but it isn't present when I reopen the app.
I'm using flutter to develop apps. Now stuck on the test cases,
I referred flutter driver for testing and it is working fine for simple UIs and flows.
I want to go through the login part, and I have an OTP verification section there, how do I pass this screen because I have to enter the pin that will receive at the verification time.
When I tried to check the native functions like toast (I'm using one library: FlutterToast) it is not catching the UI change. I tried with text catch
await driver.waitFor(find.text('Invalid credentials.'));
referred links:
https://blog.codemagic.io/integration-tests-codemagic/
https://medium.com/ionicfirebaseapp/an-introduction-to-integration-testing-for-flutter-app-b7d2b2af1739
Do you solved this? Maybe try use another like toast widget if that widget can receive key.
await driver.requestData('Invalid credentials.');
Use this for detecting toast. This worked for me.
I am trying to set user information to crash reports in crashlytics in Android App, so that it will help me to find out which of our users experienced a given crash. I have explored and found there are 3 APIs can set user information in crash report.
Those are,
void Crashlytics.setUserIdentifier(String identifier);
void Crashlytics.setUserName(String name);
void Crashlytics.setUserEmail(String email);
It is recommended to use all the APIs. All documented at http://support.crashlytics.com/knowledgebase/articles/120548-how-do-i-set-user-information-
But I have no idea,
1. How to get user-identifier, name and email details, which are input to those APIs?
2. Which place in program to call these crashlytics APIs?
Please share some ideas, how to implement this.
Regards
Annada
Looks like detail UI in Fabric has been changed.
Select one of crash issue.
Click Version in Recently Activity
On detail page top right hand corner, you should see affected user information.
If your application uses some form of user identification (i.e. login, email, phone, device specific id) you can use that as crashlitics user information. I suppose you can generate user id when your app is first launched and save it in shared preferences, for example. It'll be shown at top-right corner of detailed crash view.
i.e. I set ID and name as soon as user authenticates in my app.
You typically want to set them as soon as possible (as your data arrives) and all info has been initialized.
For new Firebase api
FirebaseCrashlytics.getInstance().setUserId("12345")
For More
Customize your Firebase Crashlytics crash reports
I am using Crashlytics in my application and I wanted to get user id and email along with each crash. I did something like this:
Crashlytics.setUserEmail(tokenModel.getEmail());
Crashlytics.setUserIdentifier(String.valueOf(tokenModel.getPk()));
I am doing this in my login screen, after the user has provided his email and successfully registered with the app, so as to get user id. The problem is, I am not getting these data in the crash reports.
What is the lifecycle and working of Crashlytics in above context? Do I need to set these fields every time the app opens?
I am not sure if it needs to be done every time you launch the app and the Crashlytics docs don't explicitly say it neither.
I know that we do it with every launch and it works - provided user info is displayed properly in the dashboard.
My suggestion would be to try send this information every time you initalize Crashlytics with Fabric.with(this, new Crashlytics());, as soon as you have your user data provided (for example after fetching his user profile from your server).
You need to select the issue, click in more details and at the top right corner you can see a label with Identifier.
You need to set it every time you initialise the Crashlytics. At least doing this it works.
if you are using this Crashlytics.setUserIdentifier(""); you can check in data tab in firebase. Fabric.with(this, new Crashlytics()); working fine.
If you look into codes of FirebaseCrashlytics than you can see that userId is being saved into the session. So I am sure that after restarting application your id will be restored.
I am creating a mobile app which connects to some jive based community using childbrowser.
I can easily open the community, login and do stuff.
But I also need to fetch session details in my app, so that I could use these to fetch JSON strings to show user image/info on my app showing that user is logged in.
I tried working on childbrowser, but couldn't investigate much.
It seems it won't work with my community URL. While using google url it shows popups on location changes, but not for my url.
Can any one help me in fetching the data I want ?
Here is the sample code I am using to detect location change:
function openURL() {
window.plugins.childBrowser.onLocationChange= function(loc){
alert('In index.html new loc = ' + loc);
};
window.plugins.childBrowser.showWebPage("https://communityName.jive-mobile.com/#jive-login", { showLocationBar: false });
}
I am getting my login page, but after login I can't see any alert coming !!
I need to get proof of user login and user session details.
Thanks
I have just updated the ChildBrowser plugin for my own use, following code given here: How do I get the web page contents from a WebView?
I am using this to log in on Google API oAuth2, watching for the right page to load. I am using the onPageLoaded(html) event that has the (computed) html source. You might want to use this to get the html that was loaded and check for "stuff". I don't use jive so I wouldn't know where to start, but I'll put up a sample Google oAuth2 project for you to try.
HTH
EDIT:
the code is at: https://code.google.com/p/filechunkreader/
Don't let yourself get fooled by the name, this project is the repo for my Java plugins experiments. It contains so far 2 plugins, FileChunkReader and a custom version of ChildBrowser.