在我创建了自己的应用程序类之后:
package com.example.bezzabarovaa.myapplication;
import android.app.Application;
import android.content.Context;
/**
* Created by bezzabarovaa on 04.08.2017.
*/
public class app extends Application {
public static Context context;
@Override public void onCreate() {
super.onCreate();
context = getApplicationContext();
}
}
并更改了manifest.xml(将应用程序更改为app类)
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.bezzabarovaa.myapplication">
<app
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity"
android:label = "@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
</app>
我收到一条消息错误运行未命名:未找到默认活动
如果我将我的班级app
更改回manifest.xml中的application
- 一切正常。
哪里有问题?
谢谢。
答案 0 :(得分:8)
此<app
应该是<application
您在此处指定自定义应用:
<application android:name=".app" ...
检查documentation名称部分说:
为其实现的Application子类的完全限定名称 应用程序。当应用程序进程启动时,这个类 在任何应用程序的组件之前实例化。该 子类是可选的;大多数应用程序不需要一个。离席期间 在子类中,Android使用基本Application类的实例。
完整示例(包含您的代码):
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.bezzabarovaa.myapplication">
<application
android:name=".app"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity"
android:label = "@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
</application>
</manifest>
答案 1 :(得分:3)
通过单击“使用gradle文件同步项目”来解决
答案 2 :(得分:2)
使用下面的代码段
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.bezzabarovaa.myapplication">
<application
android:name=".app"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity"
android:label = "@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
希望这会对你有所帮助。
答案 3 :(得分:1)
在将默认活动更改为另一个活动之后,我前一段时间遇到了同样的问题。
解决它的原因是无效缓存并重新启动Android Studio:
File -> Invalidate Caches / Restart...
然后点击Invalidate and Restart
。
答案 4 :(得分:0)
在清单应用程序代码中添加以下行
<application
android:name=".app"
...
</application>
答案 5 :(得分:0)
您可以转到“编辑配置”菜单(点按“Shift”三次,输入“编辑配置”),然后更改启动选项&gt;,让Android Studio不要抱怨。发布到“没什么”。
我可能会添加包含说明的通用活动,以避免混淆。
答案 6 :(得分:-1)
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.bluetoothlegatt">
<uses-feature
android:name="android.hardware.bluetooth_le"
android:required="false" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<application
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:theme="@android:style/Theme.Holo.Light">
<activity
android:name="com.example.android.bluetoothlegatt.DeviceScanActivity"
android:icon="@drawable/app_icon"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.example.android.bluetoothlegatt.DeviceControlActivity" />
<service android:name="com.example.android.bluetoothlegatt.BluetoothLeService" />
</application>
</manifest>
答案 7 :(得分:-1)
我按照以下步骤解决了同样的问题
关闭Android Studio
从中删除:
C:\ Users \您的用户名。android/ log和gradle文件夹
C:\ Users \您的用户名。gradle
来自C:\ Users [您的用户名]
重新启动计算机并运行Android Studio(将需要一些时间来重建)