2013-02-24 99 views
0

所以,我要教导学习android和我有以下代码,这是在标题中给我这个警告和应用程序不会因为某种原因运行任何帮助吗?导出的活动不需要权限

这是代码:

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name="com.example.learn.tam.Splash" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.SPLASH" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name="com.example.learn.tam.StartingPoint" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.STARTINGPOINT" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity> 
</application> 

显示这条错误是第二 <活动

回答

3

您所宣传的设备上的任何应用程序可以启动com.example.learn.tam.StartingPoint的一部分,皮棉警告你认为这是不安全的。

最有可能的是,你不需要那个<intent-filter> - 你通常只需要那些你希望其他应用程序启动的活动。因此,摆脱此警告的最简单方法是删除<intent-filter>,并在开始该活动时使用明确的Intent(例如,new Intent(this, StartingPoint.class))。

如果您选择保留<intent-filter>,不管出于什么原因,请:

  1. 不要使用android.intent.action.为前缀为自己发明了行动 - 想出别的东西,比如com.example.learn.tam.

  2. 添加android:exported="false"<activity>元说,尽管你有一个<intent-filter>,你不希望其他应用程序来启动你的活动

+0

感谢您的帮助 – TAM 2013-02-24 22:58:02