How to use profileable process in Android Studio Profiler? - android-studio

I have downloaded a performance-samples project from Github (https://github.com/android/performance-samples/tree/main/JankStatsSample) but do not see a (profileable) process, as shown in below image. Mine is only showing (debuggable). I am using Pixel 5 API 31 with latest version of android (Chipmunk). I have followed the steps on Android Devs website below but still no luck. What am I missing?
https://developer.android.com/studio/profile#profileable-apps

You've built the debug version of the app, therefore you can profile it without it being profileable. You can simply select the debuggable process if you want to profile it.
Profileable is useful when you want to build a release (not debug) version of the app and still profile it (to more accurately check the performance of your app). In case the profileable tag is added to the AndroidManifest.xml, all you need to do is build the release version of the app and it will show as profileable.

Related

cordova integrate files into the prject

Good day everyone; having project and must update to cordova 9.0.0 and at least to android 8.0.0 to publish in google play, when i try to build the build fail because (Could not resolve all artifacts for configuration ':classpath'), the most likely cause is connections errors the question is
can i set a proxy program (say for example tor) through the node.js command prompt (and not through android studio because it doesn't work)
if that not possible, if i manged to download the required files manually (example bundletool-0.13.2.jar https://dl.google.com/dl/android/maven2/com/android/tools/build/bundletool/0.13.2/bundletool-0.13.2.jar) is there a way to integrate them somehow to the project as a work around
Thanks in advance

Can I Remove Push.SetSenderID(string) Now That It's Obsolete?

Is it safe to remove the line of code that calls Microsoft.AppCenter.Push.Push.SetSenderId, which has been marked obsolete?
I updated Microsoft.AppCenter.Push, increased the Xamarin.Android target framework to 8.1, updated AndroidManifest.xml, added google-services.json and updated the proguard config following these steps:
https://learn.microsoft.com/appcenter/sdk/push/migration/xamarin-android
However, the following warning is unclear as to whether I can safely delete Microsoft.AppCenter.Push.Push.SetSenderId:
'Push.SetSenderId(string)' is obsolete: 'For all the Android developers using App Center, there is a change coming where Firebase SDK is required to use Push Notifications. For Android P, its scheduled at the release date for the latest OS version. For all other versions of Android, it will be required after April 2019. Please follow the migration guide at https://aka.ms/acfbxa.' (CS0618)
Yes, you can safely delete Microsoft.AppCenter.Push.Push.SetSenderId once you have completed the recommended steps:
Increase the Xamarin.Android target framework to 8.1
Update AndroidManifest.xml
Add google-services.json from Firebase
After completing the recommended steps, Microsoft.AppCenter.Push.Push.SetSenderId will no longer execute any code in the SDK (it is essentially a no-op).

Android studio sdk does not contain any platforms

I downloaded Android studio from their website for windows. It contained 790 Mb. But there is a message shown like
SDK is missing
I followed answers for this issue of missing android studio SDK in here. But my problem is not solved yet.
I have another problem. There is a message shown
SDK does not contain any platforms
when I chose the SDK location by going to configure > project defaults > project structure.
May be some files are not downloaded,try again with your internet connection.It will ask to download some additional files, press allow.
this problem faced by almost everyone due to network problem .
You can easily resolve this error. I suggest you ,if any of your friends already installed android studio then copy sdk from him/her and paste into your sdk path and don't forget to delete sdk.
In this process ,your internet should work so that rest of the things it can download .
this is the best and easy way to resolve sdk error.After that you can download platform tools easily by going to settings>>Android sdk>> sdk tools.
Open the SDK Manager to download the NDK bundle.When your download completed, maybe there'r two different folders you have. One is ndk-bundle the other is ndk/22.0.7026061(the version you choose to download). And just use the behind one
As the log said before. Make sure you have config the ndk.dir in local.properties or the system global path variable.Or you also can open the project structure dialog to choose the Ndk location.Still use the behind folder( ndk/22.0.7026061).
If you have config it and still have the same problem.you can use the SDK Manager to download the NDK lower version one(like 21.0.6113669).Cause it may not match to your AS version
Then repeat the step two
That's work nice for me

Does MtouchSdkVersion setting affect what version of iOS we can run on?

When deploying an existing Xamarin forms proj from Visual Studio I was getting errors like "Failed to load AOT module ‘System.Net.Http’ while running in aot-only mode". This had worked in the past, it seemed Xcode had recently updated before I hit the problem. I found I was able to get the project deploying by changing the csproj entry 10.0 to 10.3. It looks like I could change this setting and everyone would be ok if they also had updated xcode.
My concern is: Does this change what versions of iOS the application can support? Would it have any other surprises when deployed to the apple store?
One thing I don't understand is I am the only person seeing this issue. Another developer is able to deploy to an iOS device (iPad instead of an iPhone) that also has the latest version of iOS without problems. Running “xcodebuild -version” shows we have the same version of xcode installed (8.3.1) and running “xcodebuild -showsdks” shows we have the same iOS sdk available (iOS 10.3).
There is some good documentation on the iOS SDK version: https://developer.apple.com/library/content/documentation/DeveloperTools/Conceptual/cross_development/Overview/overview.html#//apple_ref/doc/uid/20002001-BABEBGCF
You can build against a higher version of the SDK and run against lower versions of iOS.
Building against different versions of the iOS SDK can cause differences in behavior, these may show as regressions in your application.

How to create crashlytics binding for Xamarin.iOS?

I've downloaded Crashlytics app that integrates Crashlytics.framework into XCode project, and it works great for XCode. But as far as I know, to build Xamarin.iOS binding I need static library, and I can't find it neither in framework nor in Crashlytics.app contents. There is only "run" executable and header. I don't know how to use it under Xamarin.iOS. Btw, AndrewReed on Xamarin forum managed to build dll somehow, so it's possible.
So, how to create crashlytics binding for Xamarin?
AndrewReed answered this question on Xamarin forum:
As with quite a few sdk's, sometimes they bundle a folder instead of the static lib,which essentially is the static library. There will be a sizeable file that maybe doesnt have an extension(this is your .a file) so you can rename that to be .a and then include that in a xamarin bindings project. Run the sharpie marker on the header file in the folder which will generate your necessary files. Watch out for one gotcha, delegate is a reserved word in c#, so you may need to go around and change this by adding an # symbol(to the name) to allow you to use the reserved word.
So what I actually did was, created a project in xcode and ran the crashlytics programme, this then added the crashlytics framework to the project. In finder locate that and you will have a structure like so: - run - /Versions --/A ---Crashlytics ---/Headers ----Crashlytics.h
So the /A folder is essentially your static lib, use this and create your binding from that, or in this particular case, just download it from the mono bindings || my repo.
If you're looking for an officially supported crash reporting plugin, Crittercism just released one (Full disclosure: I'm one of the co-founders). You can download the bindings from the Xamarin store here: http://components.xamarin.com/view/crittercism
The latest version of Xamarin seems to have it build in.
Here are the steps that I followed
1.) In the Xamarin Studio , go to the main app, and add the Crashlytics API key in the Build -> Crash reporting section. Build and run that app. The evidence suggests that is enough to get data sent to Crashlytics. I saw that it knew about older versions of the app I had built and ran weeks ago with the API key already in.
2.) Go to Xcode and create a new project with the same name as the Xamarin project, com.{company}.{appname}. (You probably need to have that profile downloaded.) I did it in Swift by the way with no issues.
3.) Go to crashlytics.com com and go to settings -> Apps (or https://www.crashlytics.com/onboard)
4.) You will get an app to download and run. The app walks through the steps of adding
A.) A build phase run script
B.) Code to the application main Crashlytics.startWithAPIKey(“nnnn”)
5.) Run your Xcode version of the app
The Crashlytics web page popped up immediately.

Resources