CodeBrix.Develop.Debug.AndroidArm64
3.0.250.1243
dotnet add package CodeBrix.Develop.Debug.AndroidArm64 --version 3.0.250.1243
NuGet\Install-Package CodeBrix.Develop.Debug.AndroidArm64 -Version 3.0.250.1243
<PackageReference Include="CodeBrix.Develop.Debug.AndroidArm64" Version="3.0.250.1243" />
<PackageVersion Include="CodeBrix.Develop.Debug.AndroidArm64" Version="3.0.250.1243" />
<PackageReference Include="CodeBrix.Develop.Debug.AndroidArm64" />
paket add CodeBrix.Develop.Debug.AndroidArm64 --version 3.0.250.1243
#r "nuget: CodeBrix.Develop.Debug.AndroidArm64, 3.0.250.1243"
#:package CodeBrix.Develop.Debug.AndroidArm64@3.0.250.1243
#addin nuget:?package=CodeBrix.Develop.Debug.AndroidArm64&version=3.0.250.1243
#tool nuget:?package=CodeBrix.Develop.Debug.AndroidArm64&version=3.0.250.1243
CodeBrix.Develop.Debug.AndroidArm64
A debugger for the .NET runtime, packaged as android-arm64 native binaries that run on an Android device to debug .NET 11 CoreCLR Android apps. It implements the VSCode Debug Adapter Protocol (plus GDB/MI and an interactive command line), so a development tool on your computer can debug an Android app by pushing this payload into the app's sandbox with adb, starting it there in server mode, and speaking the protocol over an adb-forwarded TCP port.
This package supports android-arm64 only (64-bit ARM (arm64-v8a) devices - most phones and tablets). It is a carrier for native binaries, contains no managed library, and adds no NuGet dependencies.
CodeBrix.Develop.Debug.AndroidArm64 supports applications and assemblies that target Microsoft .NET version 10.0 and later. Microsoft .NET version 10.0 is a Long-Term Supported (LTS) version of .NET, and was released on Nov 11, 2025; and will be actively supported by Microsoft until Nov 14, 2028. Please update your C#/.NET code and projects to the latest LTS version of Microsoft .NET.
Installation
dotnet add package CodeBrix.Develop.Debug.AndroidArm64
The Android packages of this family are:
CodeBrix.Develop.Debug.AndroidArm64- the payload for devices whose primary ABI isarm64-v8a.CodeBrix.Develop.Debug.AndroidX64- the payload for devices whose primary ABI isx86_64.
Unlike the Linux packages of the family, the two Android packages land in DIFFERENT output folders, so an application that must debug on either kind of device references BOTH and picks the folder matching the device's ro.product.cpu.abi at run time.
Note that these package IDs carry no license suffix, unlike most CodeBrix packages; that is deliberate and shared with the other CodeBrix.Develop.* packages. The package contributes no managed types, so there is nothing to using, and no RuntimeIdentifier is required.
CodeBrix.Develop.Debug.AndroidArm64 supports:
- Debugging .NET 11 (CoreCLR) Android apps on the device, over the VSCode Debug Adapter Protocol (
--interpreter=vscode --server=<port>). - Attaching to the running app process (breakpoints, stepping, call stack, locals, expression evaluation, first-chance exception stops).
- Debugging over GDB/MI (
--interpreter=mi) or the interactive command line (--interpreter=cli) for other clients. - An Android compatibility layer built into the debugger (activated by environment variables) that copes with the on-device assembly layout and the SELinux sandbox - no extra native pieces to push.
- Automatic copy of the payload into the consuming project's output folder.
What referencing this package does
On every build of the consuming project, the on-device payload is copied to a netcoredbg-android-arm64/ subfolder of the output directory. Nothing is run on the build machine and no executable bit is needed there: the files are pushed to the device and made executable inside the app's sandbox. The same happens on dotnet publish.
Sample Code
Push the payload and start the debugger on the device
Your application locates the payload in its own output folder, pushes it into the debugged app's sandbox, starts the debugger in server mode, forwards the port, and connects a Debug Adapter Protocol client:
using System;
using System.Diagnostics;
using System.IO;
var payload = Path.Combine(AppContext.BaseDirectory, "netcoredbg-android-arm64");
var package = "com.example.myapp"; // the debugged app's application id
var device = "<adb serial>";
// 1. push the payload where run-as can copy it into the app sandbox
Process.Start("adb", $"-s {device} push \"{payload}/.\" /data/local/tmp/codebrix-ncdbg").WaitForExit();
Process.Start("adb", $"-s {device} shell run-as {package} sh -c 'mkdir -p /data/data/{package}/ncdbg && cp /data/local/tmp/codebrix-ncdbg/* /data/data/{package}/ncdbg/ && chmod 755 /data/data/{package}/ncdbg/netcoredbg'").WaitForExit();
// 2. mark the app as the debug app, launch it FRESH, and note its pid ...
// 3. start the debugger in server mode inside the sandbox (see the AGENT-README for the
// exact environment variables), then:
Process.Start("adb", $"-s {device} forward tcp:4711 tcp:4711").WaitForExit();
// 4. connect a DAP client to 127.0.0.1:4711 and send initialize / attach / configurationDone.
The complete, tested sequence (including the environment the debugger needs on the device) is in the AGENT-README.txt inside the package and in the repository's android/README.md.
Contents
| File | Purpose |
|---|---|
netcoredbg |
The native debugger executable (android-arm64), with the Android compatibility layer built in |
libdbgshim.so |
The debugger shim that finds the app's runtime and loads its debugging interface (android-arm64) |
ManagedPart.dll |
Managed helper loaded by the debugger on the device (expression evaluation, symbol reading) |
Microsoft.CodeAnalysis*.dll (4 files) |
Roslyn scripting stack used by ManagedPart |
Documentation
This package includes AGENT-README.txt, a complete reference and usage guide written for AI coding agents - point your agent at that file when it is writing code against this package. One file covers every package of the family.
License
CodeBrix.Develop.Debug.AndroidArm64 is licensed under the MIT License - see the LICENSE file.
For licensing and provenance information about the open source code included in
this package, see the THIRD-PARTY-NOTICES.txt file inside the package, or
THIRD-PARTY-NOTICES.txt in the repository.
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.250.1243 | 68 | 9/7/2026 |