Skip to content

Commit 6ef489e

Browse files
committed
fix(android-runtime): align Eliza app identity and chip smokes
1 parent 9656145 commit 6ef489e

25 files changed

Lines changed: 245 additions & 163 deletions

packages/app-core/platforms/android/app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
apply plugin: 'com.android.application'
22

33
android {
4-
namespace "app.eliza"
4+
namespace "ai.elizaos.app"
55
compileSdk rootProject.ext.compileSdkVersion
66
// BuildConfig is needed for AOSP_BUILD gating in ElizaAgentService.java —
77
// see eliza/packages/agent/src/runtime/aosp-llama-adapter.ts and
@@ -10,7 +10,7 @@ android {
1010
buildConfig true
1111
}
1212
defaultConfig {
13-
applicationId "app.eliza"
13+
applicationId "ai.elizaos.app"
1414
minSdkVersion rootProject.ext.minSdkVersion
1515
targetSdkVersion rootProject.ext.targetSdkVersion
1616
versionCode System.getenv("ELIZAOS_VERSION_CODE")?.toInteger() ?: 1

packages/app-core/platforms/android/app/src/androidTest/java/ai/elizaos/app/ElizaOsInstrumentedTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
@RunWith(AndroidJUnit4.class)
2828
public class ElizaOsInstrumentedTest {
2929

30-
private static final String PACKAGE_NAME = "com.elizaai.eliza";
30+
private static final String PACKAGE_NAME = "ai.elizaos.app";
3131
private static final String[] REQUIRED_PERMISSIONS = {
3232
Manifest.permission.READ_CONTACTS,
3333
Manifest.permission.WRITE_CONTACTS,

packages/app-core/platforms/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java

Lines changed: 0 additions & 26 deletions
This file was deleted.
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
package ai.elizaos.app;
2+
3+
import com.getcapacitor.JSObject;
4+
import com.getcapacitor.Plugin;
5+
import com.getcapacitor.PluginCall;
6+
import com.getcapacitor.PluginMethod;
7+
import com.getcapacitor.annotation.CapacitorPlugin;
8+
9+
import org.json.JSONException;
10+
import org.json.JSONObject;
11+
12+
import java.io.IOException;
13+
import java.util.Iterator;
14+
15+
@CapacitorPlugin(name = "Agent")
16+
public class AgentPlugin extends Plugin {
17+
18+
@PluginMethod
19+
public void start(PluginCall call) {
20+
try {
21+
ElizaAgentService.start(getContext());
22+
call.resolve(status("starting"));
23+
} catch (RuntimeException e) {
24+
call.reject("Failed to start local agent service", e);
25+
}
26+
}
27+
28+
@PluginMethod
29+
public void stop(PluginCall call) {
30+
try {
31+
ElizaAgentService.stop(getContext());
32+
JSObject result = new JSObject();
33+
result.put("ok", true);
34+
call.resolve(result);
35+
} catch (RuntimeException e) {
36+
call.reject("Failed to stop local agent service", e);
37+
}
38+
}
39+
40+
@PluginMethod
41+
public void getStatus(PluginCall call) {
42+
String token = ElizaAgentService.localAgentToken();
43+
call.resolve(status(token == null || token.trim().isEmpty() ? "starting" : "running"));
44+
}
45+
46+
@PluginMethod
47+
public void getLocalAgentToken(PluginCall call) {
48+
JSObject result = new JSObject();
49+
String token = ElizaAgentService.localAgentToken();
50+
result.put("available", token != null && !token.trim().isEmpty());
51+
result.put("token", token == null || token.trim().isEmpty() ? JSONObject.NULL : token.trim());
52+
call.resolve(result);
53+
}
54+
55+
@PluginMethod
56+
public void request(PluginCall call) {
57+
try {
58+
JSONObject request = new JSONObject();
59+
putIfPresent(request, "method", call.getString("method"));
60+
putIfPresent(request, "path", call.getString("path"));
61+
putIfPresent(request, "body", call.getString("body"));
62+
Integer timeoutMs = call.getInt("timeoutMs");
63+
if (timeoutMs != null) {
64+
request.put("timeoutMs", timeoutMs);
65+
}
66+
JSObject headers = call.getObject("headers");
67+
if (headers != null) {
68+
request.put("headers", headers);
69+
}
70+
call.resolve(toJsObject(new JSONObject(ElizaAgentService.requestLocalAgent(request.toString()))));
71+
} catch (IllegalArgumentException e) {
72+
call.reject(e.getMessage(), e);
73+
} catch (IOException e) {
74+
call.reject("Local agent request failed", e);
75+
} catch (JSONException e) {
76+
call.reject("Local agent returned an invalid response", e);
77+
}
78+
}
79+
80+
private static JSObject status(String state) {
81+
JSObject result = new JSObject();
82+
String token = ElizaAgentService.localAgentToken();
83+
result.put("state", state);
84+
result.put("agentName", "eliza");
85+
result.put("port", 31337);
86+
result.put("tokenAvailable", token != null && !token.trim().isEmpty());
87+
return result;
88+
}
89+
90+
private static void putIfPresent(JSONObject target, String key, String value) throws JSONException {
91+
if (value == null) return;
92+
target.put(key, value);
93+
}
94+
95+
private static JSObject toJsObject(JSONObject source) throws JSONException {
96+
JSObject target = new JSObject();
97+
Iterator<String> keys = source.keys();
98+
while (keys.hasNext()) {
99+
String key = keys.next();
100+
target.put(key, source.get(key));
101+
}
102+
return target;
103+
}
104+
}

packages/app-core/platforms/android/app/src/main/java/ai/elizaos/app/ElizaAgentService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616

1717
import androidx.core.app.NotificationCompat;
1818

19-
import app.eliza.BuildConfig;
20-
import app.eliza.R;
19+
import ai.elizaos.app.BuildConfig;
20+
import ai.elizaos.app.R;
2121

2222
import java.io.ByteArrayOutputStream;
2323
import java.io.File;

packages/app-core/platforms/android/app/src/main/java/ai/elizaos/app/ElizaSmsGatewayService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import android.telephony.SmsManager;
1111
import android.text.TextUtils;
1212
import android.util.Log;
13-
import app.eliza.BuildConfig;
13+
import ai.elizaos.app.BuildConfig;
1414
import androidx.work.Data;
1515
import androidx.work.OneTimeWorkRequest;
1616
import androidx.work.WorkManager;

packages/app-core/platforms/android/app/src/main/java/ai/elizaos/app/ElizaVoiceCaptureService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
import androidx.core.app.NotificationCompat;
1616

17-
import app.eliza.R;
17+
import ai.elizaos.app.R;
1818

1919
/**
2020
* Foreground service for continuous-chat / VAD-gated voice capture

packages/app-core/platforms/android/app/src/main/java/ai/elizaos/app/GatewayConnectionService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
import androidx.core.app.NotificationCompat;
1616

17-
import app.eliza.R;
17+
import ai.elizaos.app.R;
1818

1919
/**
2020
* Foreground service that keeps the Android process alive so the Capacitor

packages/app-core/platforms/android/app/src/main/java/ai/elizaos/app/MainActivity.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
import com.getcapacitor.BridgeActivity;
1515

16-
import app.eliza.BuildConfig;
16+
import ai.elizaos.app.BuildConfig;
1717

1818
import java.lang.reflect.Method;
1919

@@ -69,6 +69,7 @@ protected void onCreate(Bundle savedInstanceState) {
6969
WebView.setWebContentsDebuggingEnabled(true);
7070
}
7171

72+
registerPlugin(AgentPlugin.class);
7273
registerPlugin(BatteryOptimizationPlugin.class);
7374
super.onCreate(savedInstanceState);
7475

packages/app-core/platforms/android/app/src/main/res/values/strings.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
<resources>
33
<string name="app_name">Eliza</string>
44
<string name="title_activity_main">Eliza</string>
5-
<string name="package_name">com.elizaai.eliza</string>
5+
<string name="package_name">ai.elizaos.app</string>
66
<string name="custom_url_scheme">eliza</string>
77
</resources>

0 commit comments

Comments
 (0)